この連載では、数あるプログラミング言語の中から「C#」を取り上げます。C#は、2000年に発表されて以来、15年以上にも渡って進化を続けてきたプログラミング言語です。その特徴は多岐に渡り、この連載だけですべてを紹介するのは難しいかもしれません。ですが、プログラミング経験のある読者が、数多くのプログラミング言語の中から、C#を選択する指針となるようなC#の魅力を伝えていきたいと思います。

 連載の第1回は、C#の特徴とC#で開発できるアプリを理解し、開発環境を整えていきます。これらを学ぶことで、C#をより深く理解できるようになるからです。

C#言語の特徴

 C#は、2000年当時に主要であったプログラミング言語の特徴を取り入れています。例えば、C、C++、Java、Visual Basicなどです。

 Cの高いパフォーマンス、C++のオブジェクト指向、Javaのガーベジコレクションや強固なセキュリティ機構、Visual Basicの開発の容易性——、といった特徴を取り込んだプログラミング言語なのです。当時の主要言語の良いところを集めた言語といえます。

 また、C#が米MicrosoftのAnders Hejlsberg氏を中心としたチームによって開発されたこともあり、Turbo PascalやDelphiというプログラミング言語の特徴も取り入れています。同氏がMicrosoftに入社する前に開発していた言語だからです。

C#で開発できるもの

 C#を覚えると、どんなプログラムを開発できるようになるのでしょうか。まず、図1を見てください。現在のC#を取り巻くエコシステムを図示したものです。エコシステムとは、C#プログラムの開発対象になるプラットフォームのことです。

図1●C#のエコシステム
図1●C#のエコシステム
[画像のクリックで拡大表示]

 C#が様々な用途に使える汎用的なプログラミング言語であることがわかると思います。デスクトップ向けのアプリだけではなく、iPhoneやAndroidなどを搭載する携帯端末のアプリ、Amazon Web ServicesやGoogle App Engine、Microsoft Azureなどのクラウド環境で動かすアプリまで、幅広い用途に活用できます。