データ指向環境

iPod のメモ帳をメールでGmailの受信トレイに送ったら、どのコンピュータでもどのプラウザでも読みだすことができるようになった。Gmailの受信トレイのテキストファイルであれば、いろいろな方法でそのデータを再利用することができる。

こうして見ると、最も大切なのは、データの互換性であることが分かる。データの互換性という観点から見ると、テキストファイルが一番だ。しかし、テキストファイルは、構造を持ったデータを扱うことができない。

一方、XMLはテキストファイルの互換性を保ちながら構造を持ったデータを記述できる。実質のデータよりもタグの分量の方が多くなりやすいが、人間による可読性も高い。ただし、XMLの場合、プログラミングの際にバーサを記述するのがたいへんだった。しかし、.NETではXMLの構文解析を行なうクラスが装備されている。このため、XMLをデータとして取り扱うのがかなり簡単になるようだ。

こう考えてくると、データ指向の環境では、アプリケーションが、テキストファイル又はXMLファイルを入力データとしてとり、出力としてもやはりテキストファイルかXMLファイルを出力するという形になるだろう。.NET ではさらに、XMLファイルをネットワークを介してやり取りするための仕組みが備わっている。したがって、.NETでプログラミングするということは、Windows OS で動くプログラムを作るという以上の意味があることになる。今のところは、Windows OS の環境でしか動かないが、出力されたXMLデータには汎用性がある。

また、.NET のプログラミング環境の中では、C#を使った開発が楽しそうな気がする。

.NET 環境でプログラムを作る限りは、Visual Basic で作ろうが、Visual C++ で作ろうが、Visual C# でつくろうが、そういうものがあるかどうかは分からないが、Perl.NET や Ruby.NET で作ろうが、同じCLIのプログラムができあがる。Ruby.NETができれば使ってみたいが、今のところは C# が一番すっきりとしたプログラムが書けるような気がする。

たとえば、C# で一見使い道が分からない namespace 構文だが、ファイルシステムのフォルダーだと思うと直感的に理解できる。OS のファイルシステムのディレクトリや、フォルダーにはファイルが収められているが、C# の namespace には、クラスが収められている。つまり、C#ではファイルシステムでファイルを取り扱う感覚で、プログラムのクラスを取り扱うことができるのだ。そう考えると、using キーワードが、クラスへのショートカットを作る働きをしているというふうにファイルシステムのアナロジーで考えることができる。

そのほかにも、C#はキーワードや構文が簡潔で、可読性が高い。また、C の文法を引き継いでいるので、新しい言語の学習をするときの垣根が低い。なにより、言語としてのセンスが良さそうなので、プログラムを書いていて楽しい。

そういうわけで、しばらくはプログラミングに関しては C# に取り組んでみたくなった。
[PR]
by tnomura9 | 2010-01-20 06:24 | C# | Comments(0)
<< C#の学習のためにはRubyを知ろう 便利だった iPod touc... >>