Delphi

Delphiは、コンソール 、デスクトップ 、Web、モバイルアプリケーション開発のための統合開発環境  である。

DelphiのコンパイラはObject Pascalの独自拡張  を用いて、プラットフォーム毎にネイティブコードを生成する。開発環境としてサポートされているのはMicrosoft Windowsのみだが、アプリケーション配置の対応プラットフォームはWindows 、macOS 、iOS 、Android 、Linux  となっている。

元々DelphiはボーランドがTurbo Pascal / Borland Pascalの後継として開発したWindows用のRADツールである。C++Builderとは多くのコアコンポーネント、特にIDEとVisual Component Library  を共有していたが、RAD Studioの前身となるBorland Developer Studio 2006の登場まではそれぞれ独立した製品だった。

2006年にボーランドの開発ツール部門がコードギアとして完全子会社化され、2008年にエンバカデロ・テクノロジーズに買収された。2015年10月に、上記エンバカデロ・テクノロジーズがアイデラにより買収される発表がなされた。

本項では Delphi Prism として開発されていた 「Embacardero Prism」 についても述べる。

1. 概要
-----

DelphiはWindows、macOS、iOS、Android、Linux向けアプリケーションを開発するための統合開発環境  である。

「コンポーネント」と呼ばれるソフトウェア部品を 「フォーム」 や 「データモジュール」 に貼り付ける手法により、ユーザインタフェースやアプリケーションロジックの設計を視覚的に行え、ソフトウェアの開発を迅速に行える。またコンポーネント自体も Delphi で開発可能であり、その開発環境自身も利用者のニーズに従って拡張可能である。コンポーネント指向プログラミングを体現した開発環境といえる。

Delphiで使われるコンポーネントのフレームワークには「Visual Component Library 」、「Component Library for Cross Platform 」、「FireMonkey 」がある。このフレームワークを用いてC++言語でのWindows向けソフトウェア開発を実現したものが「C++Builder」である。

VCLは最初期のDelphiから存在するWindows専用のフレームワークであり、Windows APIおよびWindowsコントロールを抽象化したものである。
Object Pascal  / C++  言語でのLinuxソフトウェア開発を可能にした製品として「Kylix」がある。これはCLXフレームワークによるマルチプラットフォームアプリケーション作成を行うもので、WindowsではDelphi / C++Builderを、LinuxではKylixを用いてマルチプラットフォームアプリケーション開発を行うものだった。しかしながらLinuxのデスクトップ環境のサポートの難しさから安定した品質を提供できず、Kylix 3を最後に開発を終了しており、DelphiでのCLXサポートもDelphi 7が最後となっている。
Delphi XE2以降、FireMonkeyフレームワークによるマルチプラットフォームアプリケーション開発に対応し、最新版ではWindows、macOS、iOS、Android、Linux向けのアプリケーションを作成することが可能となっている。ただし、開発環境としてのDelphiは依然としてWindows上でしか動作しない。GUIプログラミングでは、オブジェクトのイベントの処理をイベントハンドラーに委譲  するスタイルの設計パターンを採用することが多い。このような場合、例えばJavaでは継承を使用するが、Delphiはメソッドポインタの機能によって委譲をサポートしている。

Delphiではビジュアルエディター上でオブジェクトのイベントハンドラーを設定することもでき、変更はソースコードに反映される。逆にコードエディター上でイベントハンドラーを記述してメソッドポインタをバインドするとビジュアルエディターにも変更が反映される。この双方向の同期手法はTwo-Way-Toolsと呼ばれ、ボーランドの特許である。

Delphiはバージョン1から5までは順調にバージョンアップを繰り返し、それなりに人気もあったが、Delphi 6 / 7ではドキュメントの品質が明らかに低下し、Delphi 8以降.NET FrameworkやC#もサポートした巨大な開発ツール  に発展したが、製品自体の品質が落ちてしまい、利用者を急速に失った。その後、Delphiはボーランドのツール部門買収などの混乱の中で低迷が続いていたが、エンバカデロ・テクノロジーズのもとでC#と.NET Frameworkのサポートを廃止しスリム化、Delphi 2009で再びWin32用のツールとして再出発を果たした。その後Unicodeサポートなど多くの機能拡張も行われ、macOS、iOS、Android、Linux向けのアプリケーション開発にも対応、品質も安定してきており、往年の実力を取り戻しつつある。

2. 歴史
-----

