Posilte svůj vývojový proces pomocí formulářů

Automaticky přeloženo z Deepl

Ve fázi vývoje je pro vytvoření kvalitního kódu důležité včasné odhalení syntaktických chyb. Kontrola kódu v reálném čase je pro vývojáře cennou pomůckou. Nejenže zlepšuje efektivitu, ale také zvyšuje kvalitu a produktivitu. Díky okamžité opravě chyb se můžete soustředit na funkční vývoj aplikace, nikoli na nepříjemné chyby, které se objevují během kompilace.

S aplikací 4D 20 R8 s potěšením představujeme dvě nové funkce, které změní způsob vaší práce.

  • První z nich je možnost přiřadit třídu k formuláři, což umožňuje kontrolu syntaxe pomocí výrazů, jako je Form.myProperty.
  • Druhou je kontrola výrazů v seznamu vlastností v reálném čase se zobrazením popisu chyby nebo varování.

Přiřazení třídy k formuláři

Uživatelskou třídu můžete nyní spojit s formulářem pomocí nového atributu„Form class„. Tento atribut umožňuje zadat objekt, který vrací třída Form příkazem, což umožňuje používat výrazy jako Form.myProperty. Uživatelská třída může pocházet z hostitelského projektu nebo komponenty.

Automatická instanciace za běhu

Při otevírání formuláře můžete předat objekt do tzv. DIALOG příkazu. Tento objekt se pak stane přístupným v rámci formuláře prostřednictvím příkazu Form.

Objekt předaný příkazu DIALOG může být instance třídy. Zde je uveden postup, jak to můžete udělat:

var $h : Integer
var $o : cs.Person
$o :=cs.Person.new()
$h :=Open form window("FormWithClass")
DIALOG ("FormWithClass"; $o)

Počínaje verzí 4D 20 R8 platí, že pokud ve formuláři definujete vlastnost„Form class„, aniž byste předali objekt do funkce DIALOG příkazu, 4D se automaticky postará o instanciaci. Stačí napsat:

var $h Integer
$h :=Open form window("FormWithClass")
DIALOG ("FormWithClass")

Příkaz Form vrátí objekt, který je instancí třídy „Person“. To můžete ve formuláři zkontrolovat pomocí příkazu OB Instance of příkazem.

$n:=OB Instance of(Form; cs.Person)

Nyní můžete volat funkci třídy jednoduše tak, že napíšete: „Form.message()“.

Výhody pro editor kódu

Funkce automatického dokončování

Funkce Form příkaz těží z funkce automatického dokončování v editoru kódu. Po zadání „Form.“ vám 4D nabídne všechny vlastnosti a funkce deklarované v přidružené třídě. Už žádné převracení dvou písmen v názvu vlastnosti nebo používání malého písmene místo velkého v názvu funkce.

Například u naší jednoduché třídy „Osoba“ definované takto:

property firstname : Text
property lastname : Text
property email : Text

Class constructor
This .firstname:=""
This .lastname:=""
This .email:=""

Function get fullname () : Text
return This .firstname+""+This.lastname

Při použití Form příkazu v rámci metody formuláře vám editor kódu nabídne přesný seznam pro doplnění kódu:

blank

Funkce kontroly syntaxe

Při použití výrazů typu „Form.myProperty“ v metodě formuláře nebo v metodách objektů formuláře využijete sílu nástroje pro kontrolu syntaxe.

Vezměme si příklad z předchozí třídy. V kódu metody formuláře jsme :

  • vnucujeme celé číslo do textového atributu,
  • použijeme neznámý atribut,
  • přiřadíme celé číslo do vypočteného atributu typu text.

Na následujícím obrázku vidíte, že editor kódu účinně identifikoval chyby nebo varování.

blank

Výhody editoru formuláře

Kontrola syntaxe integrovaná do seznamu vlastností

Kontrola syntaxe již není omezena pouze na editor kódu. Tato funkce je rozšířena na výrazy v seznamu vlastností (například„Datasource“ nebo„Meta info expression“). Díky tomu budete dostávat okamžitá upozornění na chyby a varování.

blank

Není třeba čekat na výsledky kompilace, abyste objevili chyby. Díky této funkci budete informováni již ve fázi editace.

Kompilace

Pokud jste nové chyby nevyřešili přímo, kompilátor je samozřejmě zachytí i během kompilace.

Dialogové okno překladače

Všechna varování a chyby se zobrazí v okně kompilace. Pokud poklepete na výraz objektu formuláře, otevře se příslušný formulář a v seznamu vlastností se zvýrazní problematický objekt a jeho vlastnost.

blank

Příkaz Compile project

V případě neúspěšné kompilace se zobrazí příkaz Compile project příkaz vrátí objekt s varováními a chybami. Příkaz byl také rozšířen o možnost vracet varování nebo chyby zjištěné v objektových výrazech formuláře.

{
    "úspěch":false,
    "errors":[{
        "message": "Použita nedeklarovaná vlastnost 'firstName'. (550.26)",
        "isError":false,
        "code":{
            "type": "formObjectExpression",
            "formName": "Person",
            "objectName": "InputFirstname",
            "propertyName": "dataSource",
            "file":"[objekt File]"
            }
        }]
}

Co dál

Tyto nové funkce usnadní a zefektivní psaní kódu.

Neváhejte se podělit o své zkušenosti s těmito vylepšeními. Vaše připomínky jsou neocenitelné, protože nám pomáhají pochopit, jak vám tyto nástroje každodenně pomáhají, a lépe je přizpůsobit vašim potřebám.

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.