目次

概要

C# でプログラミングを行うためには、コンパイラだけ入手してテキストエディタで開発する方法と、 統合開発環境を利用する方法があります。

統合開発環境(IDE)

統合開発環境(Integrated Development Environment、略してIDE)は、 ソースコードの編集、コンパイル、デバッグなど、プログラム作成に必要な機能を統合的に提供するGUIプログラムです。 概ね、以下のようなことができます。

  • コード ハイライト: 予約語や型名、文字列など、プログラム的に意味のある部分を色付けしてソースコードを見やすくする
  • コード補完: 今カーソルがある位置にどういうものが書けるか、型名やメソッド名などの候補を出す
  • エラーの指摘: C#の場合は、ソースコードを書いたそばから文法チェックが走り、リアルタイムにエラーを指摘してもらえます
  • デバッグ実行:
    • ブレイク ポイント: プログラムが指定した場所まで来たら、処理を一時停止して、その時点の変数の中身などを覗けます
    • ステップ実行: ソースコードを1行1行実行しつつ、その時点の変数の中身などを覗けます
  • パッケージ化: プログラムを配布可能な状態にパッキングします

Visual Studio

Visual Studioは、Windows専用ではありますが、古くからある高機能なIDEです。 Windowsを開発機として使えるならば、第一に考えるべき選択肢でしょう。 プロ向けの製品プランであるVisual Studio ProfessionalやVisual Studio Enterpriseはそこそこの値段がしますが、 人件費と比べれば安いものです。

Visural Studio でプログラミング(画像は 2015 のもの)
Visural Studio でプログラミング(画像は 2015 のもの)

Visual Studioには無償版もあります。 無償版には、歴史的経緯から、Visual Studio CommunityとVisual Studio Expressの2系統あります。

製品プラン 有償/無償 概要
Enterprise 有償 最上位グレードで、お値段も張ります。大規模チーム開発に必要な機能や、最新の機能はまずEnterpriseにのみ追加されます。
Professional 有償 個人開発や小規模開発ならば十分な程度の機能を提供しています。
Community 無償 オープンソースへの貢献か、一定規模以下のビジネスにだけ使える無償プラン。ビジネス規模の制限は結構きついので、ほぼ非商用利用向けです。その代わり、使える機能はProfessional並みです。
Express 無償 商用利用制限がない代わりに機能制限があります。今はCommunityへの移行をしてほしいようで、大々的なリンクは消えていて「探せばまだ見つかる」というような状態です。

ちなみに、学生や、スタートアップ企業の場合は、有償のマイクロソフト製品を無償で使うことができるプランがあります。

  • DreamSpark: 学生であることを証明できる書類があれば入れます。
  • BizSpark: 企業5年未満、非上場、かつ、年商100万ドル未満の会社であれば入れます。

その他

(暇を見て詳細埋めていく)

  • MonoDevelop: クロスプラットフォームIDE。
  • Xamarin Studio: 中身はMonoDevelopと一緒というか、MonoDevelop + iOS/Android開発プラグインみたい。
  • JetBrains Project Rider: まだ発表されたばかりだけども。IntelliJ等で有名なJetBrains社が、クロスプラットフォームなC#向けIDEを開発。

テキスト エディター

普段慣れてしまっているテキスト エディターで開発したいとか、マシン スペック的な問題とかで、Visual StudioやXamarin Studioは使いたくないという場合に。

コマンド ライン ツール

IDEがなければプログラミングできないというわけではありません。単にテキスト エディターで編集したC#ソースコードを、コマンド ラインから実行することもできます。

また、普段の開発ではIDEを使うにしても、時折、IDEをインストールしていないマシンでコンパイルを行いたくなることもあるでしょう。例えば、以下のような用途があります。

  • CIビルドで、コミットごとにとか、日に1回特定の時刻にとか、自動ビルドしたい
  • サーバーにリモート ログインして、GitHubなどからソースコード一式をダウンロードして、それをコンパイルして実行したい

dotnet コマンド

.NET Core(オープンソース開発されているクロスプラットフォーム向け.NET)では、dotnetコマンドという便利なコマンド ライン ツールを提供しています。

dotnetコマンドという1つのコマンドだけで、C#でのプログラミングに必要な機能が一通り提供されています。 dotnet コマンドは以下のページからインストールできます。

http://dotnet.github.io/getting-started/

dotnetコマンドは、今のところ(2016年1月時点)、Windows、Ubuntu、OS X用のインストーラーと、Dockerコンテナーが提供されています。

dotnetコマンド(1) dotnetコマンド(2)

C#コンパイラーとMSBuild

旧来のWindows向け.NET Frameworkでも、C#のコンパイラーだけであれば無償で使えていました。

Visual Studioに無償版がなかったころでも、やろうと思えば無償でC#プログラミングは可能でした。

メモ帳でプログラミング
メモ帳でプログラミング

C#コンパイラーは、昔は.NET Framework(開発者向けの SDK ではなく、アプリケーション機能に必要なランタイムのみでも)に付属していました。Windowsのシステム フォルダー直下にMicrosoft.NETというフォルダーができているはずなので、その中をC#コンパイラーの実行ファイル名であるcscで検索すれば見つかるでしょう。

今は、Microsoft Build Toolsに付属しています。 Microsoft Build Toolsは、Visual Studioから、コマンド ライン ビルドに必要なツールを抜き出したもので、無償で手に入ります。 インストール先はPrograms Files直下にできるMSBuildというフォルダーで、この中にcscも入っています。

更新履歴

ブログ