2.1. 名前の由来
----------

「Delphi」 とは、ギリシャの古代都市 「デルフォイ」 に由来する。デルフォイにあるアポロン神殿は、その託宣  を時の為政者だけではなく、一般人にも授けたことから人気が集まり、その門前町である都市国家デルフォイは古代の人気観光スポットだった。

当初はOracle Databaseサーバのフロントエンドとしての採用を目論んでおり、それにちなんだコードネームとしてDelphiが選ばれた。AppBuilderという製品名で発売しようとしたがノベル製品の名称  と競合してしまい、議論と市場調査の結果、コードネームがそのまま製品名となった。

2.2. Delphi 1から5まで
------------------

Delphiは1995年9月に発売された。最初のバージョンはWindows 3.1用として開発された。Turbo Pascal譲りのオブジェクト指向をその土台に据えつつ、インタプリタ動作と錯覚してしまうほどの高速なコンパイラを備え、「コンポーネント」 と呼ばれる設計部材による視覚的開発手法を採用するというDelphiの基本的な性格は、この時既に定まっており、この画期的な製品はソフトウェア開発者から大きな注目を浴びた。Delphi 1はシリーズを通して唯一の16ビット開発環境としての側面も併せ持っている。なお、当初の日本語版には英語版で提供されていたDatabase DesktopやInterBaseなどが含まれておらず、価格も安価に設定されていた。その後、これらのツールを含む Delphi and Database Toolsが発売された。

25 周年を迎えた 2020年2月15日に Delphi 1.0 Client/Server  がアンティークソフトウェアとして無償公開された。

「Delphi 2」は1996年に発売された。これ以降、Delphiは開発対象をWindows 95に代表される32ビットWindows  に移した。マイクロソフトのVisual BasicとVisual C++の長所を兼ね備えた開発環境として人気を博し、その後も順調にバージョンアップを繰り返した。

「Delphi 3」は1997年に発売された。Delphi 1 発売以来の様々な問題点をほぼ改修し、パッケージと呼ばれるDelphi独自のDLL形式をサポート、ActiveXコントロールの開発をサポートし、ウェブアプリケーション開発機能を提供した。完成度の高いバージョンであり、その後のDelphiの原型となった。

「Delphi 3.1」 はDelphi 3のマイナーバージョンアップ版で、Delphi 3ユーザーにはDelphi 3.1のCD-ROMが郵送された。このバージョンは日本でのみリリースされた。

「Delphi 4」は1998年に発売された。NT サービスアプリケーションの開発、CORBAをサポート。

「Delphi 5」は1999年に発売された。ADO対応 、COMオブジェクトコンポーネントラッパーを提供。

2.3. Delphi 6
-------------

「Delphi 6」は2001年7月9日に発表された。

SOAPを利用するWebサービスの作成機能、コンポーネントベースでWeb画面が設計できるWebSnap、新しいデータベースフレームワークdbExpress 、Linux版Delphi  と共通のComponent Library for Cross-Platform  などを搭載した意欲作。BDE  は、このDelphi 6付属のバージョンである5.2が最終版となった。Windows 2000に対応。日本でも無償のPersonal版が提供された。

2.4. Delphi 7 / 7.1
-------------------

「Delphi 7」は2002年8月22日に発表された。

Delphi 1以来の伝統的なIDEを用いた最後の製品で、完成度の面で評価が高い。Windows XPに対応。

Professional版以上では「Delphi 7 Studio」の名称を使用。6で無償であったPersonal版は有償に変更になった。IntraWeb、RaveReportを搭載。Delphi for .NETのプレビュー版を添付。Professional版以上にはObject Pascal  版のKylix 3が付属した。ただし、Kylix 3は最後のKylixであり、CLXサポートもDelphi 7を最後に廃止されている。エンバカデロ・テクノロジーズによるDelphi 7の再販版が存在するが、こちらも「Borland Delphi 7」の名称を用いていた。ただし、"Studio" の文字は外された。Win9xで動作するDelphiとしては最終版となる。そのため、段階マイグレーションのチェックポイントとして有用であり、現在でも最新版を購入すれば「Delphi 7.1」を入手する事が可能となっている。

2.5. Delphi 8 for the Microsoft .NET Framework
----------------------------------------------

「Delphi 8 for the Microsoft .NET Framework」は2003年11月3日に発表された。

