はじめに
『Delphi 8』 についての概要です。
概要
製品概要です。
項目 | 説明 |
---|---|
製品名 | Delphi 8 |
コードネーム | Octane |
発売年 | 2003 |
発売元 | Borland Software Corporation |
ビルドバージョン | 8.0 |
コンパイラバージョン | 16.0 |
BDS バージョン | 2.0 |
サポートプラットフォーム | Windows (.NET) |
前バージョンとの違い
- .NET Framework 用 (CIL) コンパイラとなった (Win32 API ベースではない)
- IDE が刷新された (Galileo IDE)
- デスクトップレイアウトで
Classic Undocked
を選ぶ事で旧来のような分離型のレイアウトにする事が可能 - [ツール | オプション] でフォームデザイナの埋め込みを解除すると旧来のような分離型のフォームデザイナを使う事ができる
- コンポーネントアイコンに 16×16 / 24×24 / 32×32 が使えるようになった
- ソースファイルを UTF-8 で保存する事が可能になった
- Windows フォームアプリケーション (Windows Forms) と VCL フォームアプリケーション (VCL.NET: VCL を Windows Forms 上に移植) 対応のフォームデザイナ
- リファクタリングができるようになった
- ユニット名前空間が使えるようになった
- 拡張識別子が使えるようになった。例えば
識別子.予約語と同じ名前
は許容されるようになった - 型 (クラス) のネストが可能になった
- カスタム属性がサポートされるようになった
- スタティックなクラスデータ (クラスプロパティなど)
- 値型のサポート
- 高度なレコード型 (Advanced Record) がサポートされた
- sealed クラス
- final メソッド
- 可視性指定子 strict protected と strict private が使えるようになった
- BDP (Borland Data Provider) for ADO.NET
- BDE.NET
- dbExpress.NET
- object 型はない
- CLX フォームアプリケーションはサポートされない
- XML サポートはない
- WebBroker は使えない
- 『IntraWeb for .NET』は付属しない
- レポートツールとして『RaveReport』が使える
- 何もかもが違う!!
その他
- 初の .NET Framework 用 Delphi
- Galileo IDE を採用した最初の Delphi
- コマンドラインコンパイラは
DCCIL.EXE
- BDS (Borland Developer Studio) バージョンが 2.0 になっているが、1.0 は『C# Builder』
- Win32 開発用に『Delphi 7.1』が付属する
- ガリレオ IDE の拡張用に Delphi 8 の Win32 版コンパイラ (
DCC32.EXE
) が用意された 1 - 従来の Delphi は Windows (Win32) のコントロールを VCL (for Win32) としてラッピングしたものだった。.NET Framework においては Windows Forms がネイティブであり、VCL.NET は Windows Forms 上に Win32 のコントロールを模倣したものなので、これはラッパーのラッパーという事になる
- IDE 環境設定のレジストリエントリは
HKEY_CURRENT_USER\Software\Borland
にある - レジストリを変更する事によって、デフォルトのファイルエンコードを UTF-8 に変更可能
- インストールに .NET Framework 1.1 が必要になった
- .NET Framework 1.1 Service Pack 1 をインストールすると動作不良を起こす
画像は『Delphi 2006 for .NET』のものです 2。
.NET Framework 1.1 Service Pack 適用時の問題
.NET Framework 1.1 Service Pack 適用時の問題の公式な解決方法は SP をアンインストールして製品付属の無印をインストールし直す事だったと思います。
- .NET Framework 1.1 Service Pack 適用時の問題について (Internet Archive: borland.co.jp)
- Shotgun fix for .NET 1.1 SP1... (Internet Archive: The Oracle at Delphi)
次に
ついでなので、.NET framework 版 Delphi の系譜についてすべて列挙します。
Delphi 2005 for .NET
『Delphi 2005』付属の .NET コンパイラ。
項目 | 説明 |
---|---|
製品名 | Delphi 2005 for .NET |
発売年 | 2004 |
発売元 | Borland Software Corporation |
ビルドバージョン | 9.0 |
コンパイラバージョン | 17.0 |
BDS バージョン | 3.0 |
サポートプラットフォーム | Windows (.NET) |
『Delphi 2005』は
- Delphi for Win32
- Delphi for .NET
- C# Builder
がセットになった製品です。
前バージョンとの違い
- 多次元動的配列
その他
- 『Delphi 2005』は『Borland Developer Studio 2005』という名前にすべきだったと思います。スイート製品に既存の単体製品の名前を付けたらダメでしょ!3
Delphi 2006 for .NET / Turbo Delphi for .NET
『Borland Developer Studio 2006』付属の .NET コンパイラと、単体製品である『Turbo Delphi for .NET』です。
項目 | 説明 |
---|---|
製品名 | Delphi 2006 for .NET / Turbo Delphi .NET |
発売年 | 2005 |
発売元 | Borland Software Corporation |
ビルドバージョン | 10.0 |
コンパイラバージョン | 18.0 |
BDS バージョン | 4.0 |
サポートプラットフォーム | Windows (.NET) |
『Borland Developer Studio 2006』は
- Delphi for Win32
- Delphi for .NET
- C# Builder
- C++ Builder
がセットになった製品です。これを単体製品としてバラしたのが
- Turbo Delphi for Win32
- Turbo Delphi for .NET
- Turbo C#
- Turbo C++
です。
前バージョンとの違い
- 特になし (主にツール類の改良)
その他
- ある意味フル機能で使える最後の Delphi for .NET
- .NET Compact Framework の開発を無理矢理行う方法がある
Delphi 2007 for .NET
『CodeGear RAD Studio 2007』付属の .NET コンパイラ。単体製品はない。
項目 | 説明 |
---|---|
製品名 | Delphi 2007 for .NET |
発売年 | 2007 |
発売元 | CodeGear |
ビルドバージョン | 11.0 |
コンパイラバージョン | 19.0 |
BDS バージョン | 5.0 |
サポートプラットフォーム | Windows (.NET) |
『CodeGear RAD Studio 2007』は
- Delphi for Win32
- Delphi for .NET
- C++ Builder
がセットになった製品です。
前バージョンとの違い
- .NET Framework 2.0 対応
- Windows Forms のサポートが打ち切られた
- ジェネリックス対応 (Delphi 2007 for Win32 の方は未対応)
- 任意の型の「空の値」または「ゼロ値」または「ヌル値」を返すジェネリック型関数
Default()
が使えるようになった
その他
- 最後の Delphi for .NET
- Windows Forms のサポートがないため、前バージョンの完全な上位互換ではない
- 『RAD Studio XE』以降で貰える旧バージョンの『RAD Studio 2007』には『Delphi 2007 for .NET』は含まれていない
旧バージョンに『Delphi 2007 for .NET』が含まれない理由は、Embarcadero によると、
「Delphi for .NET は旧製品であり、古い Delphi for .NET の使用は推奨していないため、この製品は無償の旧バージョンライセンスには含めていません。」
との事。
Delphi Prism
RemObjects Software 社の『Oxygene』(古い名前は『Chrome』) が Embarcadero に OEM 供給されたのが『Delphi Prism』です。
『Delphi Prism』は『Delphi for .NET』とは互換性がありません。.NET 向け Object Pascal の別実装と考えるべきでしょう。
- RAD Studio 2009 ~ XE3 にバンドルされた
- 単体製品もあった
- IDE としては Visual Studio (Shell) が使われる
- 『RAD Studio XE』以降で貰える旧バージョンの『RAD Studio 2009 ~ XE3』には『Delphi Prism』は含まれていない
- .NET Framework 3.0 以降にも対応している
- 『Oxygene』や『Oxygene』が含まれるスイート『Elements』は現在でも販売されている
おわりに
Delphi 8 (for .NET) に関してはとにかく情報がありません。私自身、『Delphi 8』はスキップしてしまったので、Delphi for .NET に関する情報は主に『Delphi 2006 for .NET』から得ています。
現在の Windows 環境へのインストールは困難です。
『Delphi 8 for .NET』は Microsoft に騙されて (?) 作っちゃった製品という感は否めないのですが、後の Delphi (for Win32) 製品にも導入された機能が先行して実装されていたりして、今思えば意欲的な製品ではありますね。境遇としては『Turbo Pascal for the Mac』に近いのかも。
Pacal には P-code
という中間言語にコンパイルする処理系がありましたから、ある意味先祖返りと言えなくもないですね。
See also:
- .NET 完全対応で生まれ変わった Delphi 8 (@IT)
- Delphi 2006 で行う PocketPC アプリケーション開発 (Internet Archive: CDN)
- Delphi におけるジェネリックプログラミング (Qiita)
- Pascal-P シリーズについて (Qiita)
- Oxygene (programming language) (Wikipedia)
- Oxygene (RemObjects)
- "EditorLineEnds.ttr"を作成できません。プロセスはファイルにアクセスできません。別のプロセスが使用中です。エラーが発生する (Support Wiki)
-
IDE Integration pack for Delphi 8 や IDE Integration pack for C#Builder 1.0 に含まれている ↩
-
『Delphi 8』は唯一購入しなかった Delphi なので、VM 環境を持っていません。 ↩
-
後に『Delphi for PHP』という愚を犯します。 ↩