『RAD Studio 12 Athens』の提供開始

本日、Embarcaderoは、RAD Studio、Delphi、C++Builder 12 Athensをリリースしました。RAD Studio 12 Athensリリースには、製品の将来の基盤となるエキサイティングな新機能が満載されています。

主な新機能

以下はRAD Studio 12 で導入された主な機能の概要です。次のセクションで詳細を説明いたします。

  • C++BuilderのIDEにVisual Assistを統合し、高水準なC++言語のコード補完、コードナビゲーション、名前変更リファクタリングを提供
  • 大幅に更新されたWin64向けのCLANGベースC++コンパイラのプレビュー。最新のC++標準言語機能をサポートし、外部ライブラリやC++コードとの統合を強化
  • お客様からの要求に対応するため、複数行の文字列リテラルを含むDelphi言語を追加
  • FireMonkeyでのSkiaのサポート。FireMonkeyの新しい基盤の採用により、すべてのターゲットプラットフォームにおいて、グラフィックスと UI コントロールのレンダリングでより高いパフォーマンスと品質を提供
  • VCLのMDIと新しいタブUIアーキテクチャを再構築し、お客様は最小限の労力で既存のプログラムにHighDPI とスタイル設定のサポートを追加することによって、既存のアプリケーションをモダナイズ
  • 新しいFireDAC Query by Example (QBE)コンポーネントにより、データのフィルタリングが容易になりました。またDelphi向けの新しいJSONウィザードによってXMLと同様に、一般的なJSON形式のデータをオブジェクトにマッピング可
  • IDE の生産性と品質が大幅に向上し、RAD Studio を日常的なタスクで、さらに簡単かつ迅速に使用可能に!
  • RAD Server のスマート ID をサポートし、RAD Server の使いやすさを維持しつつ、お客様がホストする REST API をより強力かつ柔軟に対応
splash 12

C++向けの重要な革新

このリリースでは、C++Builder と C++ ツールチェーン(RAD Studio でも利用可能)に重点を置いています。エンバカデロの開発チームは、C++コンパイラとツールチェーンのモダン化、コード補完による驚異的な生産性の提供、Visual Assistの統合によるリファクタリングとナビゲーションの追加という2 つの重要な C++ の改善に焦点を当ててきました。

C++ツールチェーンのアップグレードは、C++サポートの驚くべき全面的な見直しです。Clangの新バージョンだけでなく、CおよびC++ランタイムライブラリ、STL(C++標準テンプレートライブラリ)、さらにリンカとデバッガも含まれています。

この大規模な取り組みの目標は

  • 最近のライブラリやプロジェクトで見かけるC++コードを実行できること
  • サードパーティ製ライブラリを簡単に使用できること
  • 最新の安全なコーディング標準の活用
  • よりパフォーマンスの高いアプリの提供
  • 優れたデバッグ機能を備えた最新のC++標準を提供

などを目指しています。

またリンクやSTLのような分野を直接改善し、COFFやPDBオブジェクトフォーマットやデバッグ・フォーマットを使用するようなWindowsプラットフォーム標準に移行することを目指しています。この機能の詳細については、こちらのブログをご覧ください。

12.0では、コマンドラインコンパイラとして利用可能な新しいC++ツールチェインのプレビューを提供しています。 エンバカデロでは、既存のC++コンパイラと並行して、この新しい C++ ツールチェインの IDE 統合、および VCLやFireMonkey UX ライブラリを含む RAD Studio の Delphi ライブラリとの統合に引き続き取り組んでいきます。これらのアップデートが利用可能になり次第、サブスクリプションでお客様に提供する予定です。

12.0におけるC++Builderのもう1つの重要な革新は、これまで Visual Studio でしか利用できなかった、世界をリードする C++ 生産性ツールである Visual Assist テクノロジの統合によってもたらす機能としてコード補完、コードナビゲーション、リファクタリングなどを含む、より優れたコード インサイトの提供です。これらは、コーディング中に頻繁に呼び出されるコード補完から、開発者が手作業でコードベースを検索する代わりにコードの関連部分を簡単に見つけられるナビゲーション、コードの整理と安全性を支援するリファクタリングまで、一般的な開発作業を支援する重要な生産性ツールです。

RAD Studio 内では、シンボルと参照の検索、プロジェクトのアウトラインの表示、実装から宣言への移動、およびリファクタリング名の変更など、Visual Assist 機能の重要な初期サブセットが利用可能になります。

120 vafindref

Delphiの素晴らしい追加機能

Delphiコンパイラ側では、12.0から長い文字列リテラル、三重引用符で制限された複数行の文字列リテラルのサポートなど、小さいながらも優れた拡張機能がいくつか追加されており、SQL、HTML、JSON、XML、および同様の複数行テキストを簡単に埋め込むことができます。 この機能の詳細については、こちらのブログをご覧ください。

