Autor: Nicolas Brachfogel

Nicolas Brachfogel
Product Owner & Senior Developer - Nicolas Brachfogel kam 2017 als Senior Developer (4D Server und Netzwerke) zu 4D. Als Product Owner, der die Freigabe von Apple Silicon verwaltet, ist er für das Schreiben von User Stories und deren Umsetzung in funktionale Spezifikationen zuständig und stellt sicher, dass die Implementierungen der Funktionen den Kundenanforderungen entsprechen. Nicolas ist Absolvent des Institut Supérieur d'Informatique Appliquée (INSIA) und begann seine Karriere als Softwareentwickler im Jahr 2001. Nachdem er mehrere Jahre in Java und C++ programmiert hatte, spezialisierte er sich auf die Client-Server-Entwicklung für Videospielunternehmen. Als Server-Entwickler/Architekt arbeitete er erfolgreich an den Server-Architekturen vieler Spiele (Dofus Arena, Drakerz, Trivial Pursuit Go!).
Produkt blank

Neueste Verbesserungen des HTTP-Client

Mit 4D v19R6 haben wir einen neuen Weg gefunden, HTTP-Anfragen durchzuführen: HTTP-Klassen. Zu diesem Zeitpunkt waren einige der Funktionen der HTTP-Klassen noch nicht endgültig, da wir sie an die neue Syntax anpassen wollten. Das ist nun geschehen! In v19R7 sind die Funktionen für komprimierte Antworten, Chunked Responses und Umleitungen nun vollständig.

Als Bonus haben wir auch eine neue Möglichkeit zum Protokollieren von HTTP-Anfragen hinzugefügt. Und da es für alle hilfreich ist, ist diese neue Protokollierung sowohl für die neuen HTTP-Klassen als auch für die alte Syntax verfügbar.

Produkt blank

HTTP-Klassen: Ein neuer Weg zur Durchführung asynchroner HTTP-Anfragen

Automatisch übersetzt von Deepl

In unserem ständigen Bestreben, die 4D Syntax und Funktionalitäten zu verbessern, haben wir beschlossen, Ihnen neue Befehle zur Durchführung von HTTP-Anfragen in 4D zur Verfügung zu stellen: die HTTP-Klassen. Sie sind direkt in 4D v19 R6 verfügbar und werden in den kommenden Versionen viele Verbesserungen aufweisen. Lassen Sie mich Ihnen zeigen, wie Sie sie sofort nutzen können.

Produkt blank

Gleichzeitiges Entwickeln auf 4D Server im Projektmodus

Seit seiner Veröffentlichung in 4D v18 hat Projects die Möglichkeiten von 4D drastisch erweitert, u.a. durch die Kompatibilität mit Versionskontrollsystemen.

Wir sind sehr stolz darauf, dass diese Funktion von der 4D Community so gut angenommen wird. Dies hat uns dazu veranlasst, die Funktion weiter zu verbessern und noch besser zu machen.

Zu Ihren Rückmeldungen gehörte auch der Wunsch nach der Möglichkeit, gleichzeitig auf einem einzigen Entwicklungsserver im Team zu arbeiten. Auch hier hat 4D zugehört, und wir freuen uns, Ihnen mitteilen zu können, dass Sie mit 4D v19 R6 an einem Entwicklungsserver im Projektmodus arbeiten können!

Produkt blank

Reduzieren Sie die Größe Ihrer 4D Anwendungen mit diesen neuen Funktionen

In unserem ständigen Bestreben, die Erstellung von 4D Anwendungen zu verbessern, haben wir in 4D v19R5 einige Funktionen hinzugefügt, die Sie sicherlich nützlich finden werden.

Die erste ist die Möglichkeit, einige der größten 4D Module aus Ihren Anwendungen zu entfernen: CEF, Mecab, PHP, Rechtschreibprüfung und 4D Updater. Wenn Sie einige dieser Module nicht benötigen, können Sie die Größe Ihrer Anwendungen erheblich reduzieren.

Wir haben auch das endgültige Verzeichnis geändert, wenn Sie eine kompilierte Struktur erstellen, um denjenigen entgegenzukommen, die mehrere kompilierte Versionen der gleichen Struktur verwenden.

Für unsere japanischen Kunden haben wir die japanische Version von 4D und die internationale Version auf MacOS zusammengeführt.

Kommen wir nun zu den Details.

Produkt blank

Entwicklung des Diagnoseprotokolls

Jahr für Jahr, Funktion für Funktion, ist das Diagnoseprotokoll auf ausgelasteten Servern zu einer riesigen Datei angewachsen. Mit 4D v19R5 haben wir einen neuen Datenbankparameter eingeführt, mit dem Sie die Protokollierungsebene der Diagnoseprotokolldatei auswählen können. Er hilft Ihnen, die Größe des Diagnoseprotokolls zu kontrollieren, indem er nur das protokolliert, was Sie wirklich brauchen.

Produkt blank

Neue Textwiedergabe in Formularen unter Windows mit DirectWrite

DirectWrite ist die moderne Text-Rendering-API unter Windows. Sie verbessert die Lesbarkeit von Text dank ihrer Subpixel-Qualität und ist vollständig kompatibel mit den neuesten Technologien. Als solches ist es ein Sprungbrett für viele Verbesserungen. Dazu gehört auch die Verwaltung von hochauflösenden Bildschirmen (4K-Bildschirme), an der wir derzeit arbeiten und die viele von Ihnen sehnlichst erwarten. 4D-Listenfelder wurden in v16 auf DirectWrite umgestellt, und wir haben beschlossen, in v19R3 auch die Textdarstellung in Formularen auf DirectWrite umzustellen.

Produkt blank

Protokollierung unterbrechen und Konfigurationsdatei protokollieren

Für 4D v19 haben wir begonnen, unsere Protokolle langfristig zu verbessern. Unsere erste Anstrengung bestand darin, das Format zu verbessern, um Ihnen bessere und klarere Informationen zu geben. In 4D v19 R3 haben wir zwei neue Funktionen hinzugefügt: die Möglichkeit, die Protokollierung sofort zu unterbrechen, und eine Möglichkeit für Support-Teams, ihren Kunden bei der Konfiguration ihrer Protokolle über eine Konfigurationsdatei zu helfen.

Produkt blank

Vereinfachte plattformübergreifende Client/Server-Anwendungsentwicklung unter Windows

Die Veröffentlichung von Silicon Macs hatte einen großen Einfluss auf die Art und Weise, wie 4D Anwendungen kompiliert. Vor v19 kompilierte 4D nur für die Intel Architektur und verwendete den gleichen Code auf Mac und Windows. Die Silicon Macs verwenden jedoch eine neue Architektur, so dass 4D speziell für Silicon kompilieren muss. Dies hat Auswirkungen auf die plattformübergreifende Erstellung von Client/Server-Anwendungen.

Solange Sie Ihren Server auf dem Mac entwickeln, ist dies kein großes Problem, da Sie sowohl für Intel- als auch für Silicon-Plattformen kompilieren können. Aber unter Windows ist es nicht möglich, für Silicon-Macs zu kompilieren. Unsere derzeitige Empfehlung lautet, das Projekt auf dem Mac für beide Architekturen zu kompilieren und es dann auf einen Windows-Rechner zu kopieren, bevor man den Server erstellt. Leider kann das Kopieren bei großen Projekten mit vielen Daten einige Zeit in Anspruch nehmen.