.NET Frameworkに対応した「Delphi for the Microsoft .NET Framework 」の最初の製品だった。それ以前のDelphiの言語構文を殆ど変更する事なく.NETアプリケーションを開発できる。「Galileo」と呼ばれる新しいIDEになり、Microsoft Visual Studioと似たユーザインタフェースや外観が導入されたが、品質はお世辞にも良いとは言えなかった。.NET専用という点でDelphiの系譜の中ではやや異端のバージョンである。Win32の開発の為にDelphi 7.1が付属した。また、DelphiのIDEはDelphi  で書かれており、IDEを拡張するためのWin32コンパイラとして IDE Integration pack for Delphi 8 が用意された。

2.6. Delphi 2005
----------------

「Delphi 2005」は2004年11月4日に発表された。

ボーランドのC#言語開発環境である「C#Builder」とWin32開発用および.NET開発用の「Delphi for .NET」が統合された。より正確には、「Delphi 8 」と「C#Builder」を統合し、そこへWin32開発用である「Delphi for Win32」を追加したものがDelphi 2005である。Delphi 2005には無償版が用意されていたが、実際に提供されたのは欧州など限られた国のみだった。この製品ではIDEが大幅に強化された。UMLモデリング機能  や構成管理機能 、リファクタリング機能の導入などである。また言語にもfor ... in構文やinline命令などが追加された。

2.7. Delphi 2006 / Turbo Delphi
-------------------------------

「Borland Developer Studio 2006」は2005年11月24日に発表された。

「Delphi 2006」という名称の製品は単体では存在しない。他言語との統合版  と単体製品  で名称が異なっている。

「Delphi 2005」の後継製品であり、Win32開発環境として「Delphi 2006 for Win32」が、.NET開発用の環境として「Delphi 2006 for .NET」と「C#Builder」が提供された。さらにボーランドのC++言語によるVCL開発環境 「C++Builder」 が統合されている。

「Turbo Delphi」は2006年9月6日に発表された。これは「Borland Developer Studio 2006」からWin32開発用のDelphi for Win32を単体として分離したものである。Delphi 2006 Update 2とほぼ同等の機能を持ち、エディションとしてはProfessionalに相当する。同様に「Delphi 2006 for .NET」、「C++Builder」、「C#Builder」も単体分離され、それぞれ 「Turbo Delphi for .NET」、「Turbo C++」、「Turbo C#」の名称で同時リリースされた。無償版  も提供された。Turboシリーズは他のパーソナリティと同時にインストールする事はできず、「Borland Developer Studio 2006」とも共存できない。

FastMM相当のメモリマネージャに変更され、クラスヘルパー等の新しい言語機能も追加されている。

2.8. Delphi 2007 / R2
---------------------

2007年2月21日に 「Delphi 2007 for Win32」が発表された。

製品名が示す通り、Win32開発用の環境である。Windows Vistaに対応。

2007年9月6日にはこの他に.NET開発用の「Delphi 2007 for .NET」を含む統合版「CodeGear RAD Studio 2007」が発表された。.NET 2.0に対応し、ジェネリクスが導入されている。なおC#BuilderやDelphi for .NETにおけるWinformのサポートは打ち切られた。

その後、2007年10月10日に「Delphi 2007 for Win32 R2」が発表された。これは「Delphi 2007 for Win32 」に、「BlackFish SQL」を追加した物である。

内部コード体系がShift_JIS  であるDelphiとしては最終版となる。旧バージョンとの互換性も高く、Windows Vista対応が可能なため、マイグレーション先としても、段階マイグレーションのチェックポイントとして有用なバージョンである。そのためか、2017年時点においてもサポートは継続されており、現在でも最新版を購入すれば「Delphi 2007 for Win32 」を入手する事が可能である。

2.9. Delphi 2009
----------------

2008年8月26日に「Delphi 2009」が発表された。

長年の懸案であった VCLとRTLのUnicode化、ジェネリクスや匿名メソッドの導入など、Delphiにとって大きな転機といえるバージョンアップだった。"for Win32" の文字はないがWin32開発用である。

2008年12月2日には.NET開発用の「Delphi Prism」を含む統合版「CodeGear RAD Studio 2009」が発表された。旧来のDelphi for .NETは廃止になっている。Delphi Prism については後述する。

2.10. Delphi 2010
-----------------

2009年8月25日に「Delphi 2010」が発表された。内部バージョン13.0は忌み番のためスキップされた。

