> 株式投資は、Jin Kirin(キン・キリン)のアナリストレポートを見ればいい。権威的で、専門的で、タイムリーで、包括的で、あなたの潜在的なテーマの投資機会を掘り起こすのを助けます! (出所:快科技)快科技3月25日によると、元マイクロソフトCTOで、マイクロソフトに23年間在籍したJeffrey Snoverが最近、長文のブログ記事を公開し、マイクロソフトが過去数十年にわたってGUI(グラフィカル・ユーザー・インターフェース)で繰り返してきた揺れ動きを体系的に整理し、Windows開発エコシステムが断片化へ向かった理由を明らかにした。まず時系列を1980年代に戻す。当時のWin16およびWin32 APIは、すべてのWindows開発者に対して一貫した開発のパラダイムを提供しており、開発者は一度学ぶだけで、ほぼすべてのWindowsアプリケーションのシナリオをカバーできた。技術系著者Charles Petzoldが執筆した『Programming Windows』は全852ページに及び、デスクトップアプリ開発の“聖典”とみなされている。1990年代になると、マイクロソフトはMFC、COM、OLE、ActiveXなどの技術でWin32の制約を突破しようとした。Snoverは、これらのコンポーネントのアーキテクチャが「Windows開発のあらゆる隅に浸透し、前例のない認知の複雑さを持ち込んだ」と指摘した。開発者会議では、マイクロソフトの技術ストーリーが細切れになっていった。Snoverは容赦なく、当時のテーマ演説を「keynote clusterf*ck」と形容した。2003年、マイクロソフトはWindows Longhornの技術的なビジョンを示した。その中でAvalon(後にWPFに改称)は、GPU加速に基づくXAMLのベクターレンダリング子システムであり、技術力は非常に強力だった。だが2004年8月、マイクロソフトは突然方針転換し、すべての新規開発ではC++の使用を求めた。WPFはWindows Vistaとともに登場したものの、Windows Shell自体はそれを採用しなかった。この判断は、Windowsエンジニアリングチームと.NETチームの間に深い亀裂を生んだ。Snoverは、内部の矛盾が最終的にWPFの“見捨て”(放棄)につながり、Silverlightが死に、UWP(ユニバーサルWindowsプラットフォーム)は登場した瞬間から失敗が確定していたと述べた。2007年、マイクロソフトはWPFがすでに自らの実力を証明していたにもかかわらず、再び方向転換してSilverlightを打ち出した。2010年、マイクロソフトは突然、Silverlightはクロスプラットフォーム開発に適していないと発表し、HTML5こそが未来の方向性だとした。SilverlightはWindows Phone開発にのみ使われることになり、Silverlightに大きく賭けていた開発者は手痛い不意打ちを食らった。2012年のWindows 8のリリースへと話を進めよう。ネイティブC++ベースのWinRTランタイムが導入されると、Windowsチームの.NETへの敵意によって、後者への10年にわたる投資が瞬時に切り捨てられた。Snoverは当時の混乱を次のように描写している:「マイクロソフトは社内で同時に2つの物語を語っている。WindowsチームはWinRTをやっていて、.NETチームもWPFを推している。別の建物、別の副社長、別のロードマップ。開発者が//Build 2012で聞かされたのは、未来はWinRTで、同時にHTML+JSは一級市民で、同時に.NETも使えて、同時にC++も戻ってきて、同時にMetroアプリを書くべきだが、そしてWPFのコードもきちんと動く――ということだ。これは戦略ではない。『ハンガー・ゲーム』だ。6つのチームがあなたの注意を奪い合っている。企業開発者はUWPのサンドボックスの仕組み、強制されるアプリストアでの配布、そして欠けているWin32 APIを一目見て、引き返して去っていった。」Snoverは、過去14年の間にマイクロソフトがWindowsのGUIフレームワーク推奨方針を14回転換してきたと指摘している。現在のWindowsプラットフォームでは計17種類のGUI技術が共存しており、5種類のプログラミング言語をカバーしている:マイクロソフトのネイティブフレームワーク:Win32(1985)、MFC(1992)、WinForms(2002)、WPF(2006)、WinUI 3(2021)、MAUI(2022)マイクロソフトのWebのハイブリッド案:Blazor Hybrid、WebView2第三者の案:Electron(VS Code、Slack、Discordはいずれも使用しており、Snoverは特に、これは現時点でWindows上で展開が最も広いデスクトップGUI技術であり、マイクロソフトとは一切関係がないと指摘している)、Flutter(Google)、Tauri、Qt、React Native for Windows、Avalonia(JetBrains、GitHub、Unityが使用しており、Snoverは皮肉で、これらの開発者は「もはやマイクロソフトを待っていない」と語っている)、Uno Platform、Delphi、Java Swing/JavaFXSnoverは自作の言葉「boof-a-rama」を使って、現在の状況を「賢い人が愚かなことをしている」と表現し、彼は強調する。マイクロソフトが出している技術そのものは、多くの場合、往々にして決して悪くはない。実際にそれらをダメにするのは、技術上の欠陥ではなく、内部の政治、開発者会議であまりにも早い段階での方針転換の宣言、そして混乱した商業戦略だ。Petzoldの『Programming Windows』は2012年の第6版(Windows 8/WinRTをカバー)以降、更新されておらず、もしかすると、このような予測不能な断片化への最良の注釈なのかもしれない。Snoverは1989年にマイクロソフトに入社し、Partner Architect、Distinguished Engineer(2009)、Technical Fellow兼首席架构师(2015)、CTO(2019)などを歴任した。2022年に退職してGoogleに加わり、2025年に正式に引退した。彼がマイクロソフト内部の運用モードを理解していることから、このブログ記事の信頼性は言うまでもない。 海量资讯、精准解读,尽在新浪财经APP
マイクロソフト前CTOが長文で告発:Windowsは一鍋状態に!14年で14回の変革、17種類のGUIが共存
(出所:快科技)
快科技3月25日によると、元マイクロソフトCTOで、マイクロソフトに23年間在籍したJeffrey Snoverが最近、長文のブログ記事を公開し、マイクロソフトが過去数十年にわたってGUI(グラフィカル・ユーザー・インターフェース)で繰り返してきた揺れ動きを体系的に整理し、Windows開発エコシステムが断片化へ向かった理由を明らかにした。
まず時系列を1980年代に戻す。当時のWin16およびWin32 APIは、すべてのWindows開発者に対して一貫した開発のパラダイムを提供しており、開発者は一度学ぶだけで、ほぼすべてのWindowsアプリケーションのシナリオをカバーできた。
技術系著者Charles Petzoldが執筆した『Programming Windows』は全852ページに及び、デスクトップアプリ開発の“聖典”とみなされている。
1990年代になると、マイクロソフトはMFC、COM、OLE、ActiveXなどの技術でWin32の制約を突破しようとした。Snoverは、これらのコンポーネントのアーキテクチャが「Windows開発のあらゆる隅に浸透し、前例のない認知の複雑さを持ち込んだ」と指摘した。
開発者会議では、マイクロソフトの技術ストーリーが細切れになっていった。Snoverは容赦なく、当時のテーマ演説を「keynote clusterf*ck」と形容した。
2003年、マイクロソフトはWindows Longhornの技術的なビジョンを示した。その中でAvalon(後にWPFに改称)は、GPU加速に基づくXAMLのベクターレンダリング子システムであり、技術力は非常に強力だった。だが2004年8月、マイクロソフトは突然方針転換し、すべての新規開発ではC++の使用を求めた。
WPFはWindows Vistaとともに登場したものの、Windows Shell自体はそれを採用しなかった。この判断は、Windowsエンジニアリングチームと.NETチームの間に深い亀裂を生んだ。
Snoverは、内部の矛盾が最終的にWPFの“見捨て”(放棄)につながり、Silverlightが死に、UWP(ユニバーサルWindowsプラットフォーム)は登場した瞬間から失敗が確定していたと述べた。
2007年、マイクロソフトはWPFがすでに自らの実力を証明していたにもかかわらず、再び方向転換してSilverlightを打ち出した。
2010年、マイクロソフトは突然、Silverlightはクロスプラットフォーム開発に適していないと発表し、HTML5こそが未来の方向性だとした。SilverlightはWindows Phone開発にのみ使われることになり、Silverlightに大きく賭けていた開発者は手痛い不意打ちを食らった。
2012年のWindows 8のリリースへと話を進めよう。ネイティブC++ベースのWinRTランタイムが導入されると、Windowsチームの.NETへの敵意によって、後者への10年にわたる投資が瞬時に切り捨てられた。Snoverは当時の混乱を次のように描写している:
「マイクロソフトは社内で同時に2つの物語を語っている。WindowsチームはWinRTをやっていて、.NETチームもWPFを推している。別の建物、別の副社長、別のロードマップ。
開発者が//Build 2012で聞かされたのは、未来はWinRTで、同時にHTML+JSは一級市民で、同時に.NETも使えて、同時にC++も戻ってきて、同時にMetroアプリを書くべきだが、そしてWPFのコードもきちんと動く――ということだ。これは戦略ではない。『ハンガー・ゲーム』だ。6つのチームがあなたの注意を奪い合っている。
企業開発者はUWPのサンドボックスの仕組み、強制されるアプリストアでの配布、そして欠けているWin32 APIを一目見て、引き返して去っていった。」
Snoverは、過去14年の間にマイクロソフトがWindowsのGUIフレームワーク推奨方針を14回転換してきたと指摘している。現在のWindowsプラットフォームでは計17種類のGUI技術が共存しており、5種類のプログラミング言語をカバーしている:
マイクロソフトのネイティブフレームワーク:Win32(1985)、MFC(1992)、WinForms(2002)、WPF(2006)、WinUI 3(2021)、MAUI(2022)
マイクロソフトのWebのハイブリッド案:Blazor Hybrid、WebView2
第三者の案:Electron(VS Code、Slack、Discordはいずれも使用しており、Snoverは特に、これは現時点でWindows上で展開が最も広いデスクトップGUI技術であり、マイクロソフトとは一切関係がないと指摘している)、Flutter(Google)、Tauri、Qt、React Native for Windows、Avalonia(JetBrains、GitHub、Unityが使用しており、Snoverは皮肉で、これらの開発者は「もはやマイクロソフトを待っていない」と語っている)、Uno Platform、Delphi、Java Swing/JavaFX
Snoverは自作の言葉「boof-a-rama」を使って、現在の状況を「賢い人が愚かなことをしている」と表現し、彼は強調する。マイクロソフトが出している技術そのものは、多くの場合、往々にして決して悪くはない。実際にそれらをダメにするのは、技術上の欠陥ではなく、内部の政治、開発者会議であまりにも早い段階での方針転換の宣言、そして混乱した商業戦略だ。
Petzoldの『Programming Windows』は2012年の第6版(Windows 8/WinRTをカバー)以降、更新されておらず、もしかすると、このような予測不能な断片化への最良の注釈なのかもしれない。
Snoverは1989年にマイクロソフトに入社し、Partner Architect、Distinguished Engineer(2009)、Technical Fellow兼首席架构师(2015)、CTO(2019)などを歴任した。2022年に退職してGoogleに加わり、2025年に正式に引退した。彼がマイクロソフト内部の運用モードを理解していることから、このブログ記事の信頼性は言うまでもない。
海量资讯、精准解读,尽在新浪财经APP