著者名: Nicolas Brachfogel

Nicolas Brachfogel
- プロダクトオーナー & シニアデベロッパー - Nicolas Brachfogelは、2017年にシニアデベロッパーとして4Dに入社しました(4D Serverとネットワークを担当)。Apple Siliconのリリースを管理するプロダクトオーナーとして、ユーザーストーリーを書いて機能仕様に落とし込み、機能実装が顧客のニーズを満たしているかを確認する役割を担っています。Institut Supérieur d'Informatique Appliquée (INSIA) を卒業した Nicolas は、2001年にソフトウェア開発者としてのキャリアをスタートさせました。JavaとC++で数年間コーディングした後、ゲーム会社のクライアント・サーバー開発を専門に担当。サーバー開発者/アーキテクトとして、多くのゲーム(Dofus Arena、Drakerz、Trivial Pursuit Go!)のサーバーアーキテクチャに携わり、成功を収めてきました。
製品 blank

QUICレイヤー:次世代のネットワーク通信

4Dで稼働する最も大規模なプロダクションサーバーでは、1000を超える同時接続を受け入れており、その数はなお増え続けています。その結果、私たちのチームでは、パフォーマンスがますます重要な点になってきています。新しいバージョンのHTTP規格で使用されているQUICプロトコルは、スピードと信頼性を高めるために特別に設計されたプロトコルです。4D では常に最新のワクワクするような楽しい技術を求めているため、現在低レベルのネットワークプロトコルをQUICプロトコルに置き換える作業を行っています。

v20では、このネットワークレイヤーに切り替えて、パフォーマンスが向上するかどうかをテストすることができます。これはまだベータテスト中で、デフォルトのネットワークレイヤーとして使用するためには、皆様からのフィードバックが必要だからです。そのため、4Dのベータ版でのみ使用することができます。

製品 blank

4D Backup と VSSスナップショット、そしてデータストアをロックする新コマンド

4D では、データをバックアップする方法を複数ビルトインで提供しています: 4Dバックアップとミラーサーバーの使用です。4D v20 では、データストアをロックする内部コマンドを公開し、4D の実行中にデータをコピーできるようになりました。
まず、4D でデータをバックアップするためのさまざまな手段について説明します。

製品 blank

HTTPクライアントの最新改良点

Deeplからの自動翻訳

4D v19R6で、HTTPリクエストを実行する新しい方法をお届けしました。HTTPクラスです。当時、HTTP クラスの機能のいくつかは、新しいシンタックスに適応させるために、最終的なものではありませんでした。それは今、完了しました!v19R7では、圧縮応答、チャンク応答、リダイレクションの機能が完成しています。

ボーナスとして、HTTPリクエストのログを取る新しい方法も追加されました。そして、みんなに役立つように、この新しいログはレガシー構文だけでなく、新しいHTTPクラスでも利用可能です。

製品 blank

HTTPクラス: 非同期の HTTPリクエストを実行する新しい方法

4D のシンタックスと機能の改善に向けた弛まぬ努力の中で、4D で HTTPリクエストを実行するために、新しい HTTPRequest クラス を提供することに決定しました。このクラスは、4D v19 R6 で利用でき、今後のバージョンアップで多くの改良が加えられる予定です。さっそく、その使い方を紹介しましょう。

製品 blank

プロジェクトモードでの4D Serverでの同時開発

Deeplからの自動翻訳

4D v18でリリースされたProjectsは、バージョン管理システムとの互換性を持たせるなど、4Dの機能を劇的に拡大させました。

優れたフィードバックにより、4Dコミュニティの間でこの機能が大幅に採用されたことを、私たちはこれ以上ないほど誇りに感じています。このため、私たちはより良いものにするために、この機能を改善することにしました。

また、「1つの開発サーバーでチームとして同時に作業できるようにしてほしい」というご要望もありました。4D v19 R6では、プロジェクトモードで開発サーバーで作業することができるようになりました。

製品 blank

新機能で4Dアプリのサイズを縮小する

Deeplからの自動翻訳

4Dアプリケーションの構築を改善するための継続的な努力の中で、4D v19R5には、あなたが必ず見つけることができるいくつかの機能性が追加されました。

まず1つ目は、アプリケーションから4Dモジュールを削除する機能です。CEF、Mecab、PHP、Spell Checker、4D Updaterです。これらのモジュールのいくつかが必要ない場合は、アプリケーションのサイズを大幅に削減することができます。

また、同じ構造体の複数のコンパイル版を使用している方に配慮して、コンパイルした構造体を構築する際の最終ディレクトリを変更しました。

日本のお客様に関しては、MacOSの4D日本語版と国際版を統合しました。

それでは、詳細を説明します。

製品 blank

診断用ログの進化

Deeplからの自動翻訳

年々、機能ごとに、診断ログは、忙しいサーバーで巨大なファイルに成長しました。4D v19R5では、診断ログファイルのログレベルを選択することができる新しいデータベースパラメータを搭載しました。これは、本当に必要なものだけを記録することで、診断ログのサイズをコントロールするのに役立ちます。

製品 blank

Windowsで高DPIを実現。高解像度画面への対応

Deeplからの自動翻訳

4Dでは、お客様のご要望を真摯に受け止めています

以前のミーティングでは、4Kディスプレイなどの高解像度ディスプレイをWindowsでサポートすることに、お客様から大きな関心を寄せていただきました。今回、そのご要望にお応えして、4DでHigh DPIをサポートすることになりました。

製品 blank

DirectWriteを使用したWindows上のフォームにおける新しいテキストレンダリング

Deeplからの自動翻訳

DirectWriteは、Windowsにおける最新のテキストレンダリングAPIです。サブピクセル品質によりテキストの可読性を向上させ、最新のテクノロジーと完全な互換性を持っている。そのため、多くの改良への足がかりとなる。その中でも、現在取り組んでいる高解像度スクリーン(4Kスクリーン)の管理は、多くの皆様が心から期待しているものです。4Dリストボックスはv16でDirectWriteに移行し、v19R3ではフォーム内のテキストレンダリングをDirectWriteに移行することにしました。