Windows 7に正式対応。タッチインタフェースやマウスジェスチャーの制作支援機能、オープンソースDBであるFirebirdのサポート、RTTIの強化、IDEの改良が盛り込まれた。開発環境をインストールするOSとしてWindows 2000以前はサポートされなくなった。

2.11. Delphi XE
---------------

2010年9月2日に「Delphi XE」が発表された。

XEは "Cross Platform Edition" の略である。名称通りクロスプラットフォーム開発環境を目指して開発が進められたものの、不完全であったため、クロスプラットフォーム機能の搭載は見送られている。結果、前バージョンとの機能差はあまりなくなってしまっているが、純粋なWin32アプリケーション開発環境としては最終版であるため、段階マイグレーションのためのチェックポイントとして有用である。

2011年2月1日にはStarterエディションが追加発表された。「Turbo Delphi」 以来のエントリー向けエディションであり、無償ではないがコンポーネントのインストールが可能、1,000 USドルを超えない範囲であれば商用利用可能など、制限は大幅に緩和されている。ただし、Starterには旧Delphiのライセンスは付属しない。また、同時利用は同一サブネット内において5ライセンスまでとされている。このため教室での利用は向かないとされており、アカデミック版の提供はない。Starter版には通常価格とアップグレード価格が用意されているが、同社または他社の開発ツールユーザーであれば「誰でも」アップグレード版を購入できる。C++Builder Starterとの共存はできず、RAD StudioにもStarterは提供されない。

Starter版とアカデミック版を除き、Delphi 7、2007、2009、2010のライセンスが付属する。

2.12. Delphi XE2
----------------

2011年9月1日に「Delphi XE2」が発表された。

新たにFireMonkeyフレームワークを導入したことにより、HDや3Dに対応した高品質なユーザインタフェースの設計や、Windows 64bit、Mac OS X 、iOS向けのマルチプラットフォームアプリケーションの開発が可能になった。但し、iOS開発は実際にはFree Pascal  を使ったツールチェインであり、後述するXE4以降のiOS開発環境との互換性は乏しい。マルチプラットフォーム化によりVCL / FMX / RTLのユニットで、System.TypesやVcl.Stylesのような、ドットで接頭辞を連結する命名規則を使うようになったため、以前のバージョンにソースコードを移植する場合には注意が必要である。Windows以外のアプリケーションのデバッグ及びデプロイには新しいリモートデバッガである 「プラットフォームアシスタントサーバー 」 を利用する。また、製品エディションとしてEnterpriseとArchitectの間にUltimateが追加された。

搭載されるコンパイラはDCC32 , DCC64 , DCCOSX  の3つとなった。

Starterとアカデミック版を除き、Delphi 7、2007、2009、2010、XEのライセンスが付属する。

2.13. Delphi XE3
----------------

2012年9月4日に「Delphi XE3」が発表された。

新たに「Metropolis UI」を導入したことにより、タッチ対応、ライブタイルサポートなどを実装したWindows 8デスクトップアプリケーションの開発が可能になった。ただしWindowsランタイム  には対応しない。OS X v10.8  アプリケーション開発に対応。Visual LiveBindingが追加されてデータとユーザインタフェースの紐付けが容易になった。Enterprise版以上のエディションに新しいデータベースフレームワークである FireDAC が追加された。ProfessionalエディションでFireDACを利用するには、別途「FireDAC Client/Server Add-On Pack」を購入しなければならない。XE2にあったFPCツールチェインなiOS開発環境は廃止されている。開発環境をインストールするOSとしてWindows XP以前はサポートされなくなった。

Starterとアカデミック版を除き、Delphi 7、2007、2009、2010、XE、XE2のライセンスが付属する。

2.14. Delphi XE4
----------------

2013年4月23日に「Delphi XE4」が発表された。iOS開発機能が追加された。これはXE2のものとは異なり、コンパイルにFPCを必要としないが、デバッグ及びデプロイのためにOS X搭載のIntel Macが必要となる。Professional版でモバイル開発  を行うには「Mobile Add-On Pack」を別途購入する必要がある。前バージョンのXE3から7ヶ月でのバージョンアップとなったため、XE3からのバージョンアップ料金はキャンペーン価格ながら格安の6,000円となった。PAServer 実行環境としてのMac OS X v10.6  はサポートされなくなった。

搭載されるコンパイラは DCC32 , DCC64 , DCCOSX , DCCIOS32, DCCIOSARMの5つとなった。

