Nová syntaxe deklarace pro intuitivní automatické dokončování

Automaticky přeloženo z Deepl

Přemýšleli jste někdy o funkci automatického dokončování v systému 4D nebo jste se ptali, proč systém 4D navrhuje všechny funkce použité v kódu? Protože objekt je velmi obecný typ, 4D ví pouze to, co skutečně ukládá za běhu. To vám však při psaní kódu příliš nepomůže.

4D nyní nabízí novou, alternativní syntaxi, která výrazně zlepší automatické doplňování při deklaraci proměnných.

Nová syntaxe je velmi jednoduchá a skládá se z klíčového slova „var“, názvu proměnné a jejího typu.

var <variableName> : <type>

Proměnné můžete deklarovat jak klasickou, tak novou syntaxí ve stejné databázi.

Pro datové typy

Tuto syntaxi lze použít k definici datových typů proměnných. Následuje několik příkladů ukazujících shodu obou syntaxí pro proměnné textových, číselných a obrázkových datových typů.

Předchozí syntaxe

C_TEXT($text1;$text2)
C_LONGINT (
$num)
C_PICTURE ($pict)

Nová syntaxe

var $text1; $text2: Text
var $num : Integer
var $pict : Picture

Pro uživatelské třídy

Myšlenka tříd byla zavedena ve verzi 4D v18 R3. Pokud jste tak ještě neučinili, měli byste si přečíst tento příspěvek na blogu.

Dosud byly všechny instance třídy deklarovány jako objekt. Nyní, s novou syntaxí, můžete pomocí příkazu cs a názvu třídy definovat, ke které instanci třídy váš objekt patří. Tím získáte přístup k funkcím a atributům třídy.

Předchozí syntaxe

C_OBJECT($person)
$person :=cs.Person.new()

Nová syntaxe

var $person : cs.Person
$person :=cs.Person.new()

Pro třídy 4D

Objekty jako File nebo Folder jsou objekty patřící do interních tříd 4D. Můžete k nim přistupovat pomocí příkazu 4D.

Předchozí syntaxe

C_OBJECT($folder)
$folder :=Folder(Current resource folder)

Nová syntaxe

var $folder : 4D.Folder
$folder :=Folder(Current resources folder)

blank

Jak je to s ORDA?

V předchozím příspěvku na blogu jsme si ukázali, že třídy ORDA (Dataclass, Entity a Entity selection) můžete přepsat vlastními třídami. Pomocí této nové syntaxe můžete také využívat automatické doplňování.

Předchozí syntaxe

C_OBJECT($dataclass)
C_OBJECT (
$entity)
C_OBJECT ($entitySelection).

Nová syntaxe

var $dataclass : cs.Company
var $entity : cs.CompanyEntity
var $entitySelection : cs.CompanySelection

blank

Vanessa Talbot
• Product Owner • Vanessa Talbot se připojila k programovému týmu 4D v červnu 2014. Jako Product Owner má na starosti psaní uživatelských příběhů a jejich převod do funkčních specifikací. Její úlohou je také zajistit, aby implementovaná funkce odpovídala potřebám zákazníka. Od svého příchodu pracovala na definování klíčových prvků ve 4D. Pracovala na většině nových funkcí preemptivního multi-threadingu a také na velmi složitém tématu: nové architektuře pro enginované aplikace. Vanessa má titul z Telecom Saint-Etienne. Svou kariéru začala ve Výzkumném ústavu kriminalistickém jako vývojářka pro audiovizuální oddělení. Působila také v mediální a lékařské oblasti jako expertka na technickou podporu, produkci i dokumentaci novinek.