通信用語の基礎知識 戻る
アスカネットワークサービス

C♯

読み:スィーシャープ
外語:C♯
品詞:名詞
2000/06/29 作成
2008/04/17 更新

C++をベースとしたプログラミング言語の一つ。

  • 枠組み ‐ 手続き型、命令型、オブジェクト指向
  • 発表日 ‐ 2000(平成12)年6月26日
  • 設計者 ‐ アンダース・ヘルスバーグ(Anders Hejlsberg)
  • 開発者 ‐ Microsoft
  • 最新版 ‐ C♯ 2.0
  • 言語影響関係
  • 主要動作環境 ‐ Microsoft Windows

名称の由来

C++は、Cに++(インクリメント)することで、Cより一歩進んだCを意味した。

C♯は、この+を縦に並べたものである。

仕様

次のように分類される。

  • C♯ 1.0
  • C♯ 2.0

ISO規格は次のものがある。

  • ISO/IEC 23271 (JIS X 3015)

Javaの対抗

Microsoft .NET上の仮想計算機(VM)であるCLR(Common Language Runtime)で動作するもので、Javaの対抗言語であり、Javaの機能の全て、及びそれ以上の機能を搭載する。

XMLプログラミングを簡易化する機構などを備えており、JavaやVisual Basic、またはそれらと同種の多くを兼ね備えた言語とされる。同社は「C++の開発者をモダンワールドに移行させる」言語としている。

Javaとの差

例えば、CにはなくJavaにはあるガベージコレクション機能が採用された。

またMicrosoft製Javaでは意図的に変数が初期化されなかったが、C♯では変数はシステムによって自動的に初期化される等の違いがある。

国際標準化の幻想

JavaはSun Microsystemsのデファクトスタンダードであり、かつ国際標準化はしない旨がSun Microsystemsより明言されている。このようなポリシーは、Linux等オープンソース系OSとは適合が悪い。しかしC♯は最初から国際標準が目指された。

まず欧州コンピュータ製造工業会(ECMA)へ提出し、2001(平成13)年12月に標準化された。

そして2002(平成14)年10月には遂にISO標準となる見通しが発表され、2003(平成15)年にISO/IEC 23271としてISO標準化された。

そして2005(平成17)年3月22日、JIS X 3015プログラム言語C♯として日本でもJISとして規格化された。

かくして、言語そのものは国際標準となったが、その実行環境はWindows版以外は存在せず、Javaとは違ってWindows以外では動作できない。