Starterとアカデミック版を除き、Delphi 7、2007、2009、2010、XE - XE3のライセンスが付属する。

2.15. Delphi XE5
----------------

2013年9月11日に「Delphi XE5」が発表された。

OS X v10.9 、iOS 7アプリケーション開発に対応。Android開発機能が追加された。AndroidアプリケーションのデバッグにはPAServerを必要としない。原則としてARM v7以降のNEON対応SoCを載せた端末であれば、Delphi製アプリケーションを実行できる。モバイル開発  を行う場合、Professional版ではMobile Add-On Packを別途購入する必要がある。Professional版にもローカル接続専用ではあるがFireDACが追加された。Professional版でFireDACを使うにはFireDAC Client/Server Add-On Packを別途購入する必要がある。

搭載されるコンパイラはDCC32 , DCC64 , DCCOSX , DCCIOS32, DCCIOSARM, DCCAARM  の6つとなった。

Starter 版を除き、Delphi 7、2007、2009、2010、XE - XE4 のライセンスが付属する。

2014年3月1日にRAD StudioのFireMonkey専用開発環境である「Appmethod」が発表された。AppmethodにはObject Pascal  言語 / C++言語が含まれるが、VCLを用いたソースコードをコンパイルする事はできない。AppmethodはRAD Studio / Delphi / C++Builderとは異なり、プラットフォーム毎 / 年のサブスクリプション契約となっている。最初のリリースである「Appmethod 1.13」はXE5相当であり、以降RAD Studioの新版がリリースされるのとほぼ同時期にAppmethodもリリースされるようになった。Appmethodは同等バージョンのRAD Studio / Delphi / C++Builderとは同時にインストールできない。また、このAppmethodのリリースにより、ドキュメントなどで使われるDelphi の「言語の名称」が「Object Pascal言語」と記述される事が多くなった。

2.16. Delphi XE6
----------------

2014年4月16日に「Delphi XE6」が発表された。

Windows 8.1に対応。デザインおよびパフォーマンスを改善した「高品質リリース」。

Starter版を除き、Delphi 7、2007、2009、2010、XE - XE5のライセンスが付属する。

2.17. Delphi XE7
----------------

2014年9月2日に「Delphi XE7」が発表された。

OS X v10.10 、iOS 8アプリケーション開発に対応、FireMonkeyにFireUIと呼ばれる機能が追加された。これはフォームを各デバイス向けに最適化されたユーザインタフェースにカスタマイズするものである。開発環境をインストールするOSとしてWindows Vista以前はサポートされなくなり、PAServer実行環境としてのMac OS X v10.7  もサポートされなくなった。OS XおよびiOS向けアプリケーションの開発を行うのにSDKが必要となったため、コンパイルや構文チェックを行うだけでもMacの実機が必要となっている。また、このバージョン以降、BDE  はデフォルトでインストールされなくなった。

並列プログラミング ライブラリ  が追加されている。

Starter 版を除き、Delphi 7、2007、2009、2010、XE - XE6 のライセンスが付属する。

2.18. Delphi XE8
----------------

2015年4月7日に「Delphi XE8」が発表された。

作業実行支援ツール 「Castalia」 とパッケージマネージャ 「GetIt」 が統合された。にiOSデバイス用64ビットコンパイラも追加され、Android 5.x  アプリケーション開発に対応した。但しAndroid 2.3x  には非対応となった。

搭載されるコンパイラは DCC32 , DCC64 , DCCOSX , DCCIOS32, DCCIOSARM, DCCIOSARM64 , DCCAARM  の7つとなった。

Starter版を除き、Delphi 7、2007、2009、2010、XE - XE7のライセンスが付属する。

2.19. Delphi 10 Seattle
-----------------------

2015年9月1日に「Delphi 10 Seattle」が発表された。

Windows 10に対応。OS X v10.11 、iOS 9 アプリケーション開発に対応、Androidのサービスアプリケーションも作成可能となった。IDEが利用可能なメモリが倍増したため、大規模なプロジェクトをビルドしてもメモリ不足エラーが発生しにくくなっている。前バージョンまで続いた XE ナンバリングが廃止されている。

Starter版を除き、Delphi 7、2007、2009、2010、XE - XE8のライセンスが付属する。

2.20. Delphi 10.1 Berlin
------------------------

2016年4月20日に「Delphi 10.1 Berlin」が発表された。

