Inicializador Literal de Objeto e Coleção

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!

Fabrice Mainguené
- Proprietário do produto ->p>Fabrice Mainguené juntou-se à equipa do Programa 4D em Novembro, 2016. Como Proprietário do Produto, está encarregado de escrever as histórias dos utilizadores, traduzindo-as depois para especificações funcionais. O seu papel é também o de assegurar que a implementação da funcionalidade entregue vai ao encontro das necessidades do cliente.Após a obtenção da licenciatura em Informática no CNAM, Fabrice juntou-se a uma pequena empresa editora de software como programador Windev. Depois trabalhou para diferentes empresas nas áreas da indústria e comércio como programador Windev e web developer, bem como como consultor técnico sobre novas funcionalidades.