辞書へ戻る言語の一覧

C#

しーしゃーぷ言語2000

マイクロソフトが.NET基盤向けに開発した言語。JavaC++の良さを取り入れ、Windowsアプリやゲームエンジン(Unity)、業務システムなど幅広く使われている。現在も活発に進化を続けている言語。

年表

2000最初の広く配布された実装がマイクロソフトの.NET Framework構想の一部としてリリース
2000Ecma Technical Committee内にC#標準化のためのTask Group 2が結成(9月)

概要

マイクロソフトが.NET基盤向けに開発したオブジェクト指向プログラミング言語。ヒューレット・パッカード、インテル、マイクロソフトによる共同提出をもとにEcma標準として規格化された。設計者はAnders Hejlsberg、Scott Wiltamuth、Peter Goldeの3人。

時代背景

最初の広く配布された実装は2000年7月、マイクロソフトの.NET Framework構想の一部としてリリースされた。同年9月にはEcma Technical Committee(TC39、後にTC49に改称)内にC#の標準化を担うTask Group 2(TG2)が結成され、あわせて実行基盤Common Language Infrastructure(CLI)を標準化するTG3も発足した。マイクロソフトの実装はCLIに依拠するが、仕様上はCLIに依存しない実装も許容される設計になっている。

利点と代償

設計目標として、シンプルで現代的な汎用オブジェクト指向言語であること、強い型検査・配列境界チェック・未初期化変数の検出・自動ガベージコレクションといったソフトウェア工学的な安全策を備えること、分散環境向けコンポーネント開発に適すること、C/C++に親しんだプログラマーの移植性を重視することが掲げられた。一方で、C言語アセンブリ言語と性能・サイズで直接張り合うことは意図されていない、と仕様書は明記している。

現在

初版から四半世紀が経ったが、.NETプラットフォーム向けの中心言語として現役で開発が続いている。パターンマッチングやLINQ、非同期プログラミング(async/await)など、初期にはなかった機能を重ねながら進化を続け、Windowsアプリ・ゲームエンジン(Unity)・クラウド・Webサービスなど幅広い用途で使われている。

開発元Microsoft
基盤.NET

関連項目

  • Javaサン・マイクロシステムズが開発した、「一度書けばどこでも動く」を掲げた言語。仮想マシン上で動く仕組みで環境差を吸収し、企業システムやAndroidアプリの基盤として広く普及した。
  • C++ビャーネ・ストロヴストルップがC言語にオブジェクト指向などの機能を加えて作った言語。性能と抽象度を両立でき、ゲーム・ブラウザ・各種アプリの基盤として広く使われている。Cとの互換を保ちながら巨大に育った言語。
  • Visual Basicマイクロソフトが作った、画面を部品で組み立てながらプログラムできる開発環境付き言語。ドラッグ&ドロップでWindowsアプリを手軽に作れたことで、多くの人にプログラミングの入口を提供した。社内ツールの定番でもあった。
  • DelphiBorlandが出したObject Pascalベースの統合開発環境。ビジュアルにWindowsアプリを組める手軽さで、業務開発に広く使われた。

関連技術

出典