Delphi Prism 機能評価ガイド

By: Tomohiro Takahashi

Abstract: Delphi Prismの機能評価の際には、是非この「Delphi Prism 評価ガイド」をご活用ください。

    はじめに

Delphi Prismを評価・検討していただきまして、ありがとうございます。製品を評価・検討していただく際、その性能、機能および特長を深く知っていただく上でこのガイドを参考にしてください。Delphi Prismは全く新しい製品ですので、このガイドを利用することで製品に親しんでいただけると思います。

    Delphi Prismの概要

Delphi Prismは、.NET 3.5 Frameworkに対応した高機能かつ強力な開発ツールです。.NET Frameworkの全機能を利用できる強力なObject Pascal言語および、優れた統合開発環境(IDE)を搭載したDelphi Prismは、最良な.NET開発ソリューションです。Delphi Prism開発者は、ASP.NET、Windows Forms、Windows Presentation Foundation(WPF)に対応するアプリケーションを設計・配布することが可能です。さらにDelphi Prismでは、配布されたアプリケーションが、LinuxやMacのMonoプラットフォームを含むあらゆるCommon Language Runtime(CLR)上で動作することにフォーカスしています。

    システムの最小要件

Delphi Prismは、以下のシステム要件を必要とします:

    ハードウェア要件

  • 最小: 1.6 GHz の CPU、384 MB の RAM、1024x768 のディスプレイ、5400 rpm のハード ディスク
  • 推奨: 2.2 GHz 以上の CPU、1024 MB 以上の RAM、1280x1024 のディスプレイ、7200 rpm 以上のハード ディスク
    • Windows Vista: 2.4 GHz の CPU、768 MB の RAM
  • システムドライブに 1 GB の利用可能な容量が必要
  • インストールドライブに 2 GB の利用可能な容量が必要(.NET Framework と SDK の容量を含む)
  • マウスや互換のポインティングデバイス

    サポート対象のオペレーティング システム

  • Windows XP Service Pack 2 以上
  • Windows Server 2003 Service Pack 1 以上
  • Windows Server 2003 R2 以上
  • Windows Vista
  • Windows Server 2008

Delphi Prismは、32bit版および64bit版のOS上で動作します。

    インストール

Delphi Prismのインストーラは、ESD(Electronic Software Distribution)で購入された場合はWebサイトからダウンロードします。別途、RAD Studioとしてのメディアキットもご用意しております。

セットアッププログラムは製品の全機能をインストールします。市販されているVisual Studio 2008が既にPCにインストール済みの場合は、Delphi PrismはVisual Studio 2008に統合されます(Express Editionには統合されません)。Visual Studio 2008がインストールされていない場合には、Delphi Prismは先にVisual Studio Shellをインストールした後、そのShellへ統合されます。

    エディション

Delphi Prismには、必要とする機能に合わせて2つのエディション「Professional Edition」「Enterprise Edition」をご用意しております。

    Professional Edition

Delphi Prism Professional Editionは、データベースへのローカルアクセス機能を含む、汎用的な機能を必要とする開発者向けの.NET開発ソリューションです。Professional Editionには、IDEの全機能、Delphi Prism言語、dbExpress for ADO.NETを使用したInterBase/Blackfish SQLへのローカルアクセス機能が含まれます。さらにProfessional Editionは、InterBase/Blackfish SQLに対応したデータベースに依存しないASP.NETプロバイダモデル実装も搭載しています。

Professional Editionは、独立系ソフトウェアベンダ(ISV)、データベースへのリモートアクセスを必要としない開発者、汎用的なWindowsアプリケーションやユーティリティを作成される開発者に適した製品です。

    Enterprise Edition

Delphi Prism Enterprise Editionは、dbExpressを使用してInterBase/Blackfish SQLにリモートアクセスする必要がある開発者向けの製品です。さらにEnterprise Editionでは、Delphi 2009(RAD Studio 2009)のDataSnapで構築された多層型サーバーに接続するクライアントを開発することも可能です。

Delphi Prismは、CodeGear RAD Studio 2009 の Professional Edition、Enterprise Edition、および Architect Edition の一部としても提供されます。

    ローカライズ版

Delphi Prismには、4つのローカライズ版(英語版/フランス語版/ドイツ語版/日本語版)が提供されます。開発者は、4つの中から好きな言語を選んでインストールすることができます。

    Delphi Prismの主な機能

    マルチプラットフォームのCLRをサポート

