このwikiについて
このwikiでは、プログラミング言語、C#の入門~中級レベルを扱います。
想定する閲覧者は、C#のことは何も知らないが、プログラミング経験のある方々としています。
つまり、C#のことを何も知らない人も歓迎しますが、いちいち「変数って何?」というような、どの言語でも共通な基本的な説明は行いません。
そのような方は、wikipediaなどでその語彙のページを閲覧するか、
Basic言語などから始めてみてはいかがかと思います。
また、基礎・入門関連については、少なくともVisual Basicの経験があれば、読み通せる水準を想定しています。
JavaやC++の知識があれば良いですが、必須ではありません。
何故C#なのか
C#というプログラミング言語を聞き、何故C#か?と思われた方もいるかもしれません。
プログラミング言語として、すでにC、C++、Java、Basicなど、様々な言語が存在しているのに、何故C#なのでしょう?
その答えは簡単です。既存の言語がいくら多くても、すべてに関して満足のいく言語というものは1つも無いという、大きな問題があるからです。
今ではCは既に時代遅れであり、C++という後続言語が使用されています。
C++は、高機能で何でも記述できる自由度がありますが、メモリの管理が自動化されていないため、少しのミスでもメモリを食い尽くすプログラムが出来てしまいます。
Javaは、メモリの管理が自動化されているのでそのような危険はありませんが、どんな環境でも実行できるという構想故に、どうしても機能が限られ思い通りの機能を実装するには不向きです。
Basicは、基本的にデータ型が自動変換される言語であり、これがプログラムの見通しを悪くし、バグの温床になるという構造的な問題があります。データ型を厳密に適用すればコンパイル時に判明してしまうようなバグが、入り込んでしまう危険性があります。また、入門言語ということもあり、APIや難度の高い処理を行うにも不向きです。
このように、どの言語も、現在のニーズにフィットするプログラミング言語とはいえません。これに対するMicrosoft社の結論がC#ということで、C#は他のプログラミング言語と比較したときに以下のような位置付けになります。
- C、C++から見たとき:メモリ管理の自動化によりコーディングが手軽になる。
- Javaから見たとき:より現実的でどんな処理も容易に書ける
- Basicから見たとき:データ型が厳密に扱われ、コンパイラがバグを見つけやすく、より現実的でどんな処理も容易に書ける
もちろん、これはごく大雑把な要約であり、言語間の相違を論じればそれだけで大きな本になってしまうので、ここでは深く触れません。
Visual Studio .NETについて
Visual Studio .NETは、Microsoft社が、.NET構想の開発ツールとして位置付けているもので、基本的にはMicrosft社の人気開発ソフトであるVisual Studioの最新バージョンと言えます。
しかし、従来のVisual Studioが主にWindows向けのソフトウェアを開発するツールであったのに対して、Visual Studio .NETでは主に、.NET Framerwork上で実行するソフトウェアを開発するツールであるという点で、大きな方向転換が行われています。
その違いをよく理解しておく必要があります。
いまのところ違いがはっきりしないかもしれませんが、Windowsとの互換性はなくても.NET Frameworkをサポートした環境が増えてくれば、だれの目にも違いがはっきりと見えてくると思います。
過去のVisual Studioは、Visual C++、Visual Basic、Visual J++を組み合わせた開発環境ですが、Visual Studio .NETでは、Visual J++のサポートが無くなり、その代わりに、Visual C#が追加されました。
Visual Studio .NETでは、C#が最新の代表的な言語となりますが、例えばBasicプログラマーがそのままVisual Basicを使い続けることも可能で、従来からの言語を使い続けるか、それともC#に乗り換えるかは個人の判断で可能となっています。
しかし、効率のよさや生産性の高さを意識するのならば、C#への乗り換えを検討するべきです。
学習の時間を費やしても、その程度は簡単に回収できるほど、開発効率に差があります。
また、C#はカバーする領域も広いので、1つの言語を覚えるだけでさまざまなプログラムに対応することができ、C#は、Visual Basicのように使っても、C++のように使っても、Javaのように使っても、そこそこの実用性を発揮する汎用性の高い便利な言語になっています。
Visual Studio .NETについての具体的な使用法については、次項で掲載します。
最終更新:2009年11月13日 00:35