コンテンツにスキップ

Delphi

出典: フリー百科事典『ウィキペディア(Wikipedia)』
Delphi
開発元 Borland International (1-3)
Inprise Corporation (4、5)
Borland Software Corporation (6-Turbo)
CodeGear (2007、2009)
Embarcadero Technologies (2010 以降)
初版 1995年
最新版
RAD Studio 12 Athens / 2023年11月8日 (11か月前) (2023-11-08)[1]
対応OS Microsoft Windows 11[2]
対応言語 日本語英語フランス語ドイツ語
種別 統合開発環境
ライセンス プロプライエタリ・ライセンス
公式サイト www.embarcadero.com/jp/products/delphi
テンプレートを表示

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

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

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

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

本項では Delphi Prism として開発されていた 「Embacardero Prism(エンバカデロ プリズム)」 についても述べる。

概要

[編集]

DelphiはWindowsmacOSiOSAndroidLinux向けアプリケーションを開発するための統合開発環境 (IDE) である。

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

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

  • VCLは最初期のDelphiから存在するWindows専用のフレームワークであり、Windows APIおよびWindowsコントロール(UI部品)を抽象化したものである。
  • Object Pascal (Delphi) / C++ (C++Builder) 言語での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プログラミングでは、オブジェクトのイベントの処理をイベントハンドラー委譲 (delegation) するスタイルの設計パターンObserver パターン)を採用することが多い。このような場合、例えばJavaでは継承インターフェイスの実装)を使用するが、Delphiはメソッドポインタの機能によって委譲をサポートしている(メソッドポインタはのちにC#/VB.NETデリゲートにも引き継がれた)。

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

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

歴史

[編集]

名前の由来

[編集]

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

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

Delphi 1から5まで

[編集]

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

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

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

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

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

Delphi 4」(コードネーム: Allegro)は1998年に発売された[11]。NT サービスアプリケーションの開発、CORBAをサポート。

Delphi 5」(コードネーム: Argus)は1999年に発売された[12]ADO対応 (ADO Express)、COMオブジェクトコンポーネントラッパーを提供。

Delphi 6

[編集]

Delphi 6」(コードネーム: Iliad)は2001年7月9日に発表された。

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

Delphi 7 / 7.1

[編集]

Delphi 7」(コードネーム: Aurora)は2002年8月22日に発表された。

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

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

Delphi 8 for the Microsoft .NET Framework

[編集]

Delphi 8 for the Microsoft .NET Framework」(コードネーム: Octane)は2003年11月3日に発表された。

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

Delphi 2005

[編集]

Delphi 2005」(コードネーム: DiamondBack、内部バージョン: 9.0)は2004年11月4日に発表された。

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

Delphi 2006 / Turbo Delphi

[編集]

Borland Developer Studio 2006」(コードネーム: DeXter)は2005年11月24日に発表された。

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

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

Turbo Delphi」(内部バージョン: 10.0)は2006年9月6日(英語版は8月8日)に発表された。これは「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 Delphi Explorer / Turbo Delphi for .NET Explorer / Turbo C++ Explorer / Turbo C# Explorer) も提供された。Turboシリーズは他のパーソナリティ(言語)と同時にインストールする事はできず、「Borland Developer Studio 2006」とも共存できない。

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

Delphi 2007 / R2

[編集]

2007年2月21日に 「Delphi 2007 for Win32」(コードネーム: Spacely、内部バージョン: 11.0)が発表された。

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

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

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

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

Delphi 2009

[編集]

2008年8月26日に「Delphi 2009」(コードネーム: Tiburón、内部バージョン: 12.0)が発表された。

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

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

Delphi 2010

[編集]

2009年8月25日に「Delphi 2010」(コードネーム: Weaver、内部バージョン: 14.0)が発表された。内部バージョン13.0は忌み番のためスキップされた。

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

Delphi XE

[編集]

2010年9月2日に「Delphi XE」(コードネーム: Fulcrum、内部バージョン: 15.0)が発表された。

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][注釈 3][注釈 4]

Delphi XE2

[編集]

2011年9月1日に「Delphi XE2」(コードネーム: Pulsar、内部バージョン: 16.0)が発表された。

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

搭載されるコンパイラはDCC32 (Windows 32bit), DCC64 (Windows 64bit), DCCOSX (Mac OS X) の3つとなった(ツールチェイン用のFPCを除く)。

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

Delphi XE3

[編集]

2012年9月4日に「Delphi XE3」(コードネーム: WaterDragon、内部バージョン: 17.0)が発表された[16]

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

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

Delphi XE4

[編集]

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