Delphi Prismの主要な機能のひとつとして、Mono for LinuxやMono for the Macを含むあらゆるCLRをサポートしていることが挙げられます。Delphi Prismのコンパイラは、Mac OS XおよびLinux向けのMono上で動作可能なマネージドコードアプリケーションです。さらにコンパイラは、Intermediate Language(IL)に完全に準拠したアセンブリを生成しますので、生成されたアセンブリはCommon Language Runtime(CLR)が動作するあらゆるOSで実行可能です。

Delphi Prismは、Windows/Mac OS X/Linux向けのMonoプロジェクトに対応したプロジェクトテンプレートを搭載しています。

Hide image
prism_mono

図1 - 「新しいプロジェクト」ダイアログにMonoアプリケーション開発用のテンプレートを表示

Delphi PrismのアプリケーションをMonoプラットフォーム上で実行する方法についてもっと詳しく知りたい場合は、CodeGear Developer Networkの記事「Using Mono and Delphi Prism」を参照してください。

Delphi Prismには「Mono for Windows 2.0.1」が含まれており、必要に応じてインストールできます。

    多種多様なデータベースへのアクセス

Delphi Prismは、ADO.NETでの開発に対応した強力なフレームワーク「dbExpress 4」を搭載しています。これにより.NET開発者は、バックエンドの特定のデータベースに縛られることなく、1つのフレームワークで複数のデータベースにアクセスすることができます。現時点で提供されるdbExpressのバージョンにはInterBaseおよびBlackfish SQLをサポートしていますが、将来、より多くのデータベースサポートを追加する予定です。

Hide image
Click to see full-sized image

図2 - InterBaseおよびBlackfish™ SQLをサポートしたVisual Studioのサーバー エクスプローラ

    データベースに依存しないASP.NET開発

Delphi PrismにはdbExpressベースのASP.NETプロバイダモデル実装も含まれます。これによりDelphi Prism開発者は、dbExpressを使用して汎用的にデータベースにアクセスできますし、ASP.NETのロール/プロファイル/メンバシップ用にdbExpressベースのデータベースを使用することもできます。

    DataSnapによる多層システムのクライアント開発

Delphi PrismにはDataSnap向けのADO.NETドライバも含まれます。DataSnapとは、エンバカデロが開発したdbExpressベースの強力な多層システム開発用フレームワークです。Delphi 2009(RAD Studio 2009)を使うことで、開発者はあらゆるバックエンドデータベースへの「ゲートキーパー的なアクセス」を中間層で提供するサーバーアプリケーションを構築できます。このサーバーは、データベースへの直接接続およひデータへのアクセスのほか、サーバーメソッドを使用して汎用的なメソッド呼び出し機能を提供することもできます。

サーバーメソッドは、サーバーアプリケーション内のクラスによって提供される特殊なメソッドです。開発者は、dbExpressの型システムを利用することにより、サーバーメソッドを簡単にDataSnapクライアントに公開することができます。Delphi Prismは、DataSnapサーバーをADO.NETへインポートする機能を搭載しています。Datasetを返すサーバーメソッドはテーブルとしてアクセスされ、またサーバーメソッドはストアドプロシージャとしてもアクセスできます。これにより開発者は、Delphi for WindowsでストアドプロシージャをコーディングしてDelphi Prismからアクセスすることが簡単に行えます。

Delphi Prismのロードマップでは、将来、Delphi Prismを用いてDataSnapサーバーを構築できるようになることを予定しています。

    言語機能

Delphi Prism言語は、.NET 3.5 Frameworkに完全対応した強力な言語です。Delphi Prism言語は、LINQ、無名メソッド、デリゲート、ジェネリクスなどを含め、.NETが要求する全ての言語イディオムをサポートしています。Delphi PrismはObject Pascalを起源に持つため、Delphi開発者にとってとても馴染み易い文法を採用しています。Delphi for Win32で記述された既存のDelphiコードを移行することも容易です。

Delphi Prism言語は、.NET開発者が望む全てのモダンな言語機能のほか、追加の機能を搭載しています。Delphi Prismのパワーを示す言語機能のいくつかを以下で解説します:

    ジェネリクス(Generics)

開発者はジェネリクスを使用すれば、特定の型を指定することなく、ある型を参照するコードを記述することが可能になります。パラメータ化された型とも呼ばれるジェネリクスは、特定の型に縛られずに処理を行える、汎用的で「ジェネリック」なクラスを記述することを可能にします。ジェネリクスの利用形態としてリストがあり、このリストクラスを記述する時点ではリストの中に格納されるアイテムの型を特定する必要はありません。

