Neues Objekt: eine einfache Möglichkeit, ein Objekt zu initialisieren

Entdecken Sie New object,, den neuen Befehl von 4D zum Initialisieren eines Objekts. Mit diesem Befehl können Sie entweder ein leeres Objekt erstellen oder ein Objekt mit einigen anfänglichen Eigenschaften und Werten erstellen. OB SET wird nun in vielen Situationen überflüssig, New object reicht aus.

New object erlaubt es auch, ein temporäres Objekt in einer Schleife neu zu initialisieren oder einfach ein Objekt als Parameter an einen 4D Befehl zu übergeben, der ein Objekt als Parameter benötigt, wie z.B. die Befehle Get database measures oder GRAPH.

Dieser neue Befehl verändert die Art und Weise, wie Sie 4D Code in vielen Situationen schreiben. New object erzeugt ein Objekt und gibt eine Referenz darauf zurück. Er ermöglicht mehr Flexibilität in Ihrem Code. Dieser Befehl ist der erste einer Reihe von neuen Funktionen im Zusammenhang mit Objekten … Bleiben Sie dran!

Beispiel 1

Dieses erste Beispiel zeigt Ihnen, wie Sie einfach ein leeres Objekt erstellen können. In den früheren 4D Versionen war die einzige Möglichkeit, dies zu tun, die Verwendung von JSON Parse(„{}“), was nicht offensichtlich ist. Tatsächlich deklariert der Befehl C_OBJECT eine Objektvariable, die kein Objekt enthält, und das Objekt wird erst beim ersten Aufruf von OB SET erstellt und einige Eigenschaften werden definiert. Ab v16 R3 ist es nicht mehr nötig, JSON Parse zu verwenden, es gibt einen einzigen Befehl, um Ihre Objekte zu initialisieren: New object! Einfach und intuitiv!

// Previous versions
C_OBJECT( ) := ("{}") $obj
$objJSON Parse
//$obj={}

Seit 4D v16 R3 können Sie einfach New object verwenden:

// From 4D v16 R3
C_OBJECT( ) := $obj
$objNew object

//$obj={}

Beispiel 2

Sie können New object auch direkt innerhalb eines 4D Befehls verwenden, ohne vorher ein Objekt zu erstellen, wie unten gezeigt.

// Previous versions
C_OBJECT( ) ( ) ( ; "path"; "DB.cacheReadBytes") ( ; "withHistory";True) ( ; "historyLength";2*60) := ( )$oParams
C_OBJECT$measures
OB SET$oParams
OB SET$oParams
OB SET$oParams
$measuresGet database measures$oParams

Seit 4D v16 R3 können Sie diesen Code mit New object schreiben:

// From 4D v16 R3
C_OBJECT($measures)
$measures :=Get database measures(New object("path"; "DB.cacheReadBytes"; "withHistory";True; "historyLength";120))

Weitere Codebeispiele finden Sie in der folgenden Beispieldatenbank:

Beispiel-Datenbank

Weitere Einzelheiten können Sie auch in der Dokumentation nachlesen. Schauen Sie einfach in den Artikel über den Befehl New object im 4D v16 R3 Sprachhandbuch.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené gehört seit November 2016 zum 4D Program Team. Als Product Owner ist er verantwortlich für das Schreiben der User Stories und deren Umsetzung in funktionale Spezifikationen. Seine Aufgabe ist es auch, sicherzustellen, dass die gelieferte Funktionsimplementierung den Kundenanforderungen entspricht.Nach seinem Bachelor-Abschluss in Informatik am CNAM arbeitete Fabrice als Windev-Entwickler bei einem kleinen Software-Verlag. Danach arbeitete er für verschiedene Unternehmen in Industrie und Handel als Windev- und Webentwickler sowie als technischer Berater für neue Funktionen.