2012年9月5日水曜日

C言語とC + +、C#の定義




<< C >>
 1969年のある日、AT&T Bell研究所のケントンプソン(Ken Thompson)は、研究所側で遊んでいるDEC PDP-7のコンピュータを発見し、楽しい思いを一つ思い出した。彼はPDP-7でコンピューターゲームを作って動作させてみたかったが、そのようなコンピュータゲームを搭載して運用することができるOSを作成することにした。彼はOSを製作し始め、UNIXを作った。

 数年後にこうして開発されたUNIXのためにデニスリッチー(Dennis Ritchie)が、C言語を開発した。トムソンによってほとんどアセンブリ言語で作られたUNIXはC言語で書き直されました。初期のUNIXはPDP-7でのみ動作したが、その後、他の機種のコンピュータでも利用できるように移植されており、C言語もUNIXに沿って様々な機種のコンピュータに移植された。

 C言語という名前はどのように付けたのだろう?トムソンは、UNIXを作った翌年にB言語というプログラミング言語を開発した。 B言語はBCPL(Basic Combined Programming Language)言語の多くの概念を継承したが、BCPLの前イニシャルにちなんで "B"と命名された。リッチは、C言語の設計に関する重要な概念のうち、相当部分をすぐにB言語から持ってきたし、B言語を継承するという意味で、彼が作り出した新しい言語 "C"という名前をつけたのだ。


<< C + + >>
 C + +は、AT&T Bell研究所のビヤンストロストラブ(Bjarne Stroustroup)によって1980年に開発された。その場合は、C + +という名前の代わりに "C with Classes"と呼ばれたが、正式にC + +の名前を得たのは、それから数年が去る1983年からだった。
 C + +はC言語を拡張するという意味で命名されたのだ。

ストロストラブ教授がC + +を考案した当時のC言語は、システムの内部を扱うことができる低レベル(low-level)の言語であり、CPUが走っているコンピュータであればどこでも使用することがあり、既にかなりのレベルのライブラリ関数を備えていた。何よりも多くのプログラマがCを使用していた。 C + +は、これらの利点を持つC言語をベースに、より簡単かつ効率的にプログラムを作成できるように新たに作られた。


<< C#>>
 Windows 95の初期バージョンがリリースされた1995年のWindowsにはインターネット機能が含まれていませんでした。その時には、マイクロソフト(以下MS)は、インターネットの可能性を気付かずにいました。しばらくして、インターネットの爆発的な成長とネットスケープのWebブラウザ、Javaアプレット、JavaScriptなどのインターネット関連技術が登場して市場を急速に拡大していくと、MSはあたふたとエクスプローラとビジュアルベーシックを変形したVBスクリプトを開発しました。

当時のインターネット関連する主要な問題は、ジャバラは、ネットワーク言語でした。インターネット開発の遅れ足を踏み入れたMSはサン·マイクロシステムズ(以下SUN)が開発したJavaを任意に変形してエクスプローラに搭載しました。また、Windows開発環境であるVisual Studioのも、Java技術を盛り込みました。 Javaの爆発的な人気にもかかわらず、当時は立派なJava開発ツールがなかったが、MSからビジュアルJ + +という強力なJava開発ツールを開発して市場に無料で供給し始めました。実際のJavaを開発したSUNはMSのこれらのJava開発政策を見て、Java言語の既得権を奪われる可能性がある危機意識を感じて、すぐに法廷訴訟を進行して、もはやMSがJavaを変形して使用できないロックブレーキをかけたています。その後MSは、Java関連のプログラムを開発することができなくなりました。特にJava開発ツールであるビジュアルJ + +は、プログラム関連の書籍まですべて回収するよう裁判所の判決が落ちました。
 皮肉なことに、Javaを今日最も頻繁に使用するネットワークの言語で作成された主役であるMSは、もはや、Java関連技術を利用できなくなったことです。しかし、すでに時代の大勢は、インターネットをベースとした分散ネットワーク技術に移行していました。特にその中核技術として、Javaが確固たる地位を占めていた、IBM、Oracle、BEAなどの大手IT企業で、Javaを中心に、これらの分散ネットワーク技術を実装し始めました。このような状況を打開するために、MSから発表された技術がすぐに、。NET(以下ネット)です。

 ネットを簡潔に要約すると、 "アプリケーション、サービスが有機的に統合されるためのMSの製品と技術環境とサービス"と言うことができます。つまり、Java技術に対応するためのMSの新しい次世代インターネット環境がすぐにネットです。ネットは、Javaが提供するライブラリであるJDKと同様のライブラリの集合であり、このライブラリを最も効率的に使用して開発することができる言語としてC#言語を新たに作って発表しました。 C#は、MSのJava対応戦略の中核言語です。 C#はJavaと同様の用途に使用されMSの中核言語であるVBの生産性とVisual C + +のパフォーマンスを組み合わせた新しい次世代の主力言語です。

0 件のコメント:

コメントを投稿