C#(シーシャープ)とは、Microsoftが開発した「.NET Framework」向けマルチパラダイムプログラミング言語です。「.NET Framework」の中核的言語として位置づけられています。

オープンソースの言語/C#とは

C#(シーシャープ)とは、Microsoftが開発した「.NET Framework」向けマルチパラダイムプログラミング言語です。「.NET Framework」の中核的言語として位置づけられています。

基本情報

概要

C#(シーシャープ)とは、Microsoftが開発した「.NET Framework」向けマルチパラダイムプログラミング言語です。「.NET Framework」の中核的言語として位置づけられています。

「.NET Framework」とは

「.NET Framework」とは、実行環境であり、クラスライブラリを持ちます。

「C#でプログラムを作成する」=「.NET Frameworkで動作するプログラムを作成する」となります。「.NET Framework」のクラスライブラリを利用しながらコーディングを行います。

基本説明

C#は、C言語/C++言語をベースに拡張しつつ、Javaの影響を大きく受けています。共通言語基盤(共通言語ランタイムなど)が解釈する共通中間言語にコンパイルされて実行されます。

「howからwhatへ」という主義を掲げ、開発者が行いたいこと(what)を可能な限りそのまま書けるように言語仕様を進化させています。GUI開発/データアクセス関連の機能が充実しています。

「Delphi」の影響

実際の構文は「Delphi」に準じており、プロパティ/デリゲートなど、「C++ Builder」の独自拡張構文に極めて近い内容となっています。

他言語との比較

「C++」に比べると→ガーベージコレクション(メモリ管理自動化)によりコーディングが手軽に行えます。

「Java」に比べると→より現実的に処理を書けます。

「Visual Basic」に比べると→厳密なデータ型により、コンパイラ時にバグが見つかりやすくなっています。

経緯

「C#」という名称に関しては、「Cの音を半音上げる→C言語を改良したもの」説、「C++++言語」説の2つあります。

開発には、多数のDelphi開発陣が参加しています。

2002年4月 Ver1.0リリース

TOPに戻る

主な特徴

マルチパラダイム言語

「強い型付け」「命令型」「宣言型」「手続き型」「関数型」「ジェネリック」「オブジェクト指向」の要素を持ちます。

.NET構想における中心的開発言語

「XML Webサービス」や「ASP.NETの記述」にも使用されます。他の.NET系言語に比べて、生産性/機能においてC#が最も優れているとされています。

.NET Framework相互連携

他の.NET系言語(Visual Basic .NET、Visual C++など)と相互連携できます。他言語で記述されたクラスを継承でき、その逆も可能です。

言語仕様標準化

C#の言語仕様は、標準化団体「Ecma International」を通じて公開/標準化されています。ISOやJISにも標準規格として登録されています。

第三者が、Microsoftとは無関係に、コンパイラ/実行環境を実装できます。

TOPに戻る

ポイント

機能

・完成度の高いオブジェクト指向
・デリゲート(関数ポインタのオブジェクト指向版)
・プロパティ(setter/getterを代替)
・インデクサ
・カスタム属性
・ポインタ演算操作
・構造体(値型オブジェクト)
・多次元配列
・可変長引数
・インターフェース
・ガベージコレクション
・演算子オーバーロード
・LINQ(Language Integrated Query:並列処理を見こしたデータ操作記述方法)
・抽象構文木からの動的コード生成機能

環境

・C言語やC++との互換性は無し
・.NET大規模ライブラリ
・プロセッサアーキテクチャに依存しない実行形態
・JITコンパイルによる実行の高速化
・ヘッダ不要、物理パスに依存しない
・動的ディスパッチ(リフレクション、COMや動的言語との相互運用)
・Unicode対応(言語が異なっても文字化けしない)
・スクリプト言語と比較すると高速
・C#コンパイラはEXE実行ファイルを生成

構文ルール

・if文の条件式は bool値を返さなければならない

その他

・学びやすい
・エラーを発生させにくいように、いろいろと工夫されている

TOPに戻る

同様製品(概要情報)

同様な機能を提供する製品として、次のようなものがあります。

「Visual Basic.NET」「Visual C++」「F#」など。

TOPに戻る

導入事例

.NET Frameworkの中核的言語として、幅広く利用されています。

TOPに戻る

ライセンス情報

C#のライセンスは、「Apacheライセンス」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

TOPに戻る

ダウンロード

ダウンロードページ

TOPに戻る

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

C#最新TOPICS

【IDE+OSS解説】「Visual Studio 15」と「C# 7」---IDEにおける機能改善点、C# 7で導入される予定のパターンマッチ/タプル(2016年09月04日 16:03)

Visual Studioの新バージョン「Visual Studio 15(Preview 4)」が8月22日にリリースされた。 「Visual Studio 15」と「C# 7」について解説。 【C#とは】 http://www.ossnews.jp/oss_info/C_sharp 【解説ポイント】 ・新しいインストーラーでのインストール ・IDEにおける機能改善点 ・C...

C#最新CLOSEUPコラム

  • オープソース書籍(サイド)
  • OSSNEWSに広告を掲載しませんか?

facebook

twitter