4Dで継続的インテグレーションを導入する方法: ステップ・バイ・ステップ
ソフトウェア開発の世界では近年、”継続的インテグレーション” という新しい概念が登場しました。それについて、私たちがあちこちで見聞きする定義は、次のようなものです:
“CI とは、アプリケーションのコンパイル・テスト・リリースを自動化し、定期的かつ頻繁におこなうプロセスである”
興味深く有望なプロセスであることは理解できますが、4D に実装するためには何をすればいいのでしょうか? インターネットを検索すれば、多くの CIツールやフレームワークが見つりますが、これらの CIツールを使うには、いくつかの前提条件があります。
(最後に日本語の解説動画へのリンクもありますので、お見逃しなく!)
QUICネットワークレイヤー: 自動アップデートとスリープモード
QUICネットワークレイヤーの開発は続いており、4D 20 R4 ではスリープモードと自動アップデートができるようになりました。これらの機能拡張を詳しく見て、他のネットワークレイヤーの動作と比較してみましょう。
レコードを削除しても、4D はセレクションの一貫性を保ちます
データの削除には注意が必要です。問題を防ぐために、トランザクションを使用したり、バックアップやログに頼ったりすることができます。
4D 20 R4 では、セレクション内のレコードを削除した場合に一貫性を保ち、セレクションを安定させるために、いくつかの改善がなされました。
重要: これは、4D標準のQUERYコマンド と ORDA で扱われるデータの両方に適用されます。
どのようにあなたの4Dコードが安全なものになるのか、続きをぜひご一読ください。
データエクスプローラーで作成・更新・削除する
データエクスプローラーは、データを表示するための強力なツールです。その機能により、管理者はデータの一貫性を簡単に確保することができます。同時にデベロッパーも、専用フォームを新たに用意しなくても、データの作成・更新・削除用のコードを検証することができます。
そして 4D 20 R4 では、ユーザーもデータを表示するだけでなく、データエクスプローラーのインターフェース内で直接データを修正することができるようになりました。そうです、データエクスプローラーのインターフェースで直接、データの追加・修正・削除ができるのです!
サブフォームを簡単に扱うためのクラス
4D フォーラムで、フォームの前景にメッセージ、砂時計、またはいくつかのインターフェース要素を表示し、背景をぼかすことについてのリクエスト、ヒント、または質問がいくつかありました。サブフォームや CALL FORM を使えば、そのようなインターフェースを作ることができます。複数ページのフォームを扱う場合、コードが複雑になることがあります。
そこで、複数ページのフォームに表示されるサブフォームの管理を簡単にするクラスを Vincent De Lachaux が用意いたしました。このクラスは、サブフォームを読み込んだり、ワーカーから制御したり、メインフォームのサイズが変更された場合にサブフォームの位置を変更したりします。このような仕組みを気にすることなく、ダイアログに集中することができます。
日付と時間のカスタマイズ
日付や時刻の操作には、4Dの内部リソースや OSの設定に基づいた、様々な表現のための専用フォーマットがたびたび必要になります。
通常は、規定のフォーマットで十分ですが、地理的に異なる場所や特殊な要件に対応するため、カスタムフォーマットが不可欠な場合もあります。4D 20 R4 では、このようなニーズに対応するために、大きな進歩がありました。
ノンブロッキング印刷
4D 20 R4 では、4D 内部の印刷ジョブの管理が大幅に改善されました。4D は、複数の印刷ジョブを並行して実行できるようになり、アプリケーションの反応性が格段に向上すると同時に、並行する印刷ジョブの管理が容易になりました。
詳しく説明しましょう!
4D View Pro: 4D 20 R4の新機能
リリースのたびに、4D View Pro の機能リストは拡大し続けています。今回のリリースも例外ではありません: 4D 20.2 と 4D 20 R4 には、SpreadJS の新バージョン v16.2 と、それに対応したリボンのアップデートが含まれています。
この最新バージョンで強化された機能を紹介していきましょう。
コードライブチェッカー導入: 4D開発におけるコード品質を向上
4D 20 R4 では、コンパイル、シンタックスチェック、そしてコードエディターでの入力時に使用される、コードライブチェッカーというアルゴリズムを導入しました。このブログ記事では、この機能の特性がどのように 4Dデベロッパーにとって便利なのかを紹介します。
エラー処理の新しい方法
最近、新しい throw()コマンドを使った新しいエラー処理メカニズムが導入されました。
これは、エラーを生成するコードに可能な限り近い場所に配置された、新しいエラー処理システムへの第一歩となりました。
4D 20 R4 では、式実行中のエラーをインターセプトできるように機能を拡張します。
その詳細を見ていきましょう。