なぜUWPは「ダメ」なのか

元々、UWPとは、「Windowsの世界に限って」「ユニバーサル」なアプリを開発できるという。。。具体的には、Windows Phone や Windows デスクトップ で共通のアプリが使えますよ、って話しだった。そしてUWPアプリはiPhoneみたくストアで入手できます、と。

しかし、Windows Phone、こけてしまった。Windows8でのModern UI での失態も絡んで、ストアも不人気で、残念ながらアプリの質も悪いのが多かった。

参考:Windows ストアが盛り上がらない理由

 

UWPもストアにしても、盛り上がらないので、昨年のAnniversary エディションで、「デスクトップのアプリを『コンバート』=パッケージ化した『アプリ』もストアOKですよ」と、WindowsのデスクトップPCでしか動かない(UWPでもユニバーサルでもない)アプリ もストア可に方針転換した。

では、なぜその「失敗」したUWP を推進するかというと、セキュリティ的にアプリの挙動を制限したくて、「UWP=サンドボックスで動かすアプリ」、を標準にしたいという目的と、ストア経由のサブスクリプションでの収益確保にシフトしてるからだと思われます。

なので、現状、

1. UWP技術を使ってUWPとして開発されたUWP、と、

2. AppXにパッケージしただけのネイティブや非ネイティブのストアアプリ、

が混在しています。

*さらに言えば、Xamarin.Forms.UWPという亜種まで存在していますね。

で、ここで話すUWPは、前者の「1.UWP技術を使ってUWPとして開発されたUWP」方。

これを踏まえた上で、

UWPが「ダメ」な理由

“UWP as a desktop app platform is a failure”

1.そもそもの、「クロスデバイス(cross-device)=ユニバーサルを単一のアプリで」、に無理がある。

デスクトップPCと携帯・スマホは、まったく別モノ(別デバイス)と考えるべきもので、元々のUWPの思想であるまったく同じアプリを携帯とPCで動かす、というのはバッドなアイデア。

そういう携帯で動く、という思想で作られたUWPのライブラリやコントロールはデスクトップ上では機能が足りなく、使いにくくて、物足りず、タッチに最適化されているため、コントロールの間隔が空きすぎて、見た目も間が抜けた感じなる。デスクトップPCでストアアプリを起動すると、機能の少ない出来の悪いオモチャみたいに見えてしまう。

タッチ操作とキーボード+マウスの操作性は根本的に違う上に、ディスプレイのサイズによる一覧性の違い(4Kディスプレイと携帯画面)考えると、GUIの設計思想やウィジェットからして、デスクトップとスマホは根本的に別物であるべき。このWordPress含め、普通のサイトだってデスクトップとモバイル向けで表示用テンプレ切り替えてる。

マイクロソフト純正のアプリですら、ショートカットキー、アクセラレーターキーとか完全に無視した(昔だったらマイクロソフトの基準に達してない、と言われるレベル)ものばかり。たとえ対応しているとしても、分からない、という。。。キーボードでサクサク操作できないとか、何を考えているのか。

Appleでの話しだけど、分かってる人は分かってる。

iOS has no concept of a mouse cursor and runs only on touchscreen devices. MacOS has no support for touchscreen devices and requires a mouse pointer. “One user experience” is neither possible nor desirable.

 

https://applech2.com/archives/20171227-marzipan-cross-platform-frameworks-for-macos-and-ios.html

同じアプリで異なるデバイスにおいて共通のUXを、なんて無理であって、望ましくもない、と。それぞれ最適のUIを使え、と。

UWPはあくまで携帯・モバイル向け。デスクトップ向けはWPF、とはっきり区別させるべきだった

しかも、「Windowsファミリー」でユニバーサルなアプリを謳ってしまった以上、もはや省電力軽量なモバイルに特化したOSは開発出来ないという、自ら手足を縛る事になってしまった。

 

2.モバイル向けのサンドボックスに制約あり過ぎる。

元々の経緯だった、Windows Phone でも動きます、という関係上、出来る事が基本モバイル向け。デスクトップで動かすにも、制約があり過ぎてコントロールやライブラリの機能も少なく、開発者にとって、わざわざUWPを選ぶ必要性が(見た目以外に)なくなってしまった。

目的がシフトして以降、最近のバージョンアップでUWPにデスクトップ向けの機能も徐々に追加されてきているけれども、見た目(アニメーションやら)ばかり派手になっていて、業務ソフト的には全然足りない。そもそも別に、FormsやWPFで良いじゃん、という。。。。

Win32やWPFのデスクトップアプリもパッケージ化して、ストアで頒布できるようになった今、UWPの制約<UWPの利点のバランスが悪い。

 

3.そもそも、UWPの「ユニバーサル」って。。。

Windows PhoneとデスクトップのWindowsで同じのが動きますってウリが、Windows Phoneもコケて、存在意義は無くなった。

Windows Forms と WPF があって、UWP、 Xamarin.*も出てきて、.Net 関係のテクノロジーはもうぐちゃぐちゃ。Win 32 の資産を切り捨てるのか、Windows Forms と WPFも、レガシー技術として、このまま放置するのか、マイクロソフトは、一旦、整理して、方向性もはっきりさせるべきでしょう。

 

4.UWPの見た目がダサすぎる。

身も蓋もないけれど、Xamarin.Forms で、iOS と Android、Windows Phone(UWP)版を見比べてみると分かる。全く同じものが、UWPだとナビゲーションもダメ、見た目もダメ。Modern UIを引きずってる。

 

結論

本来であれば、UWPをバッサリ廃止して、Xamarin.Forms を新生UWPとすべきでしょう。あと、デスクトップ向けWPFを「レガシー」とか「クラッシック」とか表記せずに、時代遅れ感をだすのは、ヨシてやってください。とほほ。

 

Leave a Reply