搭載されるコンパイラは DCC32 (Windows 32bit), DCC64 (Windows 64bit), DCCOSX (OS X), DCCIOS32(iOSシミュレータ用), DCCIOSARM(iOSデバイス用)の5つとなった。

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

Delphi XE5

[編集]

2013年9月11日に「Delphi XE5」(コードネーム: Zephyr、内部バージョン: 19.0)が発表された[18]

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

搭載されるコンパイラはDCC32 (Windows 32bit), DCC64 (Windows 64bit), DCCOSX (OS X), DCCIOS32(iOSシミュレータ用), DCCIOSARM(iOSデバイス用), DCCAARM (Android) の6つとなった。

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

2014年3月1日RAD StudioのFireMonkey専用開発環境である「Appmethod」が発表された。AppmethodにはObject Pascal (Delphi) 言語 / 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言語」と記述される事が多くなった[19]

Delphi XE6

[編集]

2014年4月16日に「Delphi XE6」(コードネーム: Proteus、内部バージョン: 20.0)が発表された[20]

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

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

Delphi XE7

[編集]

2014年9月2日に「Delphi XE7」(コードネーム: Carpathia、内部バージョン: 21.0)が発表された[21]

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

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

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

Delphi XE8

[編集]

2015年4月7日に「Delphi XE8」(コードネーム: Elbrus、内部バージョン: 22.0)が発表された[22]

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

搭載されるコンパイラは DCC32 (Windows 32bit), DCC64 (Windows 64bit), DCCOSX (OS X), DCCIOS32(iOSシミュレータ用), DCCIOSARM(iOSデバイス用), DCCIOSARM64 (iOSデバイス用64ビット), DCCAARM (Android) の7つとなった。

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

Delphi 10 Seattle

[編集]

2015年9月1日に「Delphi 10 Seattle」(コードネーム: Aitana、内部バージョン: 23.0)が発表された[23]

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

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

Delphi 10.1 Berlin

[編集]

2016年4月20日に「Delphi 10.1 Berlin」(コードネーム: BigBen、内部バージョン: 24.0)が発表された[26]

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

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

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

Delphi 10.2 Tokyo

[編集]

2017年3月22日に「Delphi 10.2 Tokyo」(コードネーム: Godzilla、内部バージョン: 25.0)が発表された[28]

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

搭載されるコンパイラは DCC32 (Windows 32bit), DCC64 (Windows 64bit), DCCOSX (OS X), DCCIOS32(iOSシミュレータ用), DCCIOSARM(iOSデバイス用), DCCIOSARM64 (iOSデバイス用64ビット), DCCAARM (Android), DCCLINUX64 (Linux 64bit) の8つとなった。

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

