UWP向けFlantter 「Flantter.MilkyWay」のαテスト
昨年の3月からちまちま作っていた3世代目のFlantter 「Flantter.MilkyWay」のαテスト的な何かを開始しました。
Flantter.MilkyWay
2世代目のFlantter.Cascadeと明らかに違う点が幾つか存在します。
- カラムの選択方法
- 従来の方式からスマートフォンなどでよく見受けられるスライドでカラムを切り替える方式に
- デザインの変更
- SettingsFlyout(脇から出てくる画面)もテーマにそって色が変わるように
- メモリ使用量と起動速度
- 以前に比べて軽量かつ高速になっている(はず)
内部的な話をするならばFlantter.MilkyWayはFlantter.Cascadeのソースコードをほぼ流用していません。一から作成しました。 これはスパゲッティになったコードをほぐすためであります。
ダウンロードはこちらよりどうぞ
インストールにはWindows10を開発者モード (又はサイドローディングモード?) に切り替える必要があります。
なぜUWP?
UWP向けで無料のツイッタークライアントにはストアにはほとんどないと思います。 しかしながら、UWPのアプリは従来のデスクトップ向けアプリやMetroアプリと呼ばれるWindows8, 8.1時代のアプリと比べて、 起動やメモリ使用量を高速にできるという大きな利点があります。
そこで3世代目のMilkyWayはUWPで作り、さくさく快適なツイッター体験をできるような形で作ろうと思い制作しました。
その他
ネーミング
MilkyWayに特に意味はありません。 ただ、目についた単語をサブタイトル的な形でつけただけです。
ストアにいつ出すか
αテストと銘打ってますがストアに出さないかぎり大半の人に使ってもらうことはできないと思っています。 なので時間を少し置いて問題がなければWindows10向けにストアに出そうと思います。(大体1ヶ月後くらい)
その時に現在のストアからFlantterを削除し、Flantter.CascadeをFlantterに改名。 名前を変えたFlantterでWin8.1向けにCascade, Win10向けにMilkyWayを配信しようと考えています。
なのでCascadeで寄付した時に使用できる機能はMilkyWayでも使用することが可能です。
技術的なお話
Flantter.MilkyWayはできるだけMVVMっぽく書くことを常に心のどこかに置いて作成していました。 その上で使用したReactivePropertyはModelとViewの間のViewModelをシームレスに繋ぐことができてホントにおすすめです。
https://github.com/cucmberium/Flantter.MilkyWay
Flantter.MilkyWayの軽量化に関する話や、画像プレビューで使用したコードとか、 資料として残しておきたいと感じる話は多々あるので時間ができ次第このブログにまとめようかなと思います。
感想
1年2ヶ月もかかってようやく完成(しかもCascadeにあった一部機能は未実装)なのでよっぽどモチベーションがなかったのだなと思いました。 Flantterに関してはもう1からソースコードを書き直すことはないので、今作成したMilkyWayをちまちまアプデしていく感じになる予定です。
アプリを作成して思ったことといえば、「UWPに関してMicrosoftの本気が見えるくらいかなり力が入ってる(と思われる)のにイマイチ盛り上がりに欠けているなぁ」ということです。 自分としてはそれなりに(デスクトップとモバイル、Xboxなどを一気に取り込める)魅力的な市場であると思うので、もっと市場が活発になってくれるといいなと心から思っています。