Android 6.0、iOS 10、macOS v10.12  アプリケーション開発に対応。FireMonkeyのフォームデザイナも独立表示可能になった。クラスヘルパーの仕様変更が行われている。インストーラの改良により、インストールオプションによってはインストール時間が大幅に短縮されるようになった。このバージョンからUltimateエディションが廃止されている。

2016年8月22日以降、Starter Editionが無償で入手できるようになっている。2006年のTurbo Delphi Explorer以来、10年ぶりの無償版である。またStarter EditionはTurbo Explorerとは異なり、複数のパーソナリティが共存できるため、DelphiとC++Builderを同じ環境で利用する事が可能となっている。コンポーネントのインストールにも制限がない。

Starter版を除き、Delphi 7、2007、2009、2010、XE - XE8、10 Seattleのライセンスが付属する。

2.21. Delphi 10.2 Tokyo
-----------------------

2017年3月22日に「Delphi 10.2 Tokyo」が発表された。

Enterprise 以上の SKU に LLVM エンジンベースの Linux 64ビット コンパイラが追加された 。また、インストーラの改良により、インストール時間が大幅に短縮されるようになった。

搭載されるコンパイラは DCC32 , DCC64 , DCCOSX , DCCIOS32, DCCIOSARM, DCCIOSARM64 , DCCAARM , DCCLINUX64  の8つとなった。

2017年12月13日にリリースされた Release 2  において、Enterprise 以上の SKU で RAD Server の単一サイト/単一サーバー配置ライセンスが含まれるようになった。

2018年3月14日にリリースされた Release 3  において、Professional Edition にモバイルサポートが追加された。従来、Mobile Add-On Packとして別売されていたものが統合された形になる。

2018年7月19日に、従来の Professional Edition 相当を無償化した「Delphi Community Edition」がリリースされた。Windows 64bit, macOS, iOS, Android 向けの開発が可能となっている。無償版 Starter Edition とは異なり、「C++Builder Community Edition」と同時にインストールする事はできない。

Starter / Community 版を除き、Delphi 7、2007、2009、2010、XE - XE8、10 Seattle、10.1 Berlinのライセンスが付属する。

2.22. Delphi 10.3 Rio
---------------------

2018年11月22日に「Delphi 10.3 Rio」が発表された。同日、Community Edition も更新されている。

Starter Edition は廃止された。Professional Edition にあった別売の FireDAC Client/Server Add-on Pack も廃止され、フル機能の FireDAC を利用するためには Enterprise Edition 以上の SKU が必要となった。

型推論可能なインライン変数宣言が行えるようになっており、 procedure Test; var i: Integer; begin for i := 1 to 100 do writeln; end; 従来このような記述をしなければならなかったものが、 procedure Test; begin for var i := 1 to 100 do writeln; end; このように var ブロックを使わずにシンプルに書けるようになった。

Linux コンパイラ  では ARC  が廃止され、AnsiString / AnsiChar がサポートされるようになった。

2019年7月19日にリリースされた Release 2  において、LLVM エンジンベースの macOS 用 64bit コンパイラが追加された。また、Enterprise 以上の SKU で、Linuxデスクトップアプリを FireMonkey GUI で開発可能になる FMX Linux がバンドルされるようになった。

2019年11月21日にリリースされた Release 3  において、LLVM エンジンベースの Android 用 64bit コンパイラが追加された。また、Enterprise 以上の SKU で、データベース接続と同じように多様なエンタープライズアプリケーションに接続可能となる Enterprise Connectors がバンドルされるようになった。

搭載されるコンパイラは DCC32 , DCC64 , DCCOSX , DCCOSX64 , DCCIOS32, DCCIOSARM, DCCIOSARM64 , DCCAARM , DCCAARM64 , DCCLINUX64  の10種類となった。

Community 版を除き、Delphi 7、2007、2009、2010、XE - XE8、10 - 10.2 のライセンスが付属する。

2.23. Delphi 10.4 Sydney
------------------------

2020年5月27日に「Delphi 10.4 Sydney」が発表された。 Community Edition に関してはライセンス違反の利用が増加しているとの分析から、有償版を先行させるという判断がなされたため、同日にはリリースされなかった。

Language Server Protocol  に対応し、コード補完  の性能が向上した。モバイル開発用コンパイラにあった Automatic Reference Counting  は廃止された。10.3 Rio への実装が見送られていた カスタムマネージドレコードと呼ばれるコンストラクタとデストラクタを持つレコード型がこのバージョンで実装された。