2018年3月14日にリリースされた Release 3 (10.2.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のライセンスが付属する。

Delphi 10.3 Rio

[編集]

2018年11月22日に「Delphi 10.3 Rio」(コードネーム: Carnival、内部バージョン: 26.0)が発表された[29]。同日、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(i);
end;

従来このような記述をしなければならなかったものが、

procedure Test;
begin
  for var i := 1 to 100 do
    writeln(i);
end;

このように var ブロックを使わずにシンプルに書けるようになった。

Linux コンパイラ (DCCLINUX64) では ARC (自動参照カウント) が廃止され、AnsiString / AnsiChar がサポートされるようになった。

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

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

搭載されるコンパイラは DCC32 (Windows 32bit), DCC64 (Windows 64bit), DCCOSX (macOS 32bit), DCCOSX64 (macOS 64bit), DCCIOS32(iOSシミュレータ用), DCCIOSARM(iOSデバイス用), DCCIOSARM64 (iOSデバイス用64ビット), DCCAARM (Android), DCCAARM64 (Android 64bit), DCCLINUX64 (Linux 64bit) の10種類となった。

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

Delphi 10.4 Sydney

[編集]

2020年5月27日に「Delphi 10.4 Sydney」(コードネーム: Denali、内部バージョン: 27.0)が発表された[30]。 Community Edition に関してはライセンス違反の利用が増加しているとの分析から、有償版を先行させるという判断がなされたため[31]、同日にはリリースされなかった。

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

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

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

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

Delphi 11 Alexandria

[編集]

2021年9月10日に「Delphi 11 Alexandria」(コードネーム: Olympus、内部バージョン: 28.0)が発表された[33]

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 (11.2) において、iOSシミュレータ 64bit 用コンパイラが追加された。iOSシミュレータを動作させるためにはARM-64 (M1 または M2) 搭載Macが必要。

搭載されるコンパイラは DCC32 (Windows 32bit), DCC64 (Windows 64bit), DCCOSX64 (macOS Intel 64bit), DCCOSXARM64 (macOS Arm 64bit), DCCIOSARM64 (iOS デバイス 64bit), DCCIOSSIMARM64 (iOS シミュレータ 64bit), DCCAARM (Android 32bit), DCCAARM64 (Android 64bit), DCCLINUX64 (Linux 64bit) の9種類となった。

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

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

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

Delphi 12 Athens

[編集]

2023年11月8日に「Delphi 12 Athens」(コードネーム: Yukon、内部バージョン: 29.0)が発表された[35]

255 文字を超える文字列リテラルが使えるようになり、三重引用符で囲んだ複数行に渡る (改行を含む) 文字列リテラルが使えるようになった。デフォルトで浮動小数点例外が無効となっている。VCL は MDI のサポートが強化され、モダンな MDI アプリケーションを構築可能になっている。FireMonkey がサポートするすべてのプラットフォームに対して、Skia サポートが追加された。Android ターゲット API レベル 33 サポートも追加されている。

2024年4月5日にリリースされた Release 1 (12.1) において、Android ターゲット API レベル 34 サポートが追加された。

2024年7月30日に 12.1 Community Edition がリリースされた[36]

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

その後のDelphi

[編集]

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

Delphi Community Edition

[編集]

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

過去の無料版

[編集]
  • 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 が無料で提供されている。

Delphi用コンポーネント

[編集]

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

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

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

[編集]

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

かつてボーランドから提供されていたVCL Scannerというツールを使うと、DelphiまたはC++Builderで作成されたアプリケーションを調べられた。現在では実行ファイルをダウンロードできないが、Delphi 5 でコンパイル可能なソースコードが公開されている[45]ため、自前で実行ファイルを生成できる。

Embarcadero Prism

[編集]
Embarcadero Prism
開発元 コードギア(2009年)
エンバカデロ・テクノロジーズ(2010年以降)
初版 2009年
最新版
XE3 / 2012年9月4日
対応OS Windows
対応言語 日本語英語フランス語ドイツ語
種別 統合開発環境
ライセンス プロプライエタリ・ライセンス
公式サイト www.embarcadero.com/jp/products/prism
テンプレートを表示

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

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

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

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

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

互換性

[編集]

Delphi for .NET (Delphi.NET) との互換性

[編集]

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

Delphi for Win32 (Delphi Win32) との互換性

[編集]

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

主要バージョン

[編集]

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

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 のライセンスが付属する[注釈 2][注釈 3][注釈 4]

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のライセンスが付属する。最後のメジャーリリースとなった。

脚注

[編集]

注釈

[編集]
  1. ^ あくまで「Delphi にとっては」であり、同社の製品であるC#Builderが先に採用している。
  2. ^ a b アップグレードした場合、元のバージョンと同じバージョンのライセンスの重複取得はできない。
  3. ^ a b 旧バージョンライセンスの取得は、購入180日以内に行う必要がある。
  4. ^ a b アカデミック版以外のRAD Studioでは、Delphi、Delphi Prismに含まれる旧バージョンライセンスの他、C++Builder 6、2007、2009、2010 のライセンスも含まれる。
  5. ^ ちなみにFireMonkeyという名前は2016年丙申 (ひのえさる) に由来している。

出典

[編集]
  1. ^ 『RAD Studio 12 Athens』の提供開始” (2023年11月8日). 2023年11月8日閲覧。
  2. ^ RAD Studio: 動作環境 - エンバカデロ・テクノロジーズ
  3. ^ エンバカデロ+アイデラの件
  4. ^ Borland is awarded a patent for its Two-Way-Tools method
  5. ^ United States Patent: 6185728
  6. ^ Intersimone, David. “Borland History: Why the name "Delphi?"”. 2013年1月7日閲覧。
  7. ^ Historic Delphi 1 Client/Server Install ISO”. Embarcadero Technologies. 2020年2月15日閲覧。
  8. ^ ボーランドが「Delphi 2.0J」を6月24日に発売”. PC Watch (1996年5月16日). 2012年5月1日閲覧。
  9. ^ ボーランドが32bitアプリケーション開発ツール「Delphi3日本語版」を発表”. PC Watch (1997年5月15日). 2015年11月29日閲覧。
  10. ^ Borland 時代のクロ歴史”. 2018年12月29日閲覧。
  11. ^ インプライズ、Windows 98対応のDelphi 4”. PC Watch (1998年8月17日). 2015年11月29日閲覧。
  12. ^ インプライズ、統合環境を備えた開発ツール『Borland Delphi 5』日本語版を発表”. ASCII.jp (1999年8月17日). 2015年11月29日閲覧。
  13. ^ 21333 IDE Integration pack for Delphi 8
  14. ^ Supported Versions
  15. ^ Delphi 2010 および C++Builder 2010 の新機能 (Embarcadero DocWiki)”. 2015年11月28日閲覧。[リンク切れ]
  16. ^ エンバカデロ、Windows 8/Mountain Lionに対応したビジュアル開発環境最新版、Delphi® XE3とC++Builder® XE3を発表”. 2015年9月6日閲覧。
  17. ^ エンバカデロ、iPhone/iPadアプリのネイティブ開発を実現したマルチデバイス開発ツールRAD Studio XE4を世界同時発表”. 2015年9月6日閲覧。
  18. ^ エンバカデロ、AndroidおよびiOS向けネイティブ開発をサポートしたRAD Studio XE5を本日より販売開始”. 2015年9月6日閲覧。
  19. ^ Delphi生誕20周年、おめでとうございます。言語名は最近になって「Delphi言語」から「Object Pascal」に戻ったらしい - Publickey
  20. ^ エンバカデロ、デスクトップからモバイル、ウェアラブルに対応したビジュアル開発環境「RAD Studio XE6」を発表”. 2015年9月6日閲覧。
  21. ^ エンバカデロ、Windows開発をモバイル、IoT対応に拡張するビジュアル開発環境「RAD Studio XE7」を発表”. 2015年9月6日閲覧。
  22. ^ エンバカデロ、マルチデバイス ネイティブ開発環境の新バージョン「RAD Studio XE8」を発表”. 2015年9月6日閲覧。
  23. ^ エンバカデロ、Windows 10対応のマルチデバイスネイティブ開発環境の新バージョン「RAD Studio 10 Seattle」を発表”. 2016年5月7日閲覧。
  24. ^ 新機能 - RAD Studio "IDE"
  25. ^ RAD Studio XE7での「メモリ不足エラー」について
  26. ^ エンバカデロ、マルチデバイス向けビジュアル開発ツールの新リリース「RAD Studio 10.1 Berlin」を本日より販売開始”. 2016年5月7日閲覧。[リンク切れ]
  27. ^ DELPHI BOOT CAMP / DELPHI STARTER EDITION 無料! [JAPAN]”. 2016年8月26日閲覧。[リンク切れ]
  28. ^ RAD Studio 10.2 is here - Get Delphi Linux Server Support today!”. 2017年3月23日閲覧。
  29. ^ エンバカデロ、RAD Studio 10.3を11月22日から提供開始  ~Webアプリ開発のSenchaとの連携性アップや最新OSへの対応強化~”. 2018年11月22日閲覧。
  30. ^ エンバカデロ、RAD Studio 10.4 Sydneyを提供開始 4K対応のモダンUI開発やLLDBベースの新しいデバッガ搭載など 新機能追加”. 2020年5月28日閲覧。
  31. ^ Embarcadero、「RAD Studio 10.4 Sydney」を公開 ~無償版「Delphi」「C++Builder」は延期”. 2021年3月27日閲覧。
  32. ^ Delphi & C++Builder FREE Community Editions Updated to Version 10.4.2 Are Now Available!”. 2021年7月20日閲覧。
  33. ^ エンバカデロ、Windows 11やApple M1に対応した 新バージョン『RAD Studio 11 Alexandria』提供開始”. 2021年9月11日閲覧。
  34. ^ Delphi 11 and C++Builder 11 Community Editions Released!”. 2023年4月27日閲覧。
  35. ^ 『RAD Studio 12 Athens』の提供開始”. 2023年11月8日閲覧。
  36. ^ Delphi 12 Community Edition / C++Builder 12 Community Edition リリース!”. 2024年7月30日閲覧。
  37. ^ RAD Studio 2020年11月付ロードマップ
  38. ^ Delphi - Community Edition”. Embarcadero Technologies. 2019年1月15日閲覧。
  39. ^ https://www.embarcadero.com/jp/our-customers/case-studies
  40. ^ Famous software made with Delphi | Jon L. Aasenden
  41. ^ Good Quality Applications Built With Delphi | Delphi Programming | Fandom
  42. ^ http://blog.marcocantu.com/blog/olympic_rings_delphi.html
  43. ^ https://community.embarcadero.com/blogs/entry/delphi-s-involvement-with-the-esa-rosetta-comet-spacecraft-project-1
  44. ^ https://www.embarcadero.com/jp/case-study/miniatur-wunderland-case-study
  45. ^ http://cc.embarcadero.com/item/23078
  46. ^ RAD Studio XE4 Q&A - 「旧バージョンに含まれていて RAD Studio XE4 には含まれていない製品はありますか?」参照。
  47. ^ From Prism to Oxygene
  48. ^ http://docs.elementscompiler.com/Tools/Oxidizer/

関連項目

[編集]

外部リンク

[編集]