コンポーネント

神秘的な「Vistaアプリケーション」

株式会社博展 - 東芝実績動画

株式会社博展 - 東芝実績動画
Anonim

事例:Windows Vistaと「app gap」

Evans Data Corporation(EDC) 、開発者の10%未満がマイクロソフトの現在の最先端技術のための執筆です。大多数(49%)は依然としてXP向けであり、小規模ながらも成長する偶発的なもの(13%)はLinuxに重点を置いている。一方で、数多くの主要メディアが、新しいVistaアプリケーションの不足を解消し続けています。 「それは誰も望んでいないOSだ」と彼らは言う。開発者はそれに応じて対応している。もちろん、彼らは間違っている。

[さらに読む:Windows 10の最高のトリック、ヒント、微調整]

Vistaアプリケーションのようなものはありません。 XPアプリケーションのようなものはありません。またはWindows 2000アプリケーション。 Windows用の開発者は、特定のバージョンを対象とすることはめったにありません。むしろ、MFC / ATLや.Netなどの特定のAPIフレームワークを選択し、そこから処理を進めます。作成されたアプリケーションが特定のWindowsバージョンで動作するかどうかは、開発者がプロ​​ジェクトで使用するバージョン固有のAPI拡張機能(存在する場合)によって異なります。

大部分のアプリケーションタイプでは、 API関数を使用して、そのフレームワークをサポートする任意のバージョンのWindowsで実行できます。 Microsoftは従来のOSプラットフォームに新しいフレームワークをバックポータルで移植しているため、開発者は豊富なAPI機能または幅広いインストールベースの選択肢に遭遇することはほとんどありません(特にDirectX 10を活用するビデオゲーム開発者Vistaにコミットする)。

Vista全体の「app gap」の議論はちょっとしたストローマンです。実際の質問は:なぜ、開発者は.Netフレームワークのさまざまな反復を利用していないのでしょうか?マイクロソフトの開発ロードマップに従う人は誰もが証明しますので、同社の最先端のAPIの進化の大部分は.Net内で行われています。実際、Vistaの新しいプログラムリソース(Windows Presentation Foundation(WPF)、Windows Communication Foundation(WCF)など)について「エキスパート」が話すとき、彼らは実際に.NET Framework 3.0について話しています。.Net 3.0はWindows XPのような下位プラットフォームで利用できるので、議論は開発者の間の.Netの受け入れの質問に回って回っている - なぜ彼らは(今まで)それを避けたのだろうか?

答えは2つです:まず、開発者は、インストールされたベースで広く利用できないAPIをターゲットにすることを好まない。マイクロソフトの下位バージョンの積極的なサポートにもかかわらず、20MB以上の複雑なライブラリをダウンロードしてシステムのさまざまな部分にインストールした後も、「利用可能」と「利用可能」の間に大きな違いがあります。実際、.NETはWindows XPの一部として出荷されていないということです。つまり、開発者は、.NET Frameworkの必要なバージョンを最初にインストールしてから、ソフトウェアをインストールする前にユーザーに説得する必要があります。特にエンタープライズITのロックダウンされた世界では簡単に売れる。

デフォルトで.Netフレームワークがインストールされた最初のOSとして、Vistaは.Net 3.0アプリケーションの開発を促進するはずだった。ただし、従来のWin32、COM、ATL、MFC、およびダウンレベルの.Netフレームワークアプリケーションもサポートしているため、Vistaプログラムの実際の不足はありません。実際、WPF / WCFフレームワークの最新かつ最高の機能を持っていなければ、開発者である.NET 3.0や2.0へのジャンプを促すことはほとんどありません。ユーザーアカウント制御(UAC)の仕組みにぶつからないと仮定した場合、あなたの「レガシー」WindowsアプリケーションはおそらくVistaのように見た目と機能が素晴らしいでしょう。 UAC(大部分は一時的なファイルを新しくディレクトリ構造から保護する)に対応するためにいくつかの調整が行われていて、私のアプリケーションとサービスはVistaの下でチャンピオンのように走っていた。 Windows XP、Server 2003、およびWindows 2000。なぜそれが壊れていないときに修正しますか?

開発者が.Netを捨てた2番目の理由は、遅いということです。多くの一般的な機能は.Netの下では時間がかかり、開発者はAPIの洗練と未処理のパフォーマンスのどちらかを選択する必要があります。パフォーマンスデータヘルパー(PDH)の.Netに相当するものがすべてWindowsのパフォーマンスカウンタデータのリアルタイムサンプリングに使用できなかったことが判明したとき、私はかつて強制していたので、ほとんどの開発者は後者を選択しました。その結果、Visual Studio 6コードベースのエージング(1997年頃)を維持しなくてはならず、Microsoftが最終的に.Netを合理化して実行可能な代替点にするのを待っています。

結論:アナリスト(そしてメディアの共犯者)が「Vistaアプリケーション」の欠如を否定すると、彼らは自分の無知をうかがうだけです。

私はそれがMacのこと:現代の現代人の多くは現実の歪みの分野に巻き込まれ、APIの機能とOSのバージョンとの間のリンクという考えが従来の知恵の一部として受け入れられています。アップルのバージョン依存関係のパッチワークをMicrosoftの不完全ではあるが、はるかに柔軟性のあるAPIのスプロールとみなす正直な間違いだ。

あまりにも多くの果実があなたにそれを行うだろう。