今年を振り返る:2022年のトップ5機能
2022年は、これまで4回のプロダクトリリースを行い、皆様からご要望いただいた多くの機能を実装してきました。
増え続ける機能の中から5つを選抜するのは大変でしたが、皆様からいただいたポジティブなフィードバックをもとに、2022のトップ機能のリストを作成しました。
VSコード定義とシグネチャのヘルプに移動
4D v19 R6 では、外部のソースコードエディター (Visual Studio Code など)をサポートし、4D コードを扱えるようにし、Visual Studio Code 拡張機能を使用してシンタックスハイライトなどの標準機能を提供するようにしました。
4Dv19 R7では、2つの新機能が追加されました。定義へ移動」と「シグネチャーヘルプ」です。
角の丸み、登場!
現在のトレンドは、明るく清潔で柔らかな色と、なんといっても角の丸みです。
アプリケーションを装飾して最新のトレンドを取り入れられるよう、静的テキストと入力テキストの角を丸くする機能が追加されました。
HTTPクライアントの最新改良点
4D v19R6で、HTTPリクエストを実行する新しい方法をお届けしました。HTTPクラスです。当時、HTTP クラスの機能のいくつかは、新しいシンタックスに適応させるために、最終的なものではありませんでした。それは今、完了しました!v19R7では、圧縮応答、チャンク応答、リダイレクションの機能が完成しています。
ボーナスとして、HTTPリクエストのログを取る新しい方法も追加されました。そして、みんなに役立つように、この新しいログはレガシー構文だけでなく、新しいHTTPクラスでも利用可能です。
ファイル、フォルダー…そしてファイルハンドル!
4D v17 R5 で登場した File と Folder コマンド は、ディスク上のファイルとフォルダーを現代的かつ効率的に管理することを可能にします。
書き込み・読み取りについては、setText と getText 関数を使えば、内容全体の読み書きができます。しかし、既存のドキュメントを対象に 1行以上を読み書きしたい場合はどうすればよいでしょうか。こういった操作は、4D v19 R7 で登場した新しい “FileHandle” オブジェクトを使うことで、簡単におこなうことができます。
詳しくは記事の続きをご覧ください。
HTTPクラス: 非同期の HTTPリクエストを実行する新しい方法
4D のシンタックスと機能の改善に向けた弛まぬ努力の中で、4D で HTTPリクエストを実行するために、新しい HTTPRequest クラス を提供することに決定しました。このクラスは、4D v19 R6 で利用でき、今後のバージョンアップで多くの改良が加えられる予定です。さっそく、その使い方を紹介しましょう。
リストボックス: もっと美しく、もっと便利に
リストボックス はパワフルで、非常にカスタマイズしやすいフォームオブジェクトです。4D v19 R6 では、2つの新しいプロパティ、横方向パディング と 縦方向パディング (要素のコンテンツとその境界の間の内マージンまたはスペース) が追加され、そのパワーが拡張されました。これらは、リストボックスに新しいプレゼンテーションの可能性を与え、インターフェースによりプロフェッショナルな外観をもたらします。
フォームとサブフォームの通信を簡単に
4D v19 R5から、サブフォームに変数を関連付けることができるようになり、フォームとサブフォームの間のインターフェースとコミュニケーションの可能性が豊かになりました。通信手段は、2つの新しいコマンドで簡素化されました。Say hello toOBJECT Get subform container value とOBJECT SET SUBFORM CONTAINER VALUE 。
パラメータをシームレスに管理する方法
関数やメソッドの宣言では、そのパラメータを明示的に定義します。そして、その関数やメソッドを呼び出す際に、いくつかのパラメータが省略可能であれば、より少ない数のパラメータを渡すことができます。あるいは、${n}を使った宣言の場合、渡されるパラメータの数は可変です。この場合 Count Parametersコマンドを使い、引数をループさせます。このコードは完璧に動作します。それでも、ちょっと重いですね。
そこで、もっと軽い方法でパラメータを処理できないかとの要望があり、それに応えました。4D v19 R5から、新しいコマンドを提供します。 Copy parametersこれにより、シームレスで、よりエレガントで、読みやすいコードを書くことができるようになりました。
オブジェクトセット入力可能コマンドのオプションが増えました。
尊重すべきインターフェースやルールは多数存在します。多くの場合、これらの制約は活動のドメインにリンクされています。明らかに、あるデータはユーザーによって入力可能であったり、そうでなかったりする。入力できないフィールドの場合、インターフェイスを管理する方法は2つあります。
- ユーザーは、例えばレポートに追加するために、その内容を選択しコピーすることができます。
- ユーザーはフィールドをコピーしたり、その内容を選択することができません。