またDelphi 12 コンパイラは、Win32/Win64 互換性の強化、NaN 浮動小数点数比較のサポート強化、すべてのプラットフォームでの浮動小数点例外の無効化のために、NativeIntの弱い型エイリアス定義も提供しています。

screenshot 2023 11 06 at 10 36 43 pm

プラットフォームのサポートに関しては、Delphi 12.0 では、Play ストア アプリの提出に対する Google の要件である Android API レベル 33 との互換性を提供しています。

新しい基盤としてのFireMonkeyとSkia

UI ライブラリに関してDelphiとC++Builderの両方で RAD Studio 12.0 の最も重要な改善点は、非常に人気のあるクロスプラットフォームレンダリングエンジン Skia を FireMonkey に統合したことです。これはSkia4Delphi オープンソースプロジェクトを統合することで実現されていますが、Vulkan サポート、Skia Shading Language によるエフェクトとフィルタのサポート、WebP エンコーダー、プリンターのサポート、PDF への印刷などの機能拡張も行われています。

RAD Studio Skia のサポートには、ダイレクトAPI、特定の UI コントロール(TSkAnimatedImage、TSkLabel、TSkPaintBox、TSkSvg)、および FireMonkey UI コントロールの UI レンダリングの Skia による自動マッピングがあります。一般的に、Skia はレンダリングの品質とパフォーマンスを向上させます。同じ Skia UI コントロールが VCL Windows ライブラリでも使用できることに注意してください。

screenshot 2023 11 06 at 10 35 12 pm

ライブラリの将来に向けた新たな強固な基盤を提供する Skia サポート以外にも、最近の多くのプラットフォームの機能強化に合わせて Android サポートを改善し、分割画面サポートを追加し、FireMonkey アプリケーションを横に並べたペインで動作できるようにしました。これは、利用可能な画面の一部のみを使用するものであり、大きな画面を備えたタブレット デバイスで特に便利な機能です。またiOS と Android の両方に対応し、単一行 TEdit コントロールと複数行 TMemo コントロールのIME テキスト入力機能を大幅に刷新しました。

FireMonkey 開発向けの IDE のもう 1 つの重要な改良点は、Apple と Google が要求するすべての解像度でアイコンとスプラッシュ画面を生成するウィザードの導入とAndroid Adaptative Iconのサポートです。詳しくは、こちらのブログを参照ください。

screenshot 2023 11 06 at 10 33 40 pm

MDIとタブ付きUIアーキテクチャによるVCLのモダナイゼーション

エンバカデロは、お客様の既存アプリケーション(多くの場合、ターゲットとする業界で非常に大規模で確立されているもの)の移行を支援するために、VCLのモダナイゼーションを行ってきました。12.0では、昔ながらの、しかし今でも人気のあるMDI(WindowsのMulti Document Interface)モデルを維持することに重点を置いています。新しいリリースでは、MDIアプリケーションの完全なHighDPIサポートを採用し、VCLスタイルも採用できるようになります。これによってマイクロソフトが近年MDIのサポートを軽視していることに起因するプラットフォームの問題を回避することができます。

screenshot 2023 11 06 at 10 35 37 pm

さらにRAD Studio 12.0では、新しいTFormTabsBarコントロールにより、MDIからの簡単な移行や全く新しいモデルとして、新しい MDI タブ付きフォーム のUI(Google Chromeや他の多くの人気アプリのようなもの)が導入されました。VCLライブラリには、高DPI画面向けのフォント管理が改良されています。

またVCL の改善の一環として、新しいリリースでは、作業の簡素化に役立つ多数の新しいデザイナーが導入されています。新しい文字列リストエディタ、複数行文字列エディタ、ボタン、ラジオグループ、パネルのクイック設定ダイアログがあります。これらの便利なツールのいくつかは、もともとKSVC(Konopka Signature VCL Controls)の一部でしたが、このKSVCのアドオンコントロールパックのインストールが不要になり、最初から誰でも利用できるようになりました。

screenshot 2023 11 06 at 10 34 23 pm

コア機能となるRTL定義の他に、Delphi開発者がコンポーネントライブラリで公開していないWindowsプラットフォームAPIを簡単に呼び出せるように、Object Pascal に変換された完全な Windows API ヘッダーの新しいユニットセットを作成しました。このAPI変換には311個のDelphiヘッダーファイルと41MBのコードが含まれ、Microsoftが提供するプラットフォームAPI全体をカバーしています。

さらに、新しいインターフェイス、プロパティ、イベントにより、Edgeブラウザの統合が改善され、前回のリリース以降のプラットフォームWebView 2コントロールの改良に対応しました。そして VCL のさらなる改善点としては、非常に柔軟なTControl 列挙子、Desktop Windows Manager (DWM)の機能強化、ダブルバッファリングモードへの変更が挙げられます。

