No seu código, os objetos e coleções podem ser instanciados usando as ordens New object e New collection. A partir do 4D v20, há uma nova forma mais fácil e legível de os inicializar: o objeto literal e a coleção literal.
Objeto literal
Um objeto cria literalmente um novo objeto vazio ou pré-carregado:
- Pode criar um objeto vazio usando a expressão {}:
$object1:={}
// é equivalente a:
$object2:=New object
- ou um objeto inicializado com valores, usando uma lista de pares de nomes de propriedades e valores associados, encerrados entre sinais de chaves:
$b:=42
$object1:={\
a:"foo"; \
b:$b; \
c:{}; \
d:["Hello"; "there"]\
}
// é equivalente a:
$object2:=New object(\
"a"; "foo"; \
"b"; $b; \
"c"; New object; \
"d"; New collection("hello"; "there"))
Esta nova forma de instanciar objetos traz, além disso, a vantagem de criar os atributos como tal e já não como texto. Permite:
- aproveitar a função de realce de sintaxe
- utilizar o preenchimento de código para criar atribuições
- recuperar estas atribuições quando fizer uma pesquisa de propriedade
COLEÇÃO literal
Uma coleção cria literalmente uma nova coleção vazia ou pré-carregada.
- Pode criar uma coleção vazia usando a expressão []:
$collection1:=[]
// é equivalente a:
$collection2:=New collection
- ou uma coleção inicializada com valores:
$collection1:=[654; $b; {a:"foo"}]
// é equivalente a:
$collection2:=New collection(654; $b; New object("a"; "foo"))
Esforçamo-nos constantemente por proporcionar aos nossos usuários a melhor experiência possível, e encorajamos a partilhar os seus pensamentos e feedback no fórum 4D. O seu feedback ajuda-nos a compreender melhor as suas necessidades e a melhorar continuamente os nossos produtos e serviços. Pense em consultar esta funcionalidade na documentação para mais detalhes!