さようなら4D Internet Commands – ついに現代的なインターネット機能の統合へ
4D 21 のリリースに伴い、インターネットの黎明期から多くの開発者に長年愛されてきた4D Internet Commands プラグインに正式に別れを告げることになりました。しかし、これは単なる時代の終わりではありません。より安全で、よりパワフルで、より楽しい4D インターネット通信の始まりなのです。
バージョン20 の4DIC は、4D 21 でも使い続けることができます。では、なぜ新機能へと切り替えなければならないのでしょうか?それは、新しいビルトインクラスは単なる4DIC の置き換えではなく、最新の開発環境でインターネットプロトコルをどのように扱うべきかを完全に見直したものだからです。これらはネイティブでスレッドセーフであり、セキュリティ、パフォーマンス、柔軟性において現代的な基準を満たすように設計されています。
HTTPレスポンスをコントロールする新しい方法
4D 21から、4Dデベロッパーはシンプルな設定ファイルを使ってHTTPレスポンスを完全にコントロールできるようになりました。そのファイルとは、HTTPRules.jsonです。目的がセキュリティの強化であれ、パフォーマンスの最適化であれ、静的リソースへのアクセスの管理であれ、この機能を使えば、コードを一行も書くことなく、必要な柔軟性を得ることができます。
では、その機能と使い方を見ていきましょう。
QUICとネットワーク・スイッチングによって移動中でも接続が向上
外出先でネットワークを切り替えている間に、4D Serverへの4D リモート接続が切れてしまうことほどイライラすることはないでしょう。
イーサーネットからWi-Fiへ切り替える時も、Wi-Fiスポット間を移動する時も、従来の接続は切断されがちで、4D リモート接続は切断されてしまい再接続を余儀なくされていました。
4D 21 と QUIC プロトコルを使えば、このような切断は過去のものとなります。
QUICは、ネットワークが変更されてもそれに対する回復力があり、基礎となる接続がシフトしてもセッションを維持できるように設計されています。
4D DEVELOPERライセンスの自動有効化
新しいマシンにソフトウェアをインストールするたびに、ライセンス番号を手動で入力するのは面倒ではありませんか?
4D 21 を使えば、もうその必要はありません。4Dが自動でやってくれます。その方法を見てみましょう。
HTTPSリクエストがWindows証明書ストアに対応
4D 21 から、HTTPS リクエストはディスクに保存された証明書ではなく、Windows 証明書ストアに保存された証明書を使用できるようになりました。これは、HTTPS リクエストのクライアント側でローカルな証明書を使用する必要がある場合に特に便利です。
バージョン7 における UUID の改善とソート機能
4D 20 R10 から、UUID はシステム関数に依存するのではなく、内部アルゴリズムを使って直接生成されるようになりました。これにより、フォーマットや動作をより細かく制御できます。また、今回のアップデートでは、時系列ソートをサポートするバージョン 7 UUID の選択が可能になりました。アプリケーションへの影響について詳しく見ていきましょう。
運用ライセンスをアプリケーションに自動的に組み込む
アプリが完成し、次は迅速かつクリーンに、ライセンスを適用した状態でリリースする必要がありますか? 4D 20 R10 では、ビルドしたアプリケーションに運用ライセンスを自動的に埋め込む新機能が追加されました。手動のセットアップやマシン固有のパス設定は不要です。OEM または 4D Desktop Business ライセンスをお持ちのお客様向けに設計されたこの機能は、たった1つの設定でビルドファイルをポータブル化し、バージョン管理可能にし、複数マシン間で共有可能にします。ライセンスチェックはビルド開始前に実行され、使用されたライセンスはログに記録されます。万が一問題が発生しても設定は保持されます。
たった一つの簡単な調整で、デプロイメントの心配が一つ減ります。
UDP通信を実行する新しいクラス
4D 20 R8 では TCPConnectionクラスが導入され、TCPクライアント接続をオブジェクト指向で非同期に処理できるようになりました。そして 4D 20 R9 では、TCPサーバーを構築するための TCPListenerクラスが登場しました。そして今、4D 20 R10 では、新しい UDPSocketクラス が完成したことで、あらゆるリモートマシンとの UDP通信を、クライアントとして、あるいはサーバーとして管理できるようになりました。これは特に IoT、リアルタイムモニタリング、ブロードキャスト通信に便利です。そしてなにより、このクラスは、プリエンプティブおよび非同期なUDP通信をサポートします。
最後に、この新機能は廃止予定である Internet Commands プラグインを置き換える最終ステップとなります。
それでは詳細を説明しましょう。
ラベルウィザードのフォーミュラ
4D 20 R9 では、ラベルウィザードコンポーネントがアップデートされ、フォーミュラが使いやすくなりました。これにより、悪意のあるフォーミュラの作成を防止し、セキュリティが向上しました。また、不正なフォーミュラの作成を防ぐことで、品質も向上しています。 それでは、改良点をご紹介しましょう!
アプリケーションUUID で macOS のプライバシーとセキュリティを強化
macOS は Sequoia 以降、アプリケーションの UUID に基づいてネットワークアクセスなど様々なプライバシーとセキュリティの設定を制御するようになりました。ビルドした 4Dアプリケーションの UUID はどれも同じなので、エンドユーザー側では、アプリケーションをインストールするたびにプライバシーとセキュリティの設定をやりおさなければならないなどの不便が発生する可能性があります。これに対処するため、4D 20 R9 から、macOS用にビルドされた各 4Dアプリケーションは、独自のアプリケーションUUID を持つようになりました。この変更により、アクセス制御のチューニングがより確実になりました。以下で、詳細について説明します。