macOS Catalina において32ビットアプリが動作しなくなったため、ターゲットプラットフォームから "macOS 32ビット" が選択できなくなっている。同様に "iOS デバイス 32ビット" も選択できない。ただし、これらのコマンドラインコンパイラ  は付属している。

2021年7月19日に 10.4.2 Community Edition がリリースされた。

Community 版を除き、Delphi 7、2007、2009、2010、XE - XE8、10 - 10.3 のライセンスが付属する。

2.24. Delphi 11 Alexandria
--------------------------

2021年9月10日に「Delphi 11 Alexandria」が発表された。

IDE が高 DPI に対応。フォームデザイナが VCL スタイルを使用してレンダリングできるようになった。Apple M1 Mac 用の 64bit コンパイラが追加され、前バージョンでサポート外になっていた macOS 32bit 用コンパイラ / iOSシミュレータ 32bit 用コンパイラ / iOSデバイス 32bit 用コンパイラが付属しなくなった。Visual Studio Code との連携機能が追加され、Delphi LSP 機能拡張が用意されている。

Delphi 2009 以降、Windows 用コンパイラが生成する実行形式ファイルの PE ヘッダーには OS Version / Subsystem Version ともに 5.0 が設定されていたが、11 Alexandria では 6.0 が設定されている。このため、11 Alexandria で生成された実行形式ファイルは Windows XP 以前の OS では動作しない。

2022年9月8日にリリースされた Release 2  において、iOSシミュレータ 64bit 用コンパイラが追加された。iOSシミュレータを動作させるためにはARM-64  搭載Macが必要。

搭載されるコンパイラは DCC32 , DCC64 , DCCOSX64 , DCCOSXARM64 , DCCIOSARM64 , DCCIOSSIMARM64 , DCCAARM , DCCAARM64 , DCCLINUX64  の9種類となった。

2023年2月28日に製品の品質向上を目的とした Release 3  がリリースされた。

2023年4月27日に 11.3 Community Edition がリリースされた。

Community 版を除き、Delphi 7、2007、2009、2010、XE - XE8、10 - 10.4 のライセンスが付属する。

2.25. その後のDelphi
----------------

今後、追加のARM用コンパイラやWASMコンパイラを盛り込む可能性があると、2020年のロードマップにてアナウンスされている。

3. Delphi Community Edition
---------------------------

10.2 Tokyo より完全無料版の Community Edition が提供されている。有料の Delphi Professional と同等の機能を持ち、従来の Win32 アプリケーションのみならず Windows 64bit, macOS, iOS, Android の開発が可能となっている。

3.1. 過去の無料版
-----------

Delphi 6 では Personal 版が無料で提供されていた。
Delphi 2006 Update2 相当の Turbo Delphi for Win32 Explorer / Turbo Delphi for .NET Explorer が無料で提供されていた。
Delphi 10.1 Berlin では Starter Edition が無料で提供されていた。
Delphi 10.2 Tokyo から Community Edition が無料で提供されている。

4. Delphi用コンポーネント
-----------------

DelphiのVCL / CLX / FMXは、コンポーネントと呼ばれるソフトウェア部品の集合で構成され、プログラマはこのコンポーネントを組み合わせて視覚的にアプリケーションを開発する方式となっているが、ユーザープログラマがコンポーネントを自由に作成して開発環境自体に組み込み、開発環境の拡張が可能となっている。

多くの有償／無償のコンポーネントが作成・公開され、開発環境を容易に拡張できるシステムはユーザープログラマからの支持も高いが、Delphiのバージョン毎に互換性が無い場合も多く、コンポーネントのソースコードが公開されている場合は使用している Delphiのバージョンに合わせて自分でコンポーネントのコードを修正する必要がある。

5. Delphiで開発されたアプリケーション
-----------------------

有償 / 無償の製品、シェアウェア、フリーウェアが多数作成されている。Delphi 自身も Delphi によって作られている。

バンクーバー冬季五輪のリングLEDはDelphiで制御されている。
欧州宇宙機関  の彗星探査機「ロゼッタ」のシミュレータ等はDelphiで作られている。
ミニチュアワンダーランドはDelphiで制御されている。かつてボーランドから提供されていたVCL Scannerというツールを使うと、DelphiまたはC++Builderで作成されたアプリケーションを調べられた。現在では実行ファイルをダウンロードできないが、Delphi 5 でコンパイル可能なソースコードが公開されているため、自前で実行ファイルを生成できる。

