Saltar para o conteúdo principal
Versão: 20 R5 BETA

Glossary

Principais conceitos em resumo

Ação

Every action that can be done on a resource. As ações disponíveis são: criar, ler, atualizar, largar, executar, promover e descrever.

Atributo

An attribute is the smallest storage cell in a relational database (see also Relation attribute). Não confundir atributos de dataclass com atributos de entidades:

  • Num objeto dataclass, cada propriedade é um atributo de dataclass que corresponde a um campo na tabela correspondente (mesmo nome e tipo).
  • Num objeto entity, os atributos de entidades são propriedades que contêm os valores para os atributos do datastore correspondentes.

Attributes and properties are similar concepts. "Atributo" é utilizado para designar as propriedades da dataclass que armazenam os dados, enquanto "propriedade" é mais genérico e define um dado armazenado num objeto.

AttributePath

Um attributePath é o caminho de um atributo em uma determinada dataclass ou entidade. See also PropertyPath.

Class code

Código da(s) função(ões) da classe usuário.

Atributo calculado

Um atributo calculado não armazena efetivamente informações. Em vez disso, determina o seu valor com base noutros valores da mesma entidade ou de outras entidades, atributos ou funções. Quando é referir-se a um atributo calculado, o "cálculo" subjacente é avaliado para determinar o valor. Os atributos calculados podem até ser atribuídos a valores em que o código definido pelo usuário determina o que fazer durante a atribuição.

Data model class

Classe estendida disponível para um objeto modelo de dados.

Data model object

Objetos de banco de dados disponíveis através do conceito ORDA, ou seja, datastore, dataclasses, entities e entity selections.

Data model function

Função de uma classe de modelo de dados ORDA.

Dataclass

Uma dataclass é um objeto que descreve os dados. As tabelas da banco de dados fornecidas pelo datastore são tratadas através das dataclasses. Cada tabela do banco de dados fornecida pelo datastore tem uma dataclass correspondente com o mesmo nome. Cada campo da tabela é um atributo da dataclass.

Uma dataclass está relacionada com um único datastore.

DataClass class

Classe para objetos dataclass específicos, onde se podem adicionar funções personalizadas.

Datastore

Um datastore é o objeto de interface fornecido pela ORDA para referenciar uma estrutura e aceder aos seus dados. The main database, returned by the ds command, is available as a datastore (the main datastore).

Um datastore fornece:

  • uma ligação à base de dados 4D
  • um conjunto de classes de dados para trabalhar com a base de dados

O banco de dados pode ser um banco de dados local 4D (o datastore principal), ou um banco de dados 4D Server exposto como recurso REST (um datastore remote).

Um datastore faz referência apenas a uma única base de dados. É, no entanto, possível abrir vários repositórios de dados para aceder a vários bancos de dados.

DataStore class

Classe para objetos datastore, onde é possível adicionar funções personalizadas.

DataStoreImplementation

Internal name of the generic DataStore class in the 4D class store.

Cópia profunda

Uma cópia profunda (deep copy) duplica um objeto e todas as referências que contém. Após uma deep copy, uma coleção copiada contém os elementos duplicados e, por conseguinte, novas referências de todos os elementos originais. Ver também Cópia superficial.

ds

ds is the 4D language command that returns a datastore object reference. Corresponde ao datastore disponível no banco de dados principal 4D.

Entity

Uma entidade é um objeto que corresponde a um modelo de dataclass. Uma entidade contém os mesmos atributos que a dataclass.

Uma entidade pode ser vista como uma instância da dataclass, como um registo da tabela que corresponde à dataclass no seu datastore associado. No entanto, uma entidade também contém dados relacionados. O objetivo da entidade é gerir dados (criar, atualizar, apagar).

Para mais informações, consulte Entidades.

Seleção de entidades

Uma seleção de entidades é um objeto. Quando uma solicitação é enviada ao datastore, uma seleção de entidades é retornada. Uma seleção de entidade é um conjunto de referências a entidades relacionadas com a mesma dataclass.

Uma seleção de entidade contém:

  • um conjunto de 0 a X referências de entidades,
  • uma propriedade length (sempre),
  • propriedades queryPlan e queryPath (se solicitadas durante a consulta).

Uma seleção de entidade também pode estar vazia.

Generic class

Classe incorporada para objetos ORDA, tais como entidades ou dataclasses. Functions and properties of generic classes are automatically available in user extended classes, e.g. EmployeeEntity.

Lazy loading

Uma vez que as entidades são geridas como referências, os dados só são carregados quando necessário, ou seja, quando se acede a eles no código ou através de widgets de interface. Este princípio de otimização é chamado lazy loading.

Datastore principal

O objeto Datastore que corresponde ao banco de dados 4D aberto (autônomo ou cliente/servidor). O datastore principal é devolvido pelo comando ds.

Métodos

Os objetos ORDA, tais como datastores, dataclasses, entity selections, e entities, definem as classes de objetos. Fornecem métodos específicos para interagir diretamente com eles. Estes métodos são também designados por funções membro. Estes métodos são utilizados chamando-os a uma instância do objeto.

