Start Debugging
2024-12-01 更新日 2026-02-08 csharpdotnet Edit on GitHub

C# 言語のバージョン履歴

C# の進化により、モダンで高パフォーマンスな言語へと変貌を遂げました。本ガイドはあらゆる主要なマイルストーンを追跡します。初期 (C# 1.0 - 1.2)。C# は 2002 年に .NET Framework の主要言語として登場しました。Java に似ていましたが、Windows 開発に焦点を当てていました。バージョン 1.2 はその後すぐに小さな...

C# の進化により、モダンで高パフォーマンスな言語へと変貌を遂げました。本ガイドはあらゆる主要なマイルストーンを追跡します。

初期 (C# 1.0 – 1.2)

C# は 2002 年に .NET Framework の主要言語として登場しました。Java に似ていましたが、Windows 開発に焦点を当てていました。バージョン 1.2 はその後すぐに、foreach ループでの IDisposable サポートのような小さな改善を伴って登場しました。

この言語には次のような目標がありました:

  • シンプルで、モダンで、汎用的かつオブジェクト指向のプログラミング言語であることを意図しています。
  • 強い型検査、配列の境界検査、未初期化変数を使用しようとする試みの検出、ソースコードのポータビリティ、自動ガベージコレクションを含むべきです。
  • 分散環境を活用できるソフトウェアコンポーネントの開発に使用することを意図しています。
  • プログラマのポータビリティは非常に重要であるため、特に C と C++ にすでに慣れているプログラマにとって、C# が最適です。
  • 国際化のサポートを提供すること。これは非常に重要でした。
  • ホスト型システムと組み込みシステムの両方に向けたアプリケーションを書くのに適していることを意図しています。

出典: C# の設計目標

大きな生産性のシフト (C# 2.0 – 5.0)

これらのバージョンは、私たちが今日最もよく使用する機能を導入しました。

モダンコンパイラの時代 (C# 6.0 – 9.0)

Roslyn コンパイラにより、更新がより高速かつ頻繁になりました。

最近の進化 (C# 10.0 – 13.0)

この言語は今や .NET と並んで毎年進化しています。

C# 14 の新機能

.NET 10 と共にリリースされた C# 14 は、いくつかの生活の質を向上させる改善を導入します。

field キーワード

プロパティのバッキングフィールドを手動で宣言する必要がなくなりました。field キーワードを使えば、アクセサ内でコンパイラ生成のフィールドに直接アクセスできます。

public string Name { 
    get => field; 
    set => field = value ?? "Unknown"; 
}

拡張メンバー

C# 14 は拡張メソッドを拡張します。新しい extension ブロック内で、拡張プロパティ、静的メンバー、さらには演算子まで定義できるようになりました。

その他の主要な機能

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.

< 戻る