ジェネリッククラスのメンバがジェネリックな型を参照している場合、それらは実行時にJust-In-Timeコンパイラにより実際の型を参照するようになります。Microsoft .NET Frameworkには、List<T>型のようないくつかの汎用的なクラスが予め組み込まれています。List<T>型は、T型の参照を複数個格納できる動的なリスト構造で、Tにはあらゆる型を指定できます。例えば、Tlist<T>は開発者が望む全ての型に対する「型安全なリスト」となるでしょう。

ジェネリッククラスは以下のようになります:

type
  MyList<T> = class(System.Object, System.Collections.Generics.IEnumerable<T>)
    where T is class;
  private
    fData: array of T;
    fCount: Integer;
  public
   ...

このクラスを利用するには、型宣言においてジェネリックな型を定義する必要があります:

var
  Data: MyList<String>;
begin
  Data := new MyList<String>;
  Data.Add('Test');

ジェネリクスには、パラメータ化された型として特定の型を含めることも可能です。制約を使用すれば、ジェネリックな型が特定の機能(特定のインターフェースを実装しているとか、クラスなのかレコードなのか、パラメータを持たないコンストラクタがある)を持つことを保証できます。

type
  MyClass<T> = class(System.Object)
    where T has constructor, T is record;

    method Test<Y>(Left: T; Right: Y);
      where Y is class, Y is IEnumerable;
  end;

    クラスコントラクト(Class Contracts)

クラス不変条件(Class Invariants)

クラス不変条件とは、クラス宣言内に記述してある変数が特定の状態にあることを保証する条件式です。例えば、次のクラス宣言はSomeInteger変数が常に10より小さいことを要求しています。もしコード中でSomeInteger変数に10以上の値を代入した場合は、アサーション(表明)が発生します。

type
  TClassWithInvariant = class
  public
    SomeInteger: Integer;
  public invariants
    SomeInteger < 10;
  public
    procedure SetSomeIntegerGreaterThanTen;
  end;

Require/Ensure

クラスの定義では、メソッド本体の前にrequire部、およびメソッド本体の最後にensure部を追加できます。これらの場所ではコードが通常実行された場合に満たさなければならない「事前条件」「事後条件」を定義できます。条件として、メソッド実行の最初と最後で判定されるBooleanを表す条件式を記述します。

クラスコントラクトは一般的に、メソッドが要求する「入力パラメータ」「戻り値」「オブジェクトの状態」の妥当性を検証するために使用されます。もしクラスコントラクトが「破られた」場合には、アサーション(表明)が発生します。

method MyObject.DivideBy(aValue: Integer);
require
  aValue <> 0;
begin
  MyValue := MyValue/aValue;
end;

method MyObject.Add(aItem: ListItem);
require
  assigned(aItem);
begin
  InternalList.Add(aItem);
ensure
  Count = old Count +1;
End;

method MyObject.DoWork(aValue);
require
  Assigned(fMyWorker);
  fMyValue > 0;
  aValue > 0;
begin
  //... do the work here
ensure
  Assigned(fMyResult);
  fMyResult.Value >= 5;
end;

require/ensureの宣言にコロン(:)および文字列を追加することにより、出力されるメッセージをカスタマイズするこができます:

method MyObject.Add(aItem: ListItem);
require
  assigned(aItem) : 'List Item for MyObject cannot be nil';
begin
  InternalList.Add(aItem);
ensure
  Count = old Count +1 : 'MyObject: Count logic error';
End;

スコープ前置詞「old」は「ensure」部で使用し、ローカル変数およびパラメータの実行前の古い値を参照することができます。

コンパイラは、メソッド本体の実行に先だち、ローカル変数の値を保存するコードを追加します。「old」は文字列型およびValueTypeをサポートします。

メソッドコントラクトとクラス不変条件により、開発者は明示的・明確にコードの要件を宣言することができ、コードの品質を高め、設計通りに動作することを保証します。

    LINQ

LINQ(Language Integrated Query)とは、イテレート可能なデータ構造に対してSQL文に似たクエリーを直接コード中で実行できるようにした、強力で新しい言語イディオムです。単純な例として、以下のコードは年齢に応じてCustomerを選択するものです:

method MainForm.button10_Click(sender: System.Object; e: System.EventArgs);
var
  YoungCustomers: sequence of TCustomer;