Delphi RTL、データ、その他の新機能

他のDelphiコアランタイムライブラリにも多くの改良が加えられており、C++Builderでも活用されています。また主力データベースアクセスライブラリであるFireDACでは、クラシック なQBEモード(Query-By-Example)のサポートが追加され、簡単なデータフィルタリング条件を入力するためのUIを開発できるようになりました。

さらに、FireDAC コンポーネントは、特定のクエリコントロールの SQLコマンドの種類の制限、複数の SQL コマンドの禁止、実行時にSQL クエリの変更をブロックなど、開発者がアプリケーションのセキュリティを向上させるための追加機能を提供します。これらの改善により、他の業界のベストプラクティスと併用することで、開発者はアプリケーションのセキュリティを向上できるようになります。

RAD Studio 12.0 では、新たに JSON データバインディングウィザードも導入されています。 JSON データバインディングウィザードでは、JSON データ構造に基づいて、新しいファイルにストリーム出力するためDelphi データ型を作成することができます。

screenshot 2023 11 06 at 10 36 07 pm

RAD Studio IDEの改善

もちろん、IDE にも多数の変更点があります。

まずは、機能インストーラの新しいUXで、製品の初期インストールや、後から機能やプラットフォームを追加する際に使用されます。このダイアログボックスは、最新のVCLコントロールを使用して、動作とUIが完全に再設計されました。以前の複数ステップの設計とは異なり、追加アドオンを含むすべての主要なインストールオプションが1ページにまとめられているため、ユーザーにとって非常に使いやすくなっています。また、新しいダイアログでは、インストールの問題が発生した場合に、より適切なエラー情報も提供されます。

screenshot 2023 11 06 at 10 49 13 pm

次に呼び出しスタック、構造体ビュー、 構造ペインのような多くのサブウィンドウでIDE カラー パレットを使用した構文の強調表示が追加されています。またソースコードの検索、ナビゲーションツールバーの機能、複数の編集ウィンドウの使用、その他多くの小さな調整も改善されています。

そしてC++BuilderのVisual Assist統合の導入に加え、Code Insightに使用されるDelphiLSPのサポートもさらに改善されました。例えば、たとえば、コード補完に言語キーワードが含まれるようになり、補完中にコード テンプレートがコード文脈的に正しい領域に表示されるほか、ジェネリックスや補完配列または配列型のサポートが強化されました。

最後に、RAD Studio はコードエディタ向けの新しい ToolsAPI をさらに拡張し、開発者やサードパーティベンダーが IDE 向けのさらに柔軟なプラグインを作成できるようにしました。

RAD ServerとInterBase

RESTサーバーAPI ホスティングプラットフォームである RAD Server には、いくつかの注目すべき改善点があります。 最も大きな変更点は、スマート ID モデルを簡単にサポートできるようになったことで、標準ライブラリを使用して、サーバーが公開するリソースに対してより優れた識別子を定義できるようになりました。RAD Server は、パフォーマンスの向上、データ ページングの改善、セッション認証の向上、および全体的な品質も提供します。

最後に、RAD Studio の新バージョンでは、最近リリースされた InterBase 2020 Update 5 のDeveloper Editionと組み込み版(ToGo、IBLite)が提供されています。

多数の機能改善と要望への対応

RAD Studio 12.0のリリースでは、上記で紹介した機能に加え、IDE を始め、Delphi RTL ライブラリ、VCL UI ライブラリ、FireMonkey クロスプラットフォームライブラリ、FireDAC などのデータアクセスレイヤ、HTTP クライアントおよびサーバコンポーネント、RAD Server など、複数のサブシステムにおける品質向上に焦点を当てています。

RAD Studio 12 では、Quality Portal(https://quality.embarcadero.com)でお客様から報告された 1,027 件の問題の修正を実施し、877 件のパブリックなバグレポートへの対応、そしてお客様から要望された150 件の新機能に対応いたしました。

RAD Studio 12 Athensのリリース情報

本日より、RAD Studio / Delphi / C++Builder 12の無料トライアルをダウンロードできるようになりました。また、新たにバージョン12を購入される方は、アップデートされた製品ビルドのダウンロードURLが案内されます。アップデートサブスクリプションまたは上位のサポートプログラムに加入されている方は、既存のライセンスを使用してRAD Studio 12をカスタマーポータルサイト(https://my.embarcadero.com)からダウンロード/インストールできます。

詳細については、以下のリンクをご確認してください。

RAD Studio/Delphi/C++Builder 12.0の詳細について、日本時間11月10日午前1時に開催される “What’s Coming“ウェビナーにご参加ください。


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