レポート

これからの業務アプリにXAMLがもたらす可能性―「ECHO Tokyo 2017」で見えた業務アプリ開発の未来

この記事を読むのに必要な時間:およそ 1.5 分

スマートフォン時代のUI/UXデザイン

スマートフォンの普及は,業務アプリのUI/UXにどのような影響を及ぼすのでしょうか。

津留:

リッチなUXを実現したスマートフォンアプリが当たり前になって,UXに対するユーザの目が肥えてきていると感じます。マニュアルなど読まなくても,やりたいことができるUXが理想ですよね。ユーザがそういうリッチなUXに慣れてくると,業務アプリにしたところで,よりグラフィカルなUIや,ときにはアニメーションなども使って,ミスを防いだり,生産性を向上させたりするニーズが増えてくるのではないでしょうか。

津留季子氏

津留季子氏

デスクトップPCばかりでなく,スマートフォンでも業務アプリを利用する場面が増えています。アプリをWeb化して,スマートフォンのブラウザからアプリを使えるようにするのが1つの方法といえます。しかし実行性能や,機能的な条件(スマートフォンの通知機能を利用するなど)から,iOSやAndroidのネイティブアプリケーションの開発が必要になるときも出てきます。

ここで重要となるのがXamarin.Formsです。Xamarinは,.NET開発者には馴染み深いC#を使って,iOSやAndroid,Macなどのクロスプラットフォームに対応したネイティブアプリケーションを開発するためのプラットフォームです。そしてXamarin.FormsというUIパーツなどを提供するフレームワークを利用してXAMLで記述することで,iOS/AndroidアプリのUI(の一部)を共通化できます。iOS/Android以外にも,Windows 10で動作するUWPアプリのUIも共通で記述可能です。使い慣れたC#を使い,より少ない開発工数で,クロスプラットフォーム対応アプリを開発できるというわけです。

とはいえ,Xamarin.Formsを使えば全てが解決するというわけではありません。⁠ECHO Tokyo 2017」では,著名企業の公式アプリなど,数々のスマートフォンアプリ開発の実績があるフェンリル⁠株⁠の伊藤伸裕氏と太田川洋氏が,Xamarin/Xamarin.Formsを利用した開発の実際を紹介しました。

Xamarin.Formsを用いてアプリ開発を行う上で考慮すべきポイント(⁠ECHO Tokyo 2017」におけるフェンリル 伊藤伸裕氏/太田川洋氏のセッションより)

Xamarin.Formsを用いてアプリ開発を行う上で考慮すべきポイント(「ECHO Tokyo 2017」におけるフェンリル  伊藤伸裕氏/太田川洋氏のセッションより)

ここに書かれているように,クロスプラットフォーム開発が可能といっても,現実にはOSごとの実装が必要だったり,Xamarin.Formsフレームワークでは提供されないUIを独自に実装したりする必要もあります。

2016年2月,マイクロソフトはXamarinを買収し傘下に収めました。⁠Xamarinがマイクロソフトの傘下に入ったことで,一番期待しているのは品質の向上です。またマイクロソフトのサポートが受けられるという点も,業務アプリ開発者にとっては安心材料でしょう」と福地氏は言います。

Xamarin.FormsでもXAMLを利用しますが,他のプラットフォームにおけるXAMLとは語彙が大きく異なっています。そこで語彙を統一するために登場したのがXAML Standardです。品質の向上と語彙の統一が進むことで,Xamarin.Formsはさらに魅力的な選択肢となるでしょう。

XAML&WPF&MVVMで過去資産を未来に生かせるコード資産に

XAMLが業務アプリの可能性を広げてくれるのはこれまで述べたとおりですが,既存のコード資産をXAMLベースの技術へと移行させていくことはできるのでしょうか。ECHO Tokyo 2017では,エス・ビー・エス⁠株⁠の須藤隆一郎氏よるセッションで,過去のコード資産をWPF化する際に考慮したポイントや,工夫したポイントが紹介されました。

エス・ビー・エス 須藤隆一郎氏のセッションでは,既存のWindows FormsアプリのWPF化におけるキーポイントが語られた

エス・ビー・エス 須藤隆一郎氏のセッションでは,既存のWindows FormsアプリのWPF化におけるキーポイントが語られた

このセッションでは「古いコード資産をMVVMを使用したWPFアプリ化」することで,将来的なWebアプリ化までを見据えたコードへと再構築するまでに,どんな面で工夫をしたのか,どんなところで迷いが生じたかが語られました。MVVM(Model-View-ViewModel)とは,モデル,ビュー,ビューモデルの3つの部分でアプリケーションを構成し,保守性や開発生産性向上を図るアーキテクチャパターンです。

結論からいえば,既存コード資産のXAMLベース技術への移行は可能です。しかしその道程はとても容易と言えるものではなかったようです。XAMLやWPFのメリットを充分に活かすには,MVVMを利用するのが妥当ですが,現実には従来のイベントドリブンな方法を利用するかどうかを迷ったこともあったそうです。

津留:

どうすればアプリケーションをメンテナンスしやすくできるのかは,個々の事情で変わってきます。MVVMの適用指針,ガイドラインのようなものがあれば,XAMLベースの技術はもっと普及するかもしれないですね。

当然といえば当然ですが,XAMLベース技術への移行は簡単ではありません。しかし他のプラットフォームに移行することに比べれば,C#言語などこれまでの開発スキルを活かせる部分は大きいはずです。移行実績も増えてきており,何よりマイクロソフトのサポートも受けられます。山を乗り越えれば,拡張の道が事実上絶たれた古いコード資産を最新のプラットフォームに対応させ,その可能性を大きく広げることができるのです。

XAMLを使ってみよう!

最後にお二人から,XAMLを活用した業務アプリ開発に乗り出そうという開発者に向けたメッセージをいただきました。

福地:

開発者がアプリケーション開発の能力や可能性の幅を広げるには,スキルの習得やツールの選択と活用が必要です。WPFやUWP,Xamarinの最新開発プラットフォームでベース技術として広く活用されているXAMLは,そうした要素を持っています。

津留:

開発者の方も皮膚感覚で「アプリケーションのUIやUXが変わりつつある」と感じているのではないでしょうか。その直観は正しいと思います。新しいUIやUXの必要性は確実に高まっています。今後,マウスとキーボードばかりに最適化されたものとは全く違う業務アプリが増えてくるはずです。その流れに乗るためのキーワードの1つが「XAML」です。XAMLを身に付けることで,キーボードとマウスだけに制限されない新しいサービスを,新しいデバイスで,新しいユーザに提供できるようになります。こうして開発された新しい業務アプリは,開発者にはビジネスの拡大をもたらし,ユーザにはコンピューティングの新しい可能性を広げてくれるでしょう。

「ECHO Tokyo 2017」の各セッションの詳細な内容についてはComponentOne Informationをご参照ください。

コメント

コメントの記入