4Dコマンドでアプリケーションをビルドする
ここ最近の 4D のバージョンでは、独自のビルドチェーンを作成するためのさまざまな機能が追加されてきました。たとえば、以下のようなものです:
- .zip フォルダーを作成する機能
- 実行ファイルや “dll” ファイルに著作権などの情報を追加する機能
- “info.plist” ファイルを作成する機能
- 新しい build4D コンポーネントの搭載
4D v20 では、2つの新機能により、4Dコードでスタンドアロンまたはクライアント/サーバーアプリケーションの作成を仕上げまでおこなうことができます:
- 実行ファイルへのアイコンの追加
- サーバーまたはスタンドアロンアプリケーションの配布ライセンスファイルの生成 (サーバーアプリケーションは OEMライセンスのみ)
4Dに組み込まれたデータエクスプローラー
データエクスプローラー では、データベースのデータを表示することができます。表示するフィールドの選択や、データの整理・絞り込み・ソートが可能です。
4D v20 では、データエクスプローラーは、外部ブラウザーでなく 4Dで開くことができるようになりました。ユーザーは、ツールバーからワンクリックでデータエクスプローラーにアクセスでき、時間の節約と生産性の向上を実現します。
4D Write Pro: テキストボックスの docx 読み込み/書き出し
4D v19 R8 で導入された テキストボックス を使って、テキスト・表組み・画像・フォーミュラ・その他の要素を Write Pro ドキュメントの任意の場所に挿入することができます。この機能は、v20 で拡張され、docx から、または docx にこれらの要素をインポートおよびエクスポートする機能が追加されました。
さらに、他のエクスポート先の場合でも使える新しいエクスポートオプションが追加されました!
IMAP: メールボックスID とメールキーワード
4D v20 では、IMAPトランスポーターに非常に便利な機能が 2つ追加されました!
IMAPメールサーバーやクライアントの中には、メール内のカスタムキーワードを管理し、固有の機能を利用する必要があるものがあります。
また、IMAPトランスポーターにメールボックスID のサポートを追加し、名前を変更した後でも、メールボックスを識別できるようにしました。
フォームオブジェクトの進化
最も美しいインターフェイスを作ることができるように、私たちはフォームオブジェクトの改良を続けています。4D v19 R6 では、静的テキストと入力テキストのフォームオブジェクトの境界線に角の丸みを定義することができるようになりました。
4D v20 では、さらに新たな可能性が追加されました。
- ボタン、ラジオボタン、チェックボックスについて、タイトルテキストとアイコンの表示を管理する新しい設定が追加されました。
- ラジオボタンとチェックボックスについては、アイコンに使用可能な状態の数が拡張され、より良いインターフェースが提供できるようになりました。
更新された Print form & FORM LOAD コマンドを紹介
4D v16 R5 では、DIALOG コマンドが大幅に改良され、オブジェクト型の新しいパラメーター “formData” を渡すことができるようになりました。この新機能が 4Dデベロッパーの皆様に好評であることを聞いて、とても嬉しく思います。
4D v20 では、もう 2つのコマンドがアップグレードされました: Print form と FORM LOAD です! そのメリットは、同じように大きいでしょう。引数として渡されたオブジェクトは、印刷されるフォームや、メモリにロードされるフォームで直接利用することができます。
CLI で 4Dコードを実行するためのツール
開発業界においては、CI/CD は標準的な慣行になっています。コード修正の都度、テスト・コンパイル・ビルド・配布、時には運用、といった自動化されたアクションが生成され、コードが高品質で既存のシステムに容易に統合されることを保証します。
これらのアクションには、必要なコードを実行するためのツールが必要です。4D の開発者として私たちは、デベロッパーが初歩的なアクションを実行できるツールを無償で提供することにしました。このツールは tool4d と呼ばれ、4D環境内で必要なアクションを実行するプロセスを効率化するものです。
この記事では、tool4d の機能性と、開発プロセスを強化するための使用法を探ります。
最新の検索・置換機能を紹介
コードエディターの “検索と置換” 機能は、何年も前から存在しています。デベロッパーは、大規模なコードベースを扱う場合はとくに、簡単かつ効率的にコードを検索・置換することができます。4D v20 では、コーディングの効率化のためにこの機能を使用しているデベロッパーに喜ばれるであろう改良が施されています:
- 置換するコードの出現回数が把握できます
- 現在の位置を知ることができます
- “次へ”、”前へ” のナビゲーション機能に永続的にアクセスできます。
- モーダルウィンドウの代わりにパレットを表示し、クリック回数を減らします。
未定義値との比較
ORDA やクラスなどのオブジェクトが登場して以来、未定義 (undefined) 値を扱うことが多くなりました。
もっと簡単に扱えるようにしてほしいという声もあり、v20 からは、どんな型の値でもエラーなしに未定義値と比較できるようにしました。
新しいビルトイン WebSocketサーバー
相互接続が増しつつある世界においては、Webサイトや IoTアプリケーションがリアルタイムで更新されることが重要です。
相手に瞬時に情報を配信する方法として、サーバーとクライアントの間に双方向通信のチャンネルを提供する WebSocketプロトコルを使用することができます。v20 より、4D は WebSocketサーバーを作成するためのコマンドを提供します。