最近windowsアプリをチマチマ作っているのだが、どうやらフォームアプリケーションってのは時代遅れになりつつあるようだ。 いつの間にかwpfってのが出てきて、windows10以降はuwpというものが主流になる、というか主流にしたいと考えているみたいですね。 Webの世界は本業でもあるけど最近windowsの世界には触れてなかったから浦島太郎気分である。 ちょっとまとめてみましょうか。 はるか昔、VB6とかが主流だった頃はMFCというものがあり、これを使ってwindowsフォームを生成していました。 Visual BasicとかVisual C++ですね。 しかし.netというものが登場するにつれて息を潜め、C#というものが出てきました。 当初C#はあまり人気もなくC++/javaがまだ主流だったと思います。 が、スマホが出てきた頃wpfという形式のwindowsアプリが登場。 xamlと呼ばれるレイアウト定義ファイルを使ってアプリを構築、要はAndroidとかのLayout構成と同じですな。 んでUnityでもC#が採用され、いつの間にかC#はメジャーな存在に。 Xamarinってのを使えばC#でWinもMacもiOSもAndroidも何でも作れる時代になったのです。
そして去年、uwpと呼ばれるアプリ形態が登場。 言ってみればjavaみたいにマルチプラットフォーム化を進めたものです。 仮想マシンを作るわけじゃないけど、unixをベースとしたマシンならほぼどのOSでも共通のアプリが使えるようにwindowsが作り出したもの、という感じでしょうか。
さてこれからどうなるか。 windows10でも未だに昔のフォームアプリケーションは動かせるし、今後もこれが続くのか。 それとも新たなフォーマットが未来を築いていくのか。 僕は元来新しいもの好きですし、とりあえず今回はフォームアプリをある程度まで作ってそっから移行させて行く予定。 学習コストも必要ですから。 ただ、ずっと昔のフォーマットで動かしているアプリはいつ動かなくなってもおかしくない、ってのを頭に入れておいたほうがいいと思いますよ。