6. Embarcadero Prism
--------------------

Embarcadero Prismは、かつてエンバカデロ・テクノロジーズが.NET向けの新たなIDEとして販売していた製品である。以前はDelphi Prismと呼ばれていたが、XE2より名称からDelphiが外れEmbarcadero Prismとなった。

DelphiはPrism登場以前から、バージョン8以降において、Delphiの.NET開発用の環境  はWin32版のVCLと互換性を持つフレームワークVCL.NETと、マイクロソフトのフレームワークWindows Formsの両方をサポートしていた。しかし、Delphi 2007ではWindows Formsのサポートが打ち切られることとなった。

Delphi 2009よりエンバカデロ・テクノロジーズは方針転換を行い、それまでのDelphi for .NET  を置き換える決定を下した。こうして生まれたのがPrismである。誕生当初はDelphiの名を冠してはいたものの、実際はRem Objectsの言語コンパイラOxygene  とマイクロソフトのIDEを使用する全く新しい製品であった。PrismではそれまでのVCL.NETはサポートされず、フレームワークのサポートはWindows Formsのみとなっていた。

Delphi for Win32  とは異なり、Prismは更新が頻繁に行われた。単体製品版には初年度分の年間メンテナンス & サポートが付属しており、翌年度以降も契約更新が可能で、この契約期間中であればいつでも最新版を入手することができた。このため、バージョンアップ版の設定がなかった。また、一度契約が切れてしまうと新規での製品購入が必要であった。さらにRAD Studio版には初年度分の年間メンテナンス & サポートも付属していないため、購入年度から加入していないとメンテナンスリリースを入手できないので注意が必要であった。

Embarcadero Prism は XE3  が最終バージョンとなり、RAD Studio XE4 以降に含まれず、スタンドアロン製品としても提供されなくなった。サポートとメンテナンスのアップデートも2013年8月で終了している。エンバカデロ・テクノロジーズは、今後のPrismの最新版はRem Objectsから購入するようにアナウンスしている。なおRem ObjectsはPrismの名称を用いず、Oxygeneとする方針を打ち出している。

6.1. 互換性
--------

6.1.1. Delphi for .NET  との互換性
-----------------------------------------

PrismとDelphi for .NET のどちらも.NET開発環境ではあるが、VCL.NETを利用したDelphi for .NETのコードとはフレームワークとしての互換性がない。

6.1.2. Delphi for Win32  との互換性
--------------------------------------------

PrismにはDelphi for Win32とある程度の互換性を保つためのオプションが存在するものの、ほぼ互換性がない。「Oxidizer」と呼ばれるRem Objects製のコードコンバーターがあり、Delphi for Win32のコードをPrismへコンバートする事ができる。

6.2. 主要バージョン
------------

これらの他、メンテナンスリリースが存在する。

「Delphi Prism 2009」 は2008年12月2日に発表された。Prismの最初のバージョン。

「Delphi Prism 2010」 は2009年8月25日に発表された。クロスプラットフォーム開発機能により、Linux用のアプリケーション開発をサポート。

「Delphi Prism 2011」 は2010年6月3日に発表された。クロスプラットフォーム開発機能がさらに拡張され、Mac OS X、iOS向けのアプリケーション開発をサポート。

「Delphi Prism XE」 は2010年9月2日に発表された。Delphi Prism 2009、2010、2011 のライセンスが付属する。

「Embacadero Prism XE2」 は2011年9月1日に発表された。Delphi Prism 2009、2010、2011、XEのライセンスが付属する。

「Embacadero Prism XE3」 は2012年9月4日に「Embarcadero RAD Studio XE3」の一部として発表された。Delphi / Embacadero Prism 2009、2010、2011、XE、XE2のライセンスが付属する。最後のメジャーリリースとなった。

7. 脚注
-----

7.1. 注釈
-------

7.2. 出典
-------

8. 関連項目
-------

Appmethod
C#
C++Builder
Free Pascal
Kylix
Object Pascal
Pascal
Rapid Application Development
RAD Studio
Turbo C
Turbo Pascal
アンダース・ヘルスバーグ
エンバカデロ・テクノロジーズ
コードギア
ボーランド

9. 外部リンク
--------

[1]
[2] 公式サイト
[3] RAD Studio のオンライン ヘルプ
[4]
[5] Help and reference for the fundamentals of the Delphi