For example, the query() method is a dataclass member function. If you have stored a dataclass object in the $myClass variable, you can write:

$myClass.query("name = smith")

Tipo de dados misto

Nesta documentação, o tipo de dados "Misto" é utilizado para designar os vários tipos de valores que podem ser armazenados nos atributos de uma dataclass. Inclui:

  • number
  • text
  • null
  • boolean
  • date
  • object
  • collection
  • imagem(*)

(*) picture type is not supported by statistical methods such as entitySelection.max( ).

Bloqueio optimista

No modo "bloqueio otimista", as entidades não são bloqueadas explicitamente antes de serem atualizadas. Cada entidade tem um marcador interno que é automaticamente incrementado sempre que a entidade é guardada no disco. Os métodos entity.save( ) ou entity.drop( ) retornarão um erro se o marcador da entidade carregada e o marcador da entidade no disco não coincidirem, ou se a entidade tiver sido excluída. O bloqueio otimista só está disponível na implementação ORDA. Ver também "Bloqueio pessimista".

Bloqueio pessimista

Um "bloqueio pessimista" significa que uma entidade é bloqueada antes de ser acedida, utilizando o método entity.lock( ). Outros processos não podem atualizar nem eliminar a entidade até esta ser desbloqueada. A linguagem 4D clássica só permite bloqueios pessimistas. Ver "Bloqueio optimista".

Privilégio

The ability to run one or more actions on resources. Several privileges can be gathered in a role according to the business logic.

Propriedade

See Attribute.

> Attributes and properties are similar concepts. "Atributo" é utilizado para designar as propriedades da dataclass que armazenam os dados, enquanto "propriedade" é mais genérico e define um dado armazenado num objeto.

PropertyPath

Um propertyPath é o caminho para uma propriedade num objeto dado. Se a propriedade estiver aninhada em vários níveis, cada nível é separado por um ponto (".").

Regular class

Classe usuário não relacionada com um objeto ORDA.

Estas são dataclasses ligadas pelos atributos de relação.

Atributo relacional

Os atributos de relação são utilizados para conceitualizar relações entre as dataclasses (N a 1 e 1 a N).

  • Relação N a 1 (a dataclassA referir-se a uma ocorrência da dataclassB): um atributo da relação está disponível na dataclassA e referir-se a uma instância da dataclassB.
  • Relação 1 a N (uma ocorrência de dataclassB referencia várias ocorrências de dataclassA): um atributo de relação está disponível na dataclassB e referencia várias instâncias de dataclassA.

Um dataclass pode ter atributos de relação recursivos.

Numa entidade, o valor de um atributo de relação pode ser uma entidade ou uma seleção de entidade.

Entidades relacionadas

Uma entidade relacionada pode ser vista como a instância de um atributo de relação numa dataclass.

As selecções de entidades podem referir-se a entidades relacionadas conforme os atributos de relação definidos nas dataclasses correspondentes.

Remote datastore

Um banco de dados 4D aberto em 4D ou 4D Server (disponível através de HTTP) e exposto como um recurso REST. Este banco de dados pode ser referenciada localmente como um Datastore a partir de outras estações de trabalho, onde lhe é atribuído um locaID. O datastore remoto pode ser utilizado através de conceitos ORDA (datastore, dataclass, seleção de entidades...). Esta utilização é submetida a um sistema de licenciamento.

Recurso

An ORDA element on which any action can be allowed or not according to a privilege. Os recursos disponíveis são: o datastore, a dataclass, um atributo dataclass, uma função do modelo de dados ORDA ou um método projeto.

Role

A role is a published privilege intended to be used by an administrator. Pode conter um ou mais privilégios.

Session

Quando a aplicação 4D se conecta a um datastore remoto, uma sessão é criada no 4D Server (HTTP). É gerado um cookie de sessão que é associado ao Id do datastore local.

Cada vez que uma nova sessão é aberta, é utilizada uma licença. Sempre que uma sessão é encerrada, a licença é libertada.

As sessões inativas são automaticamente encerradas após um tempo limite. The default timeout is 48 hours, it can be set by the developer (it must be >= 60 minutes).

Cópia superficial (Shallow copy)

Uma cópia superficial apenas duplica a estrutura dos elementos e mantém as mesmas referências internas. Após uma cópia superficial, duas coleções partilharão os elementos individuais. Ver também Deep copy.

Stamp

Utilizado na tecnologia de bloqueio "otimista". Todas as entidades têm um contador interno, o marcador, incrementado sempre que a entidade é salva. Ao comparar automaticamente os marcadores entre uma entidade salva e sua versão armazenada no disco, 4D pode evitar modificações simultâneas nas mesmas entidades.

Atributo de armazenamento

Um atributo de armazenamento (às vezes chamado atributo escalar) é o tipo mais básico de atributo em uma classe de datastore e corresponde mais diretamente a um campo em um banco de dados relacional. Um atributo de armazenamento contém um único valor para cada entidade da classe.