BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース .NET プラットフォームの分岐問題

.NET プラットフォームの分岐問題

原文(投稿日:2010/10/20)へのリンク

.NET プラットフォームの分岐問題

長い間,.NET のプラットフォーム依存問題を理解するのはやたすいことだった。使用されているほぼすべてのものが,.NET Compact Edition または完全版のいずれかに対する互換性を持っていたからだ。利用者のほとんどいない .NET Micro を除けば,気にかかるようなものは何もなかった。ところが最近,状況がかなり複雑になってきたのだ。

バージョンの違いを無視すれば,何らかの形で CLR が動作するプラットフォームは,現時点で 13 種類になる。基本的なクラスライブラリと思われる部分のサポート状況は,個々のプラットフォームでまちまちだ。加えて,プラットフォーム独自のコアライブラリも数多くある。それらは以下のリストにあるプラットフォーム間で共有されていたり,あるいはされていなかったりする。

  • .NET
  • .NET Client Profile
  • .NET Compact Edition(おそらく非推奨)
  • .NET Micro
  • Mono
  • MonoDroid (プライベートベータ)
  • MonoTouch
  • Silverlight
  • Silverlight for S60 (ベータ)
  • Windows Mobile 7 版 Silverlight
  • Windows 版 XNA
  • XBox 360 版 XNA
  • Windows Mobile 7 版 XNA

この上さらにプラットフォーム固有のバージョン,COM や p/invoke から呼び出すのに必要な CPU 固有のビルドなどが組み合わされるとなれば,依存関係衝突の泥沼に陥るのは誰の目にもあきらかだ。

Chris Hardy 氏は MonoDroid で Nupack を使用 する際の問題を提起し,それに対応する機能要求(feature request) を行った。ほぼ同時に Phil Haack 氏が,GUI レベルにおけるフィルタリングの提案 についてポストしている。このように Microsoft 内外の人々がパッケージ管理を重要視しているので,この件が依存性に関する問題として継続することはない,と期待してよさそうだ。一方でこれらすべてのプラットフォームにおけるテストについては,プロジェクト個々の問題として残されるだろう。

この記事に星をつける

おすすめ度
スタイル

BT