begin
  YoungCustomers := from Customer in ListOfCustomers;
  if radioButton1.Checked then
  begin
    YoungCustomers := from Customer in YoungCustomers where Customer.Age < 30;
  end else
  begin
    YoungCustomers := from Customer in YoungCustomers where Customer.Age > 30;
  end;

  if checkBox2.Checked then
  begin
    YoungCustomers := from Customer in YoungCustomers order by Customer.Age;
  end;

  textBox4.Clear;
  for each Customer: TCustomer in YoungCustomers do
  begin
    TextBox4.Text := TextBox4.Text + String.Format('{0} {1} is {2} years old'#13#10, Customer.FirstName, Customer.LastName, Customer.Age);
  end;
end;

注目すべきは、新しいLINQ文を使用してCustomerのシーケンスから簡単にCustomerを選択して、YoungCustomersに代入している点です。

LINQは、Datesetやenumeratorをサポートするデータ構造に対して問い合せを行うことも可能です。

    プロパティ通知(Property Notifications)

プロパティ通知とは、あるプロパティの値が変更された時に、プロパティに対して通知を行う言語機能です。プロパティにnotifyを指定すると、そのクラスは暗黙的にSystem.ComponentModel.INotifyPropertyChangedインターフェースおよびSystem.ComponentModel.INotifyPropertyChangingインターフェースを実装したことになり、プロパティが変更されたときにインターフェースで定義されたイベントが呼び出されるようになります。

デフォルトではクラスで定義されたプロパティ名が渡されますが、notifyは、イベントに渡されるプロパティ名を変更できる文字列パラメータをサポートしています。

プロパティ通知は次のように宣言します:

type
  ValueClass = class
  public
    property Value: Integer; notify;
    property Name: string; notify 'ValueName';
  end;

プロパティ通知は次のように実装します:

var
  v: ValueClass;
begin
  v.PropertyChanged +=
    method (sender: Object; args: PropertyChangedEventArgs)
    begin
      MessageBox.Show(String.Format('Property changed: {0}', args.PropertyName));
  end;
end;

    並列プログラミング

    並列ループ (Parallel Loops)

.NET環境にMicrosoft PFX Frameworkがインストールされている場合には、並列ループは複数のコアやスレッドに割り当てられて実行されます。

for parallel i: Integer := 0 to 10 do ... // works

for parallel i: Integer := 1 to 49 step 7 do ... //works

    フューチャー(Futures)

フューチャーとは、並列コンピューティングを活用してマルチコアやマルチCPUのシステムで効率良く動作するアプリケーションを開発するために設計された、新しい言語概念です。futureは強く型付けされた変数で、計算が完了しているかもしれない、もしくは完了してないかもしれない変数を表しますが、必要になる時点では利用可能であることが保証されています。

次の擬似コードの断片を考えてみてください。バイナリツリーの合計値を計算しています:

method ThreeNode.Sum: Int32;
begin
  var l: Int32 := Left.Sum;
  var r: Int32 := Right.Sum;
  result r+l;
end;

コードでは、まず左側の部分木の合計値を計算し、その後右側の合計値を計算します。最後に2つの値を足し合わせます。"l" および "r" の値の計算には比較的長い時間がかかるかもしれませんが、"l"の値はメソッドの最終行までは実際には必要とされません。これはfutureにはうってつけの場面です:

method ThreeNode.Sum: Int32;
begin
  var l: future Int32 := async Left.Sum;
  var r: Int32 := Right.Sum;
  result r+l;
end;

前述したようにその場で"l"の値を計算する代わりに、"l"を future Int32 と定義しました。これにより、この変数は実際にはLeft.Sumの値を保持しないと宣言したことになりますが、将来のある時点では値を保持していることが保証されます。コードの最初の行は、実際には一瞬にうちに実行されてしまい、その後前述した変更されていない"r"を計算する行がそのまま実行されます。

    非同期メソッド

予約語 async で修飾されたメソッドは、別スレッドで実行されます。その実装はPFXフレームワークがインストールされているか否かで異なります。インストールされている場合は、非同期のブロックはPFXフレームワークによりタスクとして実行されますが、インストールされていない場合は、.NETのスレッドプールに追加されます。

asyncブロックを定義するには、ブロックの前に予約語asyncを追加します。以下はその例です:

async for i := 0 to 10 do begin

...
end;

より一般的には、ブロックを以下のように修飾します:

async begin

...
end;

非同期メソッドが値を返す場合には、その値はフューチャーになります。

    その他の言語機能

Delphi Prismには、全ての言語構造(オブジェクト, 配列, レコード, セット, 列挙型, case文, forループ 等)の他、拡張メソッド、無名メソッド、デリゲート、属性、クラス参照、インターフェース、ラムダ式、演算子オーバーロードのような追加の言語機能が搭載されています。

Delphi Prism言語の完全な仕様は、次のオンラインWikiを参照してください。

    統合開発環境(IDE)

Delphi Prismは、IDEとしてVisual Studio Shellに統合されます。これにより、Delphi Prism開発者はVisual Studio Shellの機能をフル活用できます。Delphi Prismがインストール済みのVisual Studioに統合された場合、Delphi PrismプロジェクトグループにはC#, VB.NETやその他の言語のコードを含めることが可能で、またそれらの言語のプロジェクトにDelphi Prismのコードを含めることも可能です。Delphi Prismは、Intellisense, Error Info, Code Snippets, Parameter Info, デバッグ機能などのVisual Studio IDEのパワーをフル活用することができます。Delphi Prismは、完全に統合可能な言語プラグインであり、.NET言語のエコシステムのれっきとした一員です。

    デザイナ

Delphi Prism開発者は、Winforms, ASP.NET, WPFの開発にデザイン機能をフル活用できます。市販されているVisual Studioに統合される場合は、Silverlightのデザイン機能をインストールすることができます。

    サードパーティ製コンポーネント

Delphi Prism開発者は、WinForms/ASP.NET/WPF/Silverlightに対応した様々なサードパーティ製コンポーネントをインストールして利用できます。Developer Express, Infragistics, TMS Softwareやその他の商用ベンダーのコンポーネントも全てDelphi Prismで利用可能です。他の.NET開発言語で記述されたオープンソースやフリーウェアのコンポーネントも利用可能です。つまり、Delphi Prism開発者はあらゆる.NETコンポーネントを利用できるのです。

    Visual Studioのエコシステム

Delphi Prism開発者は、様々なVisual Studioのプラグインやアドオンツールをインストールして利用することができます。例えば、MSBuildのactionはDelphi Prismからも利用可能です。さらに、特定の言語機能を要求しないVisual Studioのプラグインであれば、それらも全てDelphi Prism開発者が利用できます。Delphi Prismは、.NET CodeDOM のフル実装も提供しています。NUnit, NHibernateのようなライブラリや、その他の.NETプロジェクトも全てDelphi Prism開発者が利用できます。

Hide image
Intellisense

図3 - Delphi PrismはIntelliSenseをフルサポートしています

さらにDelphi Prismは、dbExpressデータベースフレームワークをサーバー エクスプローラに統合し、開発者がADO.NET用のdbExpressドライバにアクセスできるようになっています。Delphi Prismには、InterBaseおよびBlackfish SQL用のdbExpressドライバが搭載されていますが、今後のアップデートによりドライバが追加される予定です。

    ドキュメント

Delphi PrismのドキュメントはWikiベースで提供されています。 さらに、WikiのスナップショットがDelphi Prismに付属していますので、開発者は自身のシステムにコピーすることもできます。また、現時点のWikiのスナップショットを開発者自身で入手することも可能です。

ドキュメントがWikiベースであるため、ドキュメントはエンバカデロの従業員やコミュニティのメンバーにより、頻繁に更新され、継続的に強化されます。記事が追加もくしは追加され。サンプルも追加されます。つまり、継続的な改良と頻繁な更新によりダイナミックなドキュメントが可能になったのです。

    製品に付属するツール/お勧めのツール

    付属するツール

Delphi Prismにはサードパーティ製のツールや製品が数多く付属しています。

    InterBase Developer Edition

Delphi Prismには、エンバカデロのネイティブでクロスプラットフォーム対応のRDBMS「InterBase Developer Edition」が付属します。InterBase Developer Editionには、InterBaseを利用するアプリケーション開発を目的として、サーバーへの同時5接続が可能です。アプリケーションを配布する際には、エンバカデロから配布ライセンスを別途購入する必要があります。

InterBaseに関するより詳しい情報は、CodeGearのWebサイトでご覧頂けます。

    Blackfish™ SQL

Blackfish SQLは、高速かつ軽量、SQL-92準拠のトランザクションデータベースです。Blackfish SQLは、.NETまたはJava上で動作するフルマネージドなRDBMSです。Blackfish SQLは、少ないメモリ消費量(約1MB)でインプロセスまたはアウトプロセスで動作し、エンタープライズレベルのアプリケーションから組み込み向けのアプリケーションまであらゆるデータベースアプリケーションに必要とされる能力も兼ね備えており、配布や組み込みも容易です。

Delphi Prismには、Blackfish SQLの機能制限版「Blackfish SQL RAD Studio Edition」が同梱されています。RAD Studio Edition は、アプリケーションとともに無制限に配布することができます。Professional Editionは、1ユーザー/4コネクション(ローカル接続のみ)、512 MBデータベースサイズをサポートするBlackfish™ SQL対応アプリケーションを配布できます。Enterprise EditionおよびArchitect Editionは、5ユーザー/20コネクション、2 GBデータベースサイズをサポートするBlackfish™ SQL対応アプリケーションを配布できます。これらの制限が無いBlackfish SQL配布ライセンスを必要とする場合は、エンバカデロから購入することができます。

Blackfish SQLに関するより詳しい情報は、EmbarcaderoのWebサイトでご覧頂けます。

    Mono for Windows

Delphi PrismはデフォルトでMono for Windows 2.0.1 フレームワークをインストールします。開発者は、このフレームワーク用の新しいプロジェクトを作成することができます。Monoフレームワークに関するより詳しい情報は、MonoプロジェクトのWebサイトを参照してください。

    InstallAware Express Edition

一般的に開発者は、製品を配布するために高機能で強力なインストーラを必要とします。Delphi Prismには「InstallAware Express Edition」が付属しており、MSIベースのリッチなインストーラを作成することが可能です。InstallAwareの機能に関するより詳しい情報は、InstallAwareのWebサイトを参照してください。

    お勧めのツール

Delphi Prismには、ダウンロード可能な優れたツールが含まれます。それらはWikiの「Recommended Downloads」ページにまとめて紹介されています。

お勧めのツールには次のものが含まれます:

    DPack IDE Expert

DPackは、無償でダウンロード可能な、Visual Studio用ツールのコレクションです。これには、Delphi Prismの機能を強化する様々なVisual Studio用のエキスパート/ウィザード/プラグインが含まれており、Galileo IDE(例: Delphi 2009のIDE)を利用してきたDelphi開発者がすぐにVisual Studioに馴染めるようにしてくれます。番号付けされたしおりや、自動ソリューションバックアップ、Code Browser、DelphiのGalileo IDEの標準的なキーマッピングに合わせたキーバインディングなどの機能が含まれています。

より詳しい情報は、DPackのホームページを参照してください。

    RemObjects Internet Pack for .NET

RemObjects Internet Packは、.NETのソケットライブラリをベースに構築された、軽量で簡単に利用できるTCP/IPフレームワークです。

より詳しい情報は、Internet PackのWebサイトを参照してください。

    Developer Express “Sixty” DXCore Components

Developer Expressは、.NET開発者向けの無償かつフル機能のコンポーネント群(60個)を提供しています。

以下の2つのツールは、かつてDelphi for Win32ユーザーであったDelphi Prism開発者の方々には興味深いでしょう:

    ShineOn プロジェクト

ShineOnは、Delphi for Win32のRTLをDelphi Prism向けに実装したものです。Delphi開発者が既存のDelphiのコードをDelphi Prismに移行する作業のに活用することができます。

ShineOnプロジェクトに関するより詳しい情報は、Delphi Prism Wikiを参照してください。

    Oxidizer Code Converter

Oxidizerは、ShineOnとともに使用して、Delphi(Win32および.NET)のプロジェクトをDelphi Prism言語に移植する際に役立つ無償のツールです。Oxidizerはコマンドラインのツールで、Delphiの*.pasソースファイルを処理して、そのコードをDelphi Prism言語に対応するために必要とされる様々な変更を行ってくれます。

Oxidizer Code Converterに関するより詳しい情報は、Delphi Prism Wikiを参照してください。

    追加情報

前述したように、Delphi Prismの完全なドキュメントは以下でご覧になれます: http://prismwiki.codegear.com

このWikiには、“Crash Course” on learning Delphi Prismも含まれています。

CodeGear Developer NetworkのDelphi Prismエリアには、Delphi Prismに関するリンク、記事、ビデオなどの様々な情報が掲載されています。.





Server Response from: ETNASC03