プログラミング言語の歴史:Delphiは単なる言語ではありません

画像



Delphiは通常、Borlandが開発したObject Pascal言語に基づいたアプリケーション開発環境に関連付けられています。 この言語はオブジェクト指向拡張機能を備えたTurbo Pascalの後継であり、その歴史は、1970年にニクラウスワースによって作成された「純粋な」パスカルにまで遡ります。



その後、2002年に、ボーランドの開発者は公式にDelphi言語とObject Pascal言語の間に等号を付けました。



背景



開発者によると、元のパスカルは世界最速のコンパイラを備えていました。 さらに、プラットフォームに依存しないプログラムを作成する技術が最初に開発され、Javaなどの言語で広く使用されました。



ただし、その概念が当時の開発環境に適用できる場合、そのIDEはDOSオペレーティングシステムに基づいてのみ機能しました。



Windowsの出現により、このプラットフォーム用のソフトウェア開発環境を作成する必要がありました。 80年代および90年代初期のパーソナルWindowsコンピューターで最も人気のあったソリューションは、BorlandコンパイラーとIDE Turbo Pascalでした。 組み込みコンパイラーは、高いコンパイル速度と高品質のコードを提供しました(そのため、Turboプレフィックス)。 Turbo Pascalは、コードデバッグと豊富なサンプルも提供しました。 しばらくの間、これらすべての特性により、Turbo Pascalは標準言語のPascalになりました。



タイムチャレンジ



Windowsでは、グラフィカルインターフェイスは非常に迅速に開発され始めましたが、IDE Turbo Pascalは依然としてDOSに似たインターフェイスを使用していました。 徐々に、マイクロソフトはプログラミングの「視覚化」に向かう必要があることに気づきました。



シンプルなプログラムを作成するために、開発者は数ページのコードを書く必要がありました:メニューとウィンドウ、フォント、メモリのクリア、ボタンの描画などのためにコードのバルクブロックを登録する ただし、Windows GUIの利点は非常に強力だったため、オペレーティングシステムの開発をサポートする必要がありました。 マイクロソフトは、何らかの形で開発者の生活を楽にする必要があることを理解していました。 そのため、90年代に同社は、Windows用の新しいプログラミング言語と開発環境を作成するためのいくつかの並行プロジェクトを立ち上げました。 最初の兆候はVisual Basicでした。



画像



この点でパスカルの見通しは明るいとはほど遠い。 90年代半ばまでに、彼はすでにかなり劣悪な状態にありました。 ボーランドはそれを改良し始めましたが、すぐに明らかになりました。変更と追加は非常に深刻であるため、この作業の結果は新しいプログラミング言語と見なすことができます。 新しい言語のために、グラフィカルインターフェイスを備えたIDEが開発されました。 新しいプログラミング環境と言語は、まとめてDelphiと呼ばれます。



新しいシステム(Delphi)は、古代ギリシャの都市デルファイに敬意を表して名前を付けました。 名前が選ばれた理由は次のとおりです。Delphiの都市は、知恵の神の名前とアポロの芸術の守護神に関連付けられています。 伝説によると、アポロの主要な聖域はこの都市にありました。 彼のシビル女司祭は、彼らの運命を知りたいと願う人々に預言を発した。


「Delphiという名前は、ブレーンストーミングセッション中にDanny Thorpeによって提案されました。 システムの名前に製品がデータベースを操作する独自の能力を反映するようにしたかったので、少なくとも何かについて「Delphic Oracle」の組み合わせの場合、Delphiはこの分野でOracleのような名にふさわしい名前と最高のつながりを持ちましたデルファイのシステム設計研究グループの責任者であるチャック・ジャゼウスキーは言った。



Borland Delphiは、1993年末にロシアに登場し、すぐに大きな人気を獲得しました。



メジャーバージョン



画像



バージョン1は、16ビットWin16プラットフォームでの開発用に設計されました。 2番目のバージョンから、32ビットWin32プラットフォーム用のプログラムをコンパイルする機能が実装されました。



画像

Delphi 1



バージョン3では、多層データアクセステクノロジーのサポートが導入されました。これにより、情報処理方法(ビジネスルール)を中間リンクに転送することにより、スケーラブルなアプリケーション(データベースサーバーに比較的弱く依存)を作成できます。



画像

Delphi 3



Delphiの第6バージョンとともに、言語とライブラリの点で互換性のあるKylix環境は、Linuxオペレーティングシステム用のプログラムをコンパイルするように設計されました。



画像



バージョン8は、.NETプラットフォーム専用のバイトコードを生成できます。 これは、多言語アプリケーションの開発に焦点を合わせた最初の環境です(.NETプラットフォームのみ)。 後続のバージョン(以前のシリアル番号ではなく、リリース年で示される)により、Win32アプリケーションと.NETアプリケーションの両方を作成できました。



Delphi 2006では、標準の.NETクラスライブラリであるVCL for .NETを使用して.NET用のアプリケーションを作成できるようになりました。 この環境では、C#で.NETアプリケーションを作成し、C ++でWin32アプリケーションを作成することもできました。 Delphi 2006は、ECO(Enterprise Core Objects)バージョン3.0を使用してMDA(Model Driven Architecture)テクノロジーも実装しました。



彼らが戦ったもの



Delphiの開発プロセスは非常に単純化されています。 まず第一に、これはプログラム開発時間の80%を要するインターフェースの作成を指します。 必要なコンポーネントをWindowsウィンドウ(Delphiではフォームと呼ばれます)の表面にドラッグし、特別なツール(オブジェクトインスペクター)を使用してプロパティを調整するだけで十分です。 これを使用して、これらのコンポーネントのイベント(ボタンをクリックする、マウスでリスト内の項目を選択するなど)をその処理コードに関連付けることができます。



開発者は、強力なデバッグツール(プロセッサコマンドの段階的な実行まで)、便利な状況依存ヘルプシステム(Microsoft APIを含む)、およびプロジェクトのチームワークツールを自由に使用できました。



Microsoft IDLを使用せずにActiveXコンポーネントを作成し、Webサーバー(サーバー側のスクリプト)の機能を拡張し、HTML、XML、またはASPについてほとんど何も知らないことが可能になりました。



これで、データにアクセスするためにBorland DataBase Engine、ODBCドライバー、またはMicrosoft ADOを使用して、COMおよびCORBA、インターネット、およびイントラネットアプリケーションに基づいた分散アプリケーションを作成できます。



Delphiでは、開発者は独自のコンポーネントを作成し、OSXコンポーネントをインポートし、プロジェクトブランクを生成するプロジェクトテンプレートとウィザードを作成する機会を与えられました。 さらに、作成者は、他のアプリケーション(または外部プログラム)をDelphi IDEに接続するためのインターフェイスを開発者に提供しました。



変更



Delphiの新しいバージョンは毎年リリースされましたが、5回目以降は何かが起こったようです...後に、DelphiのようなLinux向けプログラミング言語が開発され、Delphiの新しいバージョンの作業と並行して行われました。 新製品はKylixと呼ばれます。 Delphiは、.NETプラットフォーム用のC#言語の概念の作成に大きな影響を与えました。 その要素と概念的なソリューションの多くはC#に含まれています。 その理由の1つは、Delphiの主要な開発者の1人であるAnders HalesbergがBorland Ltdから移行したことです。 Microsoft Corp.



2006年3月、ボーランドは、この分野の不採算性により、JBuilder、Delphi、およびC ++ Builder統合開発環境のさらなる開発を中止することを決定しました。 会社のIDEセクターの販売が計画されました。 フリーソフトウェアサポーターのグループは、開発環境とコンパイラの権利をボーランドから購入するための募金活動を組織しました。 ただし、その年の11月に、IDEビジネスの販売を放棄することが決定されました。



その後、Borlandが財政的に完全に管理していた新しい会社CodeGearがIDE製品の開発を開始しました。



2007年3月、CodeGearは更新されたDelphi 2007 for Win32製品ラインと真新しいDelphi 2007 for PHP製品のリリースでユーザーを喜ばせました。



画像



2008年8月25日、CodeGearの新しい所有者であるEmbarcaderoは、Delphi for Win32 2009のプレスリリースを公開しました。このバージョンでは、多くの言語レベルの革新が登場しました。



•デフォルトでは、言語のすべての部分、VCLおよびRTLで完全なUnicodeサポート。

•すべてのWindows API関数への呼び出しをUnicode類似物に置き換えます(つまり、MessageBoxはMessageBoxAではなくMessageBoxWを呼び出します)。

•ジェネリック型。それらはジェネリックでもあります。

•匿名メソッド。

•新しいコンパイラ指令$ POINTERMATH [ON | OFF]。

•Exit関数は、関数のタイプに応じたパラメーターを受け入れることができるようになりました。



Delphi XE2(2011)のバージョンでは、Appleオペレーティングシステム(MacOS X、iOS)向けのWin64コンパイラとクロスコンパイルが追加されました。



Embarcadero TechnologiesのDelphiのロシアの伝道者Vsevolod Leonovは、 インタビューで次のバージョンについて話しました。



画像

Delphi XE3は、迅速な開発ツールの新世代のDelphiファミリの継続です。 2011年に、Delphi XE2がFireMonkeyプラットフォームを発表したことを思い出させてください。これは、ビジュアルコンポーネントのVCLライブラリに代わるものです。



コンポーネント(ボタン、ラベル、入力フィールド、メニューなど)の使用と構成の点ではVCLと非常に似ていますが、別のオペレーティングシステムに転送することができます。 FireMonkeyはクロスプラットフォームです。 FireMonkeyを使用して作成されたアプリケーションは、WindowsとMac OSの両方でコンパイルできます。 ほぼ1〜2回の「クリック」で、根本的に異なるオペレーティングシステム用にプロジェクトを再構築できます。 FireMonkeyプラットフォームのDelphiに同梱されているほとんどすべてのデモプロジェクトには、Windows用とMac OS用の2つのバージョンがあります。 このため、アプリケーションのソースコードを変更する必要はありません。
2013年にリリースされたDelphi XE5バージョンは、ARM / Androidプラットフォームに基づいたデバイス向けのアプリケーションのクロスコンパイルを提供しました。



画像



2016年4月、Delphi 10.1ベルリンが登場しました。 イノベーション:





生きも死もしていない



Delphiは永続的に「埋もれている」、またはこのように生きることは不可能であると主張していることが知られています。 彼らは、システムが巨大で、無関係で、サポートされず、不快で、他の何かになったと主張しています...



しかし、このような意見はアメリカと西ヨーロッパでより一般的であり、この言語は非常に人気があり、決してなかったことを思い出すことができます。 そこでは、多くの場合、これらの考慮事項は非常に合理的です。 しかし、状況が異なるかもしれない他の国々-CIS諸国および東ヨーロッパの他の国々があります。



画像



Vsevolod Leonov これに同意します。

東ヨーロッパの国々についての小さな歴史的な遠足。 旧ソ連の教育システムは、多くの面で非常に強力でしたが、応用プログラミングに関してはそうではありませんでした。 90年代前半には、特定の専門知識を持っている人だけがコンピューターにアクセスし、現代の開発環境で何かをすることを学ぶことができました。



学部全体がプログラミングの基礎コースを「過去に飛びました」。 そして、エントリーの閾値が低いTurbo Pascalの存在、そしてそれから言葉の意味での自己教育を可能にするDelphi環境は、十分に有能な開発者でIT業界を飽和させ、アプリケーションソフトウェア開発の全国的なエンジニアリングレベルを向上させることができました。



したがって、以前の社会主義陣営の国では、非常にシンプルなプログラミング言語と既製のコンポーネントに基づく視覚的開発環境により、Pascal / DelphiバンドルがITの非存在から経済を急激に引き離しました。


オープンソースからの新しいヒーロー



Pascal言語の最も有名な無料実装は、Free Pascalです。 オープンソースコードに加えて、その主な利点はマルチプラットフォームであり、さまざまな方言をサポートしています。



画像



FreePascalに基づいて、無料のマルチプラットフォームIDE Lazarusが作成され 、Delphiプロジェクトでの作業が可能になりました。 Lazarus Component Library(LCL)に基づいています。



宣言されたサポート対象プラットフォームのリスト:



•Windows:98、2k、XP、Vista、7、32、および64ビット。

•FreeBSD / Linux:gtk 2.8およびqt4.5、32および64ビット。

•Mac OS X:10.4、LCLのみ32ビット、非LCLは64ビットにすることができます。



一方、Delphi環境は、開発中にプログラミングを学習するのに本当に面倒で不適切になりました。 さらに、アカデミックな用途であっても無料のDelphiバージョンはありません。 これらの要因により、Delphiは教育からほぼ完全に消滅しました。



All Articles