.NET Framework / CLI
CLI (Common Language Infrastructure) および.NET Framework、Mono、DotGNU Portable .NET、そしてCLI用の言語C#、C++/CLI、IronPythonなどの話。
ヘルプ
Mono でプログラミングしているとMSDNが手元にない状態になるので、ここからみましょう。
オフィシャルの .NET Framework クラス ライブラリ
特によく使う System.Windows.Forms 名前空間
仕事では一番頻繁に覗いてます DOBON.NET .NET Tips (VB.NET, C#, Visual Studio...)
環境
CLI環境 (という言葉がどうなのかは置いておいて) は.NET Frameworkだけではないですよ。こちらはともにフリーの環境です。
Mono
Mono Project による、CLI環境
- Novellがサポートしているそうな。
- 主な対応言語は
- C# まあ、もちろん
- Java、Boo (静的型付けのPythonみたい)、Nemerle、VB、Python、Oberon、PHP、Object Pascal が大きく書いてある
- マイナーどころでは、#Smalltalk、DeltaForth、DotLisp
- うーん、F# に早く対応して欲しいなあ…
Mono 感想
(gblog から転載)
Mono をインストールしてみました。Monoって言ってもいろいろありますが、いわゆる、.NET Framework 互換環境の Mono です。
から1.2.6を落としてきいの、インストールしいので、まったく問題なく動きます。 公式サイトのチュートリアルをやってますが、いい感じですね。 チュートリアルでは、プログラムの実行は
mono hello.exe
と書けと書いてますが、HelloWorld程度なら、Gtk# を使わないものはそのまま
hello.exe
で動くみたい。 さて、IDEはどれがいいのだろう。
SharpDevelop
Mono用にIDEとして、SharpDevelop 2.2 を落としてきました。
これはすごい。UIは VisualStudio 以外の何者でもない。VisualStudio を使い慣れた人なら、何の問題もなく開発できるでしょう。むしろ、フォームのデザイナ・コードの切り替えがタブになっているので、逆に使いやすいともいえます。「おぉぉ!」という感嘆の声が止まりませんでした。
日本語入力も問題なさそう。ソースコードに日本語を含めると、UTF-8で保存しますか、と聞かれるので yes と答えておけば、問題なく表示された。デバッグも出来るし、これさえあればC#での開発は十分、という感じ。
とにもかくにも、C#、Mono、Winforms を使えば、Windows、Linux、MacOS X のマルチプラットフォームで開発が簡単に、しかもフリーソフトウェアだけで出来るわけで。いい時代になったものです。
DotGNU Project
GNUプロジェクトが推進する DotGNU Project。
CLI環境 DotGNU Portable .NET を作っています。
言語
CLI環境用の言語たち
Nemarle
公式サイト: Nemarle Homepage
- Wikipediaを見ていて知った言語。どうやらこんな言語らしい: (公式サイトの文言を適当に拾いました)
- 高級言語
- 静的型付け
- 関数型プログラミング
- オブジェクト指向
- 手続き型プログラミング
- C#風文法
- メタプログラミング
- .NET か Mono で動くようです。
- あとはC#なみのインテリセンスがあれば…C#の強みってつまり、ソースコードを書くときに (VB並みの) 支援をVisualStudioから得られることだと思うのだよな。
F#
- .NET 対応の OCaml
- いろいろと本家 OCaml より使いにくいとの噂
- Monoでは使えないとの噂
- うーん…
- ぐぐりにくいので、リンク集
- Visual Studioの補完機能はとてもうまく動いているらしい。
