オブジェクト指向プログラミングの起源

オブジェクト指向プログラミングの起源

I.概要

1.1 1940:マシン指向

機械語の最初のプログラミングは、マシンが認識し、命令とデータを実行できるバイナリコードを使用することが、書かれています。簡単に言えば、直接書き込み0と1は、プログラミング言語のシーケンスを表します。例えば:0000ストレージの代わりに代表的負荷(LOAD)、0001(STORE)などが挙げられます。
機械語を直接機械、速いスピードで実行されますが、明らかな欠点があることである:あなた自身が見つかったら、難しすぎる書き込みに
間違っている、書く、非常に低く、彼らはより多くの、これはプログラミング効率に直接つながった退屈な変更!タイムプログラムは、多くの場合で、実際の実行時間を要し
、数時間または数百倍。
でも、そこ機械語とビル・ゲイツについてのジョークは、ビル・ゲイツは、針が出て突くために、単一のディスク、Windows上で突く取ったことで、ある!しかし、あなたは本当にWindowsのはもちろんのこと、突く手放す場合シンプルな「Hello World」の人々は、目の煙をつついてきました!

機械語を書くのはあまりにも難しいですので、ので、彼はコンパイル言語を開発しました。また、代わりに記号(シンボル)またはラベル(ラベル)との命令アドレスまたはオペランドアドレスの代わりに機械語オペコードの命令ニーモニックのシンボルアセンブラ言語を、知られています、。プログラム、ある程度のプログラミングプロセスを簡素化するために便利特定のバイナリの機械語プログラムを書き込むためのアセンブリ言語ニーモニックの使用です。0000代わりに代わり0001の使用LOAD、STOREの例えば、使用。

でも、可読性を高めるために、機械語アセンブリ言語と比較するが、その本質は、マシン指向同じ困難を書く言語、だけでなく、エラーを起こしやすいです。私は、多くのコンピュータの卒業生は、これまでの運動プログラムのコンパイル中に学校のカリキュラムのおびえていると信じています。

ステップ1.2からマシン:ためのプロセス

通常の状況下で機械指向言語は、機械指向言語の問題を解決するコンピュータサイエンスの前任者とプロセス指向の言語を作成するために、「低レベルの言語」と考えています。プロセス指向の言語は、プロセス指向言語自体がもはや等の機械命令、ストレージの動作について懸念している、機械指向言語と比較して、「高級言語」と見なされていないが、ステップによって特定のステップを解決する方法に焦点を当て質問は、すなわち:問題を解決するためのプロセスは、このプロセスは、引数の理由でなければなりません。

機械指向の考え方と比較すると、それは複雑な機械操作の詳細からプログラマを緩和し、不足していると、解決すべき具体的な問題に代わりに焦点を当てる、プロセス指向のイデオロギー的な飛躍ではありません。プロセスは、もは​​や言語を向いています移植性と汎用性を持っているニーズとの特異的結合機、;自体も書いて、プロセス指向の言語を維持する方がはるかに簡単です。ソフトウェア産業の急速な発展を促進するように、これらの要因は、大幅にプログラマの負担を軽減、改善プログラマの生産性をアップに追加します。

典型的なプロセス指向言語があります:COBOL、FORTRAN、BASIC、C言語を。

初めて1.3ソフトウェアの危機:構造化プログラミング

根本的な理由は、大幅にプログラムのサイズを制限し、プロセス指向言語goto文原因のスパゲッティコード番号です。構造化プログラミング(英語:構造化プログラミング)、プログラミングパラダイム。これは、従来のジャンプを交換するforループとループ構造ながら(関数、サブルーチンの一種である)、ブロック符号、等サブルーチンを使用します。私たちは、コンピュータプログラムの明瞭さ、および開発時間の質を向上させる、との書き込みスパゲッティコードを避けるために期待しています。

コンピュータのハードウェアとアプリケーションの複雑さが増加して、より多くの大規模なソフトウェアの急速な発展に伴い、元のプログラムの開発アプローチは、需要を満たすことがますますできなくなりました。1960年代半ばには、ソフトウェアの危機が初めて勃発した、貧しいソフトウェア品質の典型的な症状は、プロジェクトがスケジュール、プロジェクトのコスト超過やその他の深刻な、重大な事故に完了することはできませんが、ソフトウェアの結果として発生しています。たとえば、米国(1963 http://en.wikipedia.org/wiki/Mariner_1)ワン船乗りロケット打ち上げ失敗事故、理由コードのFORTRANのエラーの1行。

ソフトウェアの危機は、最も典型的な例は、IBMのSystem / 360の開発されたオペレーティングシステムです。フレッド・ブルックス(フレデリック・P.ブルックス・ジュニア)プロジェクトマネージャーとしては、2,000人以上のプログラマが、昼夜を働い率い、5,000人の合計は、総投資額を書くために、年間のソースコードの約100万行を仕事過ごし$ 500万人が、アメリカの「マンハッタン」原爆は四半期を投資する計画されています。このような巨大な投資にもかかわらず、それは繰り返しプロジェクトの進捗が遅れており、ソフトウェアの品質は保証されません。「神話マン月間、」ブルックスプロジェクト経験の後に、この概要に基づいた本は、ベストセラーのソフトウェア工学の本となっています。

この問題を解決するためには、「ソフトウェアの危機」という言葉を作成し、特定のソリューションを提案し、正式に出会い、年1968年1969年2回の有名なNATOの会議を開催している「ソフトウェア工学を。」「ソフトウェア工学」は、ソフトウェアの分野を作ったが、後に、同じソフトウェアの危機を解決することはできません、ソフトウェア工学、銀の弾丸と見られ、それが判明されました。

およそ同時に、ソフトウェアの危機を解決するために、別の方式として、「構造化プログラミング」は育ちました。1968年Edsgerダイクストラは議論の数年間、そして得られた構造化プログラミング方法を引き起こし、紙の有名な「GOTO有害説」を発表しました。一方、第1の構造化プログラミング言語パスカルは、この時点で生まれ、すぐに人気となりました。

構造化プログラミングの主な機能は、「トップダウン、段階的詳細化、モジュラー、」指導思想を採用し、goto文を放棄することです。構造化プログラミングの設計は、基本的な設計を指向プロセスであるが、「トップダウン、段階的な改良、モジュラー」アプローチ、一定の範囲内に制御ソフトウェアの複雑さは、それによって全体を減少させますソフトウェア開発の複雑さ。構造化プログラミング方法は、1970年代のソフトウェア開発の傾向となっています。

2原則 - 研究は5-9の事を思い出すことができ、一般的な人間の短期記憶における人間の脳の存在は、これは有名な7 +であることを示しています。構造化プログラミングはラインでより人間の心の7つの+ -2特性をソフトウェア開発を行う、プロセス指向の設計の改良です。

1.4第2のソフトウェアの危機:オブジェクト指向プログラミング

構造化プログラミングは、ソフトウェアの危機は、しかし、ハードウェア、より多くのビジネスニーズの急速な発展に伴い、長くは続かなかった緩和ある程度人気があります

複雑なプログラミングおよびより広範なアプリケーションには、第2のソフトウェアの危機はすぐに到着しました。

危機の第二の根本的な原因は、ソフトウェアの生産性ソフトウェアである最初のソフトウェアの危機に比べて、はるかにハードウェアやサービスの開発の背後にあるが、主に「複雑さ」に反映されており、第2のソフトウェアの危機は、主に「スケーラビリティに反映されています上記の「」保守性「。従来のプロセス指向(構造化プログラミングを含む)は、この方法では、急速に変化するビジネス要件を満たすことがますますできなかったが、この文脈では、ソフトウェアの危機を解決するための新しい銀の弾丸を見つけるために熱心にソフトウェア分野、オブジェクト指向の考え方ました彼がポップアップし始めました。

オブジェクト指向の考え方が第二の危機後にソフトウェアに表示されていないが、初期の1967年に、Simulaの言語が育ち始めたが、オブジェクト指向のソフトウェア開発を促進するための第二の危機。オブジェクト指向は本当にC ++の信用のために主に、1980年代の十年で人気となり、以降のJava、C#のオブジェクト指向は、新たな高みにプッシュ。今までは、オブジェクト指向開発が主流の考えになっています。

オブジェクト指向ソフトウェアの始まりは、危機を解決する特効薬として使用するが、それは結局のところ、およびソフトウェア工学など、オブジェクト指向ではない銀の弾丸ではなく、ソフトウェアのみへの新しいアプローチですが。

危機を解決する特効薬オブジェクト指向のソフトウェアではありませんが、しかし、比較およびプロセス指向、オブジェクト指向のマシンからより多くのことを考え、人間の心の特性に近い考えて、ソフトウェアの設計思想的な飛躍です。

第二に、開発の詳細な履歴

前の1940から2.1:

図:Huolieruisi型パンチ(パンタグラフ)、1890年の国勢調査のために。
Huolieruisiタイプパンチ(パンタグラフ)

現代のコンピュータの誕生より前の最初のプログラミング言語。まず、これは、符号化された言語(:コードEN)の一種です。

(また、ケイティ花織機として知られている)1801本発明におけるジャカード織機、自動化された装飾的なパターンを生成するために縫製織機アームの動きを表すためにパンチカード上のポットホールの使用。

1842年と1843年に9ヶ月を過ごしたとのエイダ・ラブレスは、チャールズ・バベッジの解析機関新しくリリースされた機械翻訳のイタリアの数学者ルイジMenabreaの回顧録は完了です。彼女は細部に記事の後ろの分析エンジンを使用して、ベルヌーイ数を計算する方法を追加、一部の歴史家は信じている世界初のコンピュータプログラムです。

道の特定の位置の穴の後乗車券スタブの導体を観察ハーマン・ホレリスは、彼はパンチカード上に符号化された情報を記録することができ、その後、エンコードするために、レコード1890は、パンチカードの使用は、人口統計に基づくことを見出したことに気づきましたデータ。

最初は自分のアプリケーションの設計に直面するためのコンピュータコードです。20世紀の最初の十年では、主に、小数点算術を使用し、後でそれだけではなく言葉で、また、デジタルロジックを表すために使用することができることが発見されました。例えば、一度λ計算を表現するのアロンゾ・チャーチ(定型的)な方法を策定しました。チューリングマシンは(種類と電話会社など)(テープマーキング)マシンのテープをマーキングする方法後抽象操作のセットです。限られた数の(有限数)として提示し、このようなチューリングマシン、基礎フォンノイマンアーキテクチャのコンピュータデータを同様に格納されるプログラム。λ計算とは異なり、チューリングマシンとコードは、高レベルのプログラミング言語の基礎になるための方法はありませんその主な目的は、アルゴリズムの複雑さを分析することであるので、しかし、それはあります。

多くの「最初の」最初の近代的なプログラミング言語としての歴史の中でのようにも限定することが困難です。当初は、ハードウェアの制限定義言語ので、行(列)の長さを可能にするカード80をパンチが、カードのいくつかの行を順次記録を使用しなければなりません。FORTRANは、そのような「IF」と同じキーワードを持ついくつかの英単語、「GOTO」(元の単語がに行くために)を内蔵していて、「CONTINUE」。ドラム(磁気ドラム)を使用した後にメモリとして使用される、コンピュータプログラムはまた、ドラム回転(回転)(インタリーブ)を挿入表現しなければなりません。そして今比較、それはまた、プログラミング言語は、ハードウェア(ハードウェアに依存)により依存することができます。

人々は、「プログラミング言語は、」プログラミング言語が言語であるものの歴史を決定する能力(パワー)と可読性(人間可読性)の度合いに基づいて、確立される前の状態の一部に考えなければなりません。ジャカード織機とチャールズ・バベッジの相違エンジンが生成(EN:違いエンジン)すべてのマシンを記述する簡単な言語の制約の多くを持って、行動を実行する必要があります。また、デザインの種類は、ヒトへの使用のドメイン固有言語(EN:ドメイン固有言語)に限定されない:上、(演奏ピアノJA)自動演奏ピアノにパンチカードを使用することです。

2.2 1940:

(電動)、現代、コンピュータの電源ガイドで確認することが最初は1940年代に作成されようとしています。アセンブリ言語プログラムを介して手動調整(チューニング手を)書いて限られたメモリ容量と速度制限の下プログラマ、。そして、すぐにこのように書かアセンブリ言語の使用は精神(知的努力)とエラーが発生しやすい(エラーが発生しやすい)がかかることがわかりました。

コンラート・ツーゼは、[1]彼は1948年にプランカルキュールプログラミング言語を設計した論文を発表しました。しかし、言語は彼の一生の間に達成するために失敗した、と彼の元の貢献は、他の開発を分離しました。

この期間中に開発された重要な言語は以下のとおりです。

  • 1943 - プランカルキュール(コンラート・ツーゼ)
  • 1943 - ENIACコーディングシステム
  • 1949 - C-10

2.3 1950年から1960年:

今日はまだ広く採用されるまで、3つの言語を生み出した、1950年代に設計された3つの現代のプログラミング言語があります。

  • ジョン・バッカスや他の人によって発明された名称「式トランスレータ」(フォーミュラ翻訳)、から取られたのFortran(1955);
  • LISPは、名前はジョン・マッカーシーらによって考案「リスト処理部」(列挙処理)から取られます。
  • COBOLは、名前が深くグレース・ホッパーの影響を受けた短距離委員会によって発明され、「一般的なビジネス指向言語」(一般的なビジネス指向言語)から取られています。

米国および出版物で構成される委員会で、「新しい言語アルゴリズム」(名前は「アルゴリズム言語」(アルゴリズミック言語)から取られている)のためのヨーロッパのコンピュータ科学者からALGOL 60の報告による1950年代後半のもう一つのマイルストーン。報告書は、コンピューティングについて当時多くのアイデアを強化し、2つの言語で前方の革新的な機能を置きます:

  • ネストされたブロック構造:グループに意味のあるコードの断片ではなく、分散の、ブロック(ブロック)であると特定の用語のプログラムになってもよいです。
  • 語彙の範囲(レキシカルスコープ):ブロックは、ブロック自体の変数、プロシージャと関数に所属、名前によって外部からのアクセスをブロックすることはできません。

もう1つの技術革新は、双方向言語の説明です:

呼び出さバッカス-数学的精度のナウア記法(BNF)の表記は、言語の文法を記述するために使用されます。ほぼすべてのプログラミング言語同様の文脈自由プログラムの説明BNF構文などの後。
60ペア後アルゴルは、設計言語、広く採用されるすぐの言語の一部に特定の影響をもたらします。(バロウズ大規模システムエン)大規模システムである:アルゴルのサブセットのフォローアップの開発を拡大するために、我々はバロウズと呼ばれるプログラムを設計しました。

アルゴルの継続によって生成された結果の主要なアイデアはALGOL 68です。

  • 意味論と構文は、高度な再帰的な入力(高階)関数(タイピング)システムを使用して、より直角(直交)、匿名のコース(ルーチン)、となります。
  • 全言語の部分とセマンティクスは、正式に特異ヴァンWijngaarden文法のために設計され、そして文脈自由の一部を終了しない記述言語によって定義されるべきです。

関心の実装の欠如だけでなく、ALGOL 68に得られるようにALGOL 68、文法的なショートカットの複合システム、ならびに自動型強制(型変換)(このような同期並列ブロックなど)言語機能にあまり使用されるいくつかの、 (diffcult)の評判を使用するのは難しいです。ニクラウス・ヴィルトは、単にシンプルな言語を開発するためにデザイン協議会、追加のパスカルのままになります。

この期間中に開発された重要な言語は以下のとおりです。

  • 1951 - 地域アセンブリ言語
  • 1952 - 自動コード
  • 1954 - FORTRAN
  • 1954 - IPL(LISPパイオニア)
  • 1955 - FLOW-MATIC(COBOLの先駆者)
  • 1957 - COMTRAN(COBOLの先駆者)
  • 1958 - LISP
  • 1958 - ALGOL 58
  • 1959 - FACT(COBOLの先駆者)
  • 1959 - COBOL
  • 1962 - APL
  • 1962 - ページ
  • 1962 - Shnobhola
  • 1963 - CPL(Cのヘラルド)
  • 1964 - BASIC
  • 1964 - PL / I
  • 1967 - BCPL(Cのヘラルド)

2.4 1967年から1978年:基盤パラダイムの確立

1960年代後半に1970年代後半の間に、プログラミング言語の開発も重要な結果を持っています。主要な言語パラダイムのほとんどは、今、この期間中に、本発明で使用されます。

  • Simulaの、アルゴル60の方法のスーパーセットで1960年代後半とNaijiaテダールによって開発されたが、また、最初に開発したオブジェクト指向プログラミング言語をサポートするように設計。
  • 言語:Cは、ベル研究所の研究者デニス・リッチーとケン・トンプソンによって開発された1969年から1973年の間に、初期のシステムプログラミング(システムプログラミングEN)です。
  • 1970年代半ばに開発されたSmalltalkのは、オブジェクト指向プログラミング言語の完全に最初から(地上・アップ)の設計です。
  • Prologは、Colmerauer、ルーセル、およびコワルスキーによって1972年に設計された、第一論理プログラミング言語でした。
  • ロビンミルナーによって考案1973年MLは、Lispに基づいて構築多型(多型)型システムだけでなく、静的に型付けされた関数型プログラミング言語のパイオニアです。

これらの言語は、自分のプレーが、今日の最も近代的なプログラミング言語の祖先はそれらの少なくともつ以上をさかのぼることができ、彼の家族のブランチを示しています。

1960年代と1970年代に構造化プログラミングの利点は、特に、プログラム開発の過程でGOTOを使用していない、論争の多くをももたらしています。言語自体との紛争は非常に関係が設計されています。一部の言語ではまた、プログラムを書くプログラマを強制GOTOは、構造化されなければならない含まれていません。時間口論日で論争にもかかわらず、ほとんどすべてのプログラマは、言語自体は数まれなケースを除き、GOTO機能を提供していてもがGOTOは一種の悪いスタイルプログラムで使用し続けることに同意します。世代プログラミング言語の設計者は、構造化プログラミング言語論争は本当に退屈でまばゆいであることを認識した後、結果があります。

この期間中に開発された重要な言語は以下のとおりです。

  • 1968 - ロゴ
  • 1970 - パスカル
  • 1970 - フォース
  • 1972 - C言語
  • 1972 - Smalltalkの
  • 1972 - プロローグ
  • 1973 - ML
  • 1975 - スキーム
  • 1978 - (最初だけクエリ言語で、拡張後も、プログラムの構造を持っている)SQL

2.5 1980:拡張モジュールの性能

前回さらに強力に比べて1980年代のプログラミング言語。C ++は、オブジェクト指向プログラミングやシステムが組み込まれています。米国政府は、エイダプログラミング言語と呼ばれるシステムを標準化し、防衛請負業者に利用可能です。日本や他の場所を調査した論理プログラミング言語構造を使用して第五世代言語にたくさんのお金を使います。関数型プログラミング言語のコミュニティは、焦点はMLとLisp体を標準化するためにシフト置きます。これらの活動は、新しいパラダイムの開発にはありませんが、最後の世代のアイデアは、さらに前方発明します。

しかし、言語設計における主要な新しい傾向があり、大規模なシステムを開発するためのモジュール、または大規模な組織化プログラム単位の使用を検討することです。Modula、エイダ、およびMLは、すべてのモジュラーシステムが注目する価値がある開発し、1980年代のもの。一般的なプレゼンス(ジェネリックがある)、自然(エッセンス)、パラメータ化モジュール(パラメータ化モジュール):モジュラーシステムは、多くの場合、ジェネリックプログラミングスティック構造を採用します。(多型を参照してください)

主なプログラミング言語の新しいパラダイムが表示されませんが、まだアイデアの多くの研究者が言語を拡大すると、彼らは新しいコンテンツに適用する前に。例えば、エメラルドアーガス及びオブジェクト指向言語と言語システムは、分散システムに適用されます。

1980年代のプログラミング言語も、達成の進捗となっています。コンピュータ・システム・アーキテクチャRISCハードウェアは、人間ではなく、アセンブリ言語のプログラマとして、コンパイラの設計を進行すると仮定しなければなりません。コンパイラ技術の助けを借りて高速化する中央処理装置によって、RISCの開発は、高レベル言語のコンパイラ技術のための小型の懸念を持っていない、ますます活発化しています。

これらの開発と言語技術は、1990年代まで続きます。

この期間中に開発された重要な言語は以下のとおりです。

  • 1980 - あり
  • 1983 - C ++(Cのカテゴリがあると同じように)
  • 1984 - Common Lispの
  • 1985 - エッフェル
  • 1986 - アーラン
  • 1987 - Perlの
  • 1988 - Tclの
  • 1989 - FL(バッカス)

2.6 1990:インターネット時代

1990年は、主に事業再編やビジョンの変化の前に、すべての主要な技術革新を見ていません。主駆動哲学は、この期間中に、プログラマの生産性を向上させることです。多くの「迅速なアプリケーション開発」(RAD)言語は、これらの言語のほとんどは、対応する統合開発環境、ガベージコレクションのメカニズム、およびデリバティブの言語の以前の言語のほとんどを持って、浮上しています。言語のこのタイプは、パスカルは、Visual Basic、およびC#のオブジェクトが含ま主にオブジェクト指向のプログラミング言語です。Javaはなく、ガベージコレクション機構を備えた、より保守的な言語です。他の類似の言語と比較すると、だけでなく、より多くのコンセプトノートで。新しいスクリプト言語は、RAD言語より新しい、より良いです。この言語は他の言語から直接誘導し、新しい構文(リベラル)と機能的にフィットする、よりオープンされていません。小さなプログラムがあるだろうより生産性が、主な理由の言語よりもRADスクリプト言語は比較的簡単ですが、一方で、スクリプト言語を使用して大規模なプログラムを書いて、懸念を維持することは困難です。それにも関わらず、ネットワーク・レベルのスクリプト言語やアプリケーション上の輝き。

この期間中に開発された重要な言語は以下のとおりです。

  • 1990 - ハスケル
  • 1991 - パイソン
  • 1991 - Visual Basicの
  • 1993 - ルビー
  • 1993 - Luaの
  • 1994 - CLOS(ANSI Common Lispの一部)
  • 1995 - Javaの
  • 1995 - デルファイ(Object Pascalの)
  • 1995 - JavaScriptの
  • 1995 - PHP
  • 1997 - REBOL
  • 1999 - D

今日のトレンド2.7

学術および企業レベルの持続的な発展におけるプログラミング言語の進化、現在の傾向の一部が含まれます:

  • 追加のスタックチェック、情報の流れ(情報の流れ)制御、および静的スレッドセーフ:言語での安全性と信頼性検証メカニズムを増やします。
  • 混合(EN:ミックスイン)、デリゲート(EN:デリゲート)と、ガイドのビューモジュラー別のメカニズムを提供します。
  • ガイド部品(コンポーネント指向)ソフトウェア開発
  • メタプログラミング、またはアクセス反射抽象構文木(EN:抽象構文木)
  • 分散およびモバイルアプリケーションをより重視。
  • そして、XMLとリレーショナルデータベースなど、データベースを統合しました。
  • Unicodeのプログラミングの使用をサポートし、ソースコードは、限られたASCII文字セットではなく、非ラテン文字のように使用または句読点を拡張することができます。
  • XML使用(XUL、XAML)グラフィカル・ユーザ・インターフェース。

この期間中に開発された重要な言語は以下のとおりです。

  • 2001 - C#
  • 2001 - Visual Basic .NETの
  • 2002 - のF#
  • 2003 - スカラ
  • 2003 - ファクター
  • 2006 - Windows PowerShellの
  • 2007 - Clojureの
  • 2009 - 行きます
  • 2014 - スウィフト(プログラミング言語)

プログラミング言語の開発の歴史の中で2.8傑出した人物

  • ジョン・バッカスは、Fortranのを発明しました。
  • アラン・クーパー、Visual Basicの開発。
  • AiziのGe・ダイクストラ、のプログラミング言語(適切なプログラミング)の正しい使用のためのフレームワークを作成します。
  • ジェームズ・ゴスリング、オークの開発、Javaの先駆者のための言語。
  • アンダース・ヘルスバーグ、ターボパスカル、デルファイ、およびC#の開発。
  • グレース・ホッパーは、フロー-Maticは、COBOLには影響を与えた言語を開発しました。
  • ケネス・アイバーソン、APLの開発、及びロジャーホイJ.と共同開発
  • ビル・ジョイは、BSD Unixの、SunOSの早期の作者をVIを発明し、オペレーティングシステムのスポンサーは、後のSolarisの名前を変更しました。
  • オブジェクト指向プログラミング言語、Smalltalkのスポンサーを作成するアラン・ケイ、。
  • ブライアン・カーニハン、デニス・リッチーとCプログラミング言語でなく、AWKとAMPLプログラミング言語の共著者の最初の本の共著者。
  • ジョン・マッカーシーは、LISPを発明しました。
  • ジョン・フォン・ノイマン、オペレーティングシステムの概念の創始者。
  • C.を発明したデニス・リッチー、
  • ビャーネ・ストロヴストルップは、C ++を開発しました。
  • ケン・トンプソンは、Unixを発明しました。
  • ニクラウス・ヴィルトは、パスカルとのModulaを発明しました。
  • Larry Wall氏、PerlとはPerl 6を作成しました。
  • グイド・ヴァンロッサムは、Pythonの作成します。

おすすめ

転載: www.cnblogs.com/randysun/p/11414453.html