.NET Framework フォーラム:こだか かおる
2006/03/23
「略語」というのは、理解している人にとっては基本事項ですし、そうでない人にとっては「いったい何だろう?」となってしまうものです。特にコンピュータ界隈の略語にはアルファベット 3文字のものが多く、混乱の元となっています。今回は、.NET Framework 関連の略語を紹介しつつ、「.NET Framework」とは何か、あらためて確認してみることにしましょう。
ときたま見かける略語として「BCL」というものがあります。これは、Base Class Library の略で、基本となるクラスライブラリのことです。.NET Framework には多くの名前空間に分けられた無数のクラスが存在していますが、それらを総称して BCL と呼ぶことがあります。ただし、それほど一般的に使われる用語ではありません。MSDN ライブラリで調べてみると、なぜか用語としては出てこなかったりします。
それはさておき、もうひとつ忘れてはならないのが「CLR」です。
これは Common Language Runtime の略称です。共通言語ランタイムのことで、.NET アプリケーションは、このランタイムの上で動作することになります。このふたつで .NET Framework と呼ばれるプラットフォームを構成しています。ライブラリとランタイム、両方が揃って、ようやくアプリケーションを実行できる環境になるというわけです。
最後に紹介するのは「CLS」、すなわち Common Language Specification です。これはあまり耳にしたことがないという人も多いかもしれません。画面をクリアするコマンドのことではないので、そのあたり、間違えないように気をつけてください。これは何かというと、共通言語仕様のことで、ようするに CLR で利用できる共通言語がどのように定義されているか、ということを意味します。
この仕様に沿ったインターフェイスを公開することで、CLR 上で動作するさまざまな言語から利用できるようになるというわけです。
特定の言語のみで開発しているときは、あまり気にする必要はありませんが、他の言語からも利用するライブラリを作成するときなどに気をつけなくてはいけないケースもあるでしょう。そのようなときは CLSCompliantAttribute 属性を利用します。この属性を付けたクラス・アセンブリでは、CLS に準拠しないプログラムコードがコンパイル時にエラーとなります。なかなか興味深い機能ですので、機会があったら、ぜひ調べてみてください。