Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
C++IDERAD Studio

RAD Studio 13.2 で導入予定:より優れた最新の C++Builder Win64x ビルド エクスペリエンス

この記事は、 Maksim Menshikov氏によるblog記事「Coming in RAD Studio 13.2: A Better Modern C++Builder Win64x Build Experience」の抄訳です。

ClangベースのC++Builder Win64xコンパイラおよびプロジェクトシステムに関する開発状況をご紹介します。
機能プレビュー: このブログ記事は、RAD Studioソフトウェアのプレリリース版に基づいており、エンバカデロの特別な許可を得て執筆されています。製品のGAリリースまでは、いかなる機能も確定していません。

現代のC++は数年前とは比べ物にならないほど進化しており、開発スピードも格段に速くなっています。現在、私たちは最新の承認された標準規格であるC++23をサポートしています。しかし、言語標準規格にとどまらず、ソフトウェア開発を大幅に迅速化する包括的なレイヤーを提供しています。これがバージョン13.2における私たちの取り組みの焦点でした。

パッケージの改善

開発チームは、Win64x におけるパッケージサポートを大幅に改善しました。具体的には、デザインタイム 64 ビット パッケージ、Delphi ユニットを含むパッケージ、Delphi と C++ の混在パッケージの利用、およびツールチェーンで使用されるパッケージ デバッグ情報ファイルの生成に対応しました。これらの変更は、コンポーネント ベンダーや、既にランタイム パッケージを中心に構築されているアプリケーションにとって重要であり、IDE におけるパフォーマンスと安定性の向上につながります。

64ビットIDEでのコンパイル

現在のClangベースのC++Builder Win64xコンパイラは、コンパイルごとに個別の実行ファイルとして実行されます。DLLを介して公開されるインプロセスコンパイラを追加することで、IDEがコンパイラをロードしたまま直接通信できるようにします。

この画像は、プロジェクト構築中に現在のファイル、現在の行、総行数などが表示されることを示しています。

C++ Builder 13.2 のビルドビュー

これは、IDEに目に見える効果をもたらす重要なアーキテクチャ変更です。コンパイラは、ファイルと行の進行状況を正確に報告し、構造化された診断情報をメッセージビューに送信し、キャンセルに迅速に対応し、外部プロセスを繰り返し起動する際のオーバーヘッドの一部を回避できます。

診断とキャンセル

コンパイラのエラーと警告は、IDEが後で解釈する必要のあるコンソールテキストの行ではなく、構造化された診断情報として表示されるようになりました。これにより、メッセージビューで正しいファイルと行に確実に移動できるようになり、ビルドの実行中にIDEに適切な情報を提供できます。

キャンセル機能も改良しました。大規模なビルドを停止すると、リクエストはアクティブなコンパイラに直接送信され、残りのジョブがシャットダウンされている間もIDEは応答性を維持します。一見些細なことのように思えますが、ビルドが誤った設定で開始された場合や、最初のエラーによって残りの作業が不要になった場合などに非常に重要です。

再ビルド回数の削減とその他の変更

プロジェクトオプションの変更によって、必要以上にプロジェクトが再ビルドされるケースを削減しました。その他の修正点としては、リソースパスとDFMパス、アイコンリソース、無効な循環プロパティ定義などが挙げられます。これらは個々にはプロジェクトシステムの詳細に関するものですが、全体として、通常の編集・ビルド・デバッグセッションにおける多くの中断を解消します。

デバッガ

厳密にはC++に関するものではありませんが、バージョン13.2ではデバッガが大幅に改善されています。シンボル読み込みのパフォーマンスと、大規模ソリューションを扱う際のデバッガの性能が向上しました。これは、更新されたC++パッケージ管理との相性が特に良いです。

この画像はデバッガービューを示しています。ブレークポイントが1つヒットしており、ローカル変数が表示されています。

C++ Builder 13.2 のデバッガビュー

まとめ

RAD Studio 13.2は、日々のC++Builder Win64x ビルド エクスペリエンスへの、集中的かつ実践的な投資をしたものとなります。インプロセスコンパイラへの移行、構造化された診断機能、より応答性の高いキャンセル機能、そしてよりスマートなリビルド検出機能はすべて、コードの記述から実行結果の確認までの中断を減らすという共通の目標を掲げています。

パッケージの改善により、コンポーネントベンダーや大規模アプリケーションがWin64xツールチェーンを全面的に活用できるようになり、デバッガのパフォーマンス向上により、プロジェクトが拡大しても複雑なソリューションのナビゲーションが容易に行えるようになります。

これらの変更は、C++標準への対応だけでなく、ビルドとデバッグのサイクル全体をより高速に、より予測可能に、そしてより透過的にするという強い意志を反映しています。バージョン13.2が一般公開された際は、皆様からのフィードバックをお待ちしております。

機能プレビュー: このブログ記事は、RAD Studioソフトウェアのプレリリース版に基づいており、エンバカデロの特別な許可を得て作成されています。製品のGAリリースまでは、どの機能も確定していません。

Kai 1.1 Now Available! What's Coming in RAD Studio 13.2 Florence

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.

Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

IN THE ARTICLES