最新版 |
編集中の文章 |
1行目: |
1行目: |
− | '''.NET Framework'''(どっとねっと・ふれーむわーく)とは、[[マイクロソフト]]が開発した任意の[[プログラミング言語]]に対応可能なアプリケーション開発、実行環境である。
| + | .NET Framework(どっとねっと・ふれーむわーく)とは、マイクロソフトが開発した任意のプログラミング言語に対応可能なアプリケーション開発、実行環境である。 |
| | | |
− | 一般に'''.NET'''という場合、.NET Framework全体の環境を指す。 | + | 一般に.NETという場合、.NET Framework全体の環境を指す。 |
| | | |
− | == 標準規格と独自拡張 ==
| + | == 国際標準規格 == |
− | === 国際標準規格 ===
| + | .NET Frameworkでもっとも重要な実行コード形式や実行環境を定めた[[共通言語基盤]]([[CLI]])や[[基本クラスライブラリ]]([[BCL]])などの基盤部分について、マイクロソフトが特許を主張しないことを明言したことをうけ、Ecmaインターナショナル、ISO、JISなどにおいて国際標準規格となった。 |
− | .NET Frameworkにおいてもっとも重要な実行コード形式や、実行環境を定めた[[共通言語基盤]]([[CLI]])、[[基本クラスライブラリ]]([[BCL]])などの基盤部分について、[[マイクロソフト]]が特許を主張しないことを明言したことをうけ、Ecmaインターナショナル、ISO、JISなどにおいて国際標準規格となった。 | |
| | | |
− | これによりマイクロソフト以外のベンダーが独自に.NET Framework実装することが出来るようになり、実際に[[Xamarin]]による[[Mono]]プロジェクトをはじめ、いくつかの[[オープンソース]]による実装プロジェクトがある。それらを使うことで.NET Frameworkで[[コンパイル]]した[[プログラム]]を[[Linux]]や[[Mac OS X]]などの[[Windows]]以外の[[OS]]でも動かすこともできる。 | + | これによりマイクロソフト以外のベンダーが独自に.NET Framework実装することが出来るようになり、実際に[[Xamarin]]による[[Mono]]プロジェクトをはじめ、いくつかのオープンソースによる実装プロジェクトがある。それらを使うことで.NET FrameworkでコンパイルしたプログラムをLinuxやMac OS XなどのWindows以外のOSでも動かすこともできる。 |
| | | |
− | .NET Frameworkの標準規格となっている部分は、[[C言語]]などの標準規格化している他の言語や実行環境と比べ、圧倒的なほど広範囲にわたっている。
| + | == プログラミング言語 == |
− | とくに標準ライブラリ(基本クラスライブラリ)は類を見ないほどの規模となっている。
| |
− | | |
− | === 独自拡張 === | |
− | [[マイクロソフト]]による.NET実装にしろ、[[Xamarin]]による[[Mono]]実装にしろ、[[ソニー]]による[[PlayStation Suite]]実装にしろ、ほぼ標準規格外の独自拡張が行われている。
| |
− | | |
− | 近代OSではほぼ共通な部分を標準化することで、もっとも重要な[[ビジネスロジック]]部分は共有でき、かつUIなどのハードウェア固有に近い部分は独自実装を許すことにより、そのOS、ハードウェアの性能を100%近く引き出すことが可能となっている。これにより[[iPhone]]や[[iPad]]などのApple製品が[[Adobe Flash]]を採用しない最大の理由として掲げた[[クロスプラットフォーム]]を追及しすぎ「最大公約数」となる問題を回避することができ、かつある程度のクロスプラットフォーム化を実現できる<ref>http://www.apple.com/hotnews/thoughts-on-flash/</ref>。ようするに重要なのはバランス感覚という思想が.NET Frameworkの根底にある。
| |
− | | |
− | == 主なプログラミング言語 ==
| |
− | .NET Framework上で利用可能な主な[[プログラミング言語]]の実装について列挙する。なお、これは有名どころを集めただけの一部であり、その他にも莫大な数の実装が存在している。
| |
− | * [[C Sharp|C#]]
| |
− | * [[F Sharp|F#]] - [[OCaml]]
| |
− | * [[Phalanger]] - [[PHP]]
| |
− | * [[IronRuby]] - [[Ruby]]
| |
− | * [[IronPython]] - [[Python]]
| |
− | * [[IKVM.NET]] - [[Java]]
| |
− | * [[IronJS]] - [[JavaScript]]、F#で書かれてる。
| |
| | | |
| == 関連項目 == | | == 関連項目 == |
− | * [[基本クラスライブラリ]]
| |
| | | |
| == 参考文献 == | | == 参考文献 == |
− | {{reflist}}
| + | <references /> |
| + | |
| + | == 外部リンク == |
| | | |
| {{stub}} | | {{stub}} |
− |
| |
− | [[category:.NET Framework]]
| |