もう Windows Forms で UI を開発することは難しいのでしょうか?(1)

仕事柄、お客様からは利用するべき UI テクノロジーの選択について相談を受けることがよくあります。なかでもよく聞かれるのが、「リッチな UI を作るのであれば、もう Windows Forms を使うべきではないのでしょうか?」といった質問です。

もちろん「リッチ」の定義にもよるのですが、多くの場合要件を細かく聞いていくと「特に Windows Forms で開発しても問題ない、むしろ望ましい」と考えられるケースが想像以上に多いことがわかっています。UI テクノロジーの選択の基準はいくつかありますが、第一に要件に対するフィット感を確かめ、次に現在保有しているスキルセットとの連続性を考えることになります。そのため、要件的に十分であった場合には、現在利用しているテクノロジーを利用するのが最もリスクの低い行為であり、歴史の長い Windows Forms においては未確認のバグもほとんど無い状態でテクノロジーが枯れており、都合の良いことも多いのです。

リッチ UI に対して寄せられるニーズは大きく下記のようなケースが大多数を占めます。

1.スタイルを適用したい
2.柔軟なレイアウトを行いたい
3.利用したい UI コントロールが無い/機能が不足している

もし上記のような理由でWindows Forms の採用をやめ、別のプラットフォームに移行しようとしているのであれば、一旦弊社のコントロール製品である NetAdvantage For Windows Forms をぜひ一度ダウンロードいただき、実現できる機能をチェックしてみてください。弊社の製品の中でも最も歴史が長く、多くの市場からの要望に応えながら今日に至っているだけに、多くの良くあるニーズを満たすことが可能です。

トライアル版をダウンロード!

それでは順を追って課題を見ていきましょう。まずはスタイルです。

ユーザーインターフェイスに一貫性や統一感をもたせるにあたり、利用されているコントロールに対するスタイル設定はとても重要であり、iOSに代表されるなどの影響もあって現在注目されている領域です。多くの業務アプリケーションではデフォルトの状態のコントロールが使われていることが多いのですが、スタイル設定によって「仕上げ」処理を行うことにより、クオリティはずいぶん違って見えることも事実です。ここで問題になるのは、「設定できることがわかっていても時間をかけることが難しい」と判断されていることが多いことです。iOS や Windows Phone を例にとって考えみると、コントロールに適用されているスタイルはしっかりと一貫性を持っているため、利用していて非常に統一感を感じますが、スタイルデザインは単純な一枚絵を作るよりもずっと複雑な作業になります。

例えば、ボタンはmouseOver などのイベントに対して幾つかの状態を持っており、それぞれに対してボタンの形状や色の設定を持っている必要があります。かつ、通常はラベルを設定できるため、可変長の文字列を内包できるようにしなければなりません。XAMLならばかなり細かくこれらの設定を行うことが可能ですが、それでもなかなか骨の折れる作業となります。

そこで、もう少し手軽にスタイル設定を行う方法が望まれることになります。弊社では Windows Form で利用可能な AppStylist というツールをご提供しております。このツールを利用することで、用意された多くのプリセットのスタイルライブラリを適用することができ、スタイルライブラリの内容に変更を加える形で新たなスタイルライブラリを作ることも可能になっています。詳細は下記のBLOG記事を御覧ください。

アプリケーションデザインツール NetAdvantage AppStylist ご存知ですか?
NetAdvantage AppStylist ご存じですか? その2


[ AppStylist ]

AppStylist 自体はかなり細かい設定を行えるツールです(画面キャプチャをみていただければ多くの設定項目があることがわかります)が、2011 Vol.2 では新たに Office 2010 Black / Silver というスタイルライブラリも追加し、たくさんのスタイルライブラリを利用することができます。これらをそのまま使うもよし、少しだけ変更して使うもよし、というところですが、まずは「IG」というスタイルライブラリから確認してみてください。このスタイルライブラリは比較的最近用意されたもので、弊社のデザインチームがゼロからデザインしているものになります。Windows Form / Web / XAML それぞれの製品で同じデザインのスタイルライブラリを適用できるように用意していますので、まずはこちらをベースに検討されてみてはいかがでしょうか。

再掲となる部分も多かったのですが、今後しばらくは Windows Forms に再びフォーカスをあてて、スタイル以外にもレイアウトやコントロール利用の観点から掘り下げていきたいと思います。お楽しみに!

Developer Summit 2012 : 【16-D-1】UI のこれまでの10年とこれから

10周年となった Developer Summit 2012 にて、「【16-D-1】UI のこれまでの10年とこれから 」として講演をさせて頂きました。初日の最初のセッションということと、当日寒い朝だったので結構参加者がまばらになるのではないかと思っていたのですが、最終的には立ち見が出る満席状態となりました。参加いただきました皆様、ありがとうございました!トピックとして、非常に皆様の悩まれていることそのものだったのだろうと感じた次第です。

セッションの資料につきましては、SlideShare にアップロードさせて頂きましたので、ご興味の有る方はごらんいただければと思います。

10周年という記念すべき瞬間に講演を担当させていただき、とても光栄です。20周年でもお話できるように、これからも頑張っていきたいと思います。

また、先日のBLOG記事でも紹介した、100人のプロが選んだソフトウェア開発の名著 君のために選んだ1冊も無事発売されました。非常に良いメッセージの詰まった本ですので、是非書店などで手にとって見てください。

最後になりますが、講演でもお話ししていたように、様々な観点から開発のスピードを加速していくことが、これまで以上に重要になってきています。そのための選択肢として、是非弊社の NetAdvantageUX ワークショップをご検討いただければと思います。特に NetAdvantage に関してはトライアル中もサポートを提供しておりますので、試用検討中などの期間にコードサンプルもあるサンプルページとあわせてご活用いただき、皆様の武器の1つとして利用いただければと思います。是非トライアルをお試しくださいませ!

NetAdvantage トライアルダウンロード

3月も別の場所で講演を予定しております。別途告知させて頂きますので、お楽しみに!と

Book : 「100人のプロが選んだソフトウェア開発の名著 君のために選んだ1冊」

2月の16日(木)17日(金)の2日間で開催される Developer Summit 2012 に合わせて、多くのスピーカーを含む100人のプロフェッショナルから、1冊ずつ様々な書籍を紹介している100人のプロが選んだソフトウェア開発の名著 君のために選んだ1冊という書籍の執筆に参加させて頂きました。

なんと、出版元の翔泳社様のご厚意で、書籍に出ている内容を著者のBLOGにて掲載してもよし、ということになっておりますので、本 BLOG にも掲載させていただきたいと思います。


「アイデアを発想しないヒトに、もう対価は払われません。」

- 東 賢が、顧客のためのソフトウェア開発に関わる全てのプロフェッショナルに贈りたい1冊 -

イノベーションの神話 Scott Berkun 著、村上 雅章 訳、オライリー・ジャパン(2007)」

「若い頃からソフトウェアの世界に可能性を感じていた私は、必ずヒトの働き方や生活を変えることが出来る!と希望を大きく膨らませてこの業界に身を置く決断をした学生の一人でした。大きくはなくとも、私の「提案」が何を変えられるかもしれない、と考えていたいのです。しかし残念なことに、特に受託開発をやっている方とお話しすると「最終的には顧客がすべての決定権を持っているため、提案しても受け入れられない」というようなご意見を多く聞きます。随分と受身で、希望に満ちた世界とは少し違うようです。顧客が最終的な決定権を持っていることについては、資本主義社会に生きる以上疑問の余地はありませんが、同時に顧客は、その道のプロフェッショナルに対して、暗がりを明るく照らすような的確な助言や、困難な課題に対するアイデアを求めているに違いありません。例えば外食の時、なんのひねりもない既製品を喜んで食べたいと思うことは、普通ないでしょう。自分では作ることができない/作ることはできても時間のかかってしまう何かに対して、プロフェッショナルが「仕事」をした成果を求めているはずです。

一方、ソフトウェアの世界には「既製品」にあたる選択可能な代替品は存在しない、全てが注文建築である、という意見があります。しかし、注文建築でも、壁紙などの資材を一から作ることは殆ど無く、限られた資源のなかでどのように既製品を組み合わせて独創性を生み出す、あるいは、一握りの本当にどこにもない部分を作り出す余裕を生み出すことに集中することがほとんどです。これこそ、資源が限られた中でのアイデアの勝負です。

『イノベーションの神話』は、独創的なイノベーションを生み出すことが、特殊な限られた人間だけが持つ奇跡的な才能であるかのような神話=迷信を、丁寧に、ウィットに満ちた文面でゆっくりと崩していきます。イノベーションと聞くとスティーブ・ジョブズやレオナルド・ダ・ヴィンチが成し遂げたような偉業をイメージしてしまいますが、もっと身近に「発想」「アイデア」「解決策の提案」と読み替えても間違いはないと思います。イノベーションに関わる神話を壊していきながら本書は、イノベーションの種/待ち受ける難関/そこへ至る道/何故否定されたり採用されたりするか/優れたアイデアの探し方/マネジメントとイノベーターの摩擦/意思決定者に影響を与えるファクター/問題との向き合い方など、発案のキーポイントに関するヒントをたくさん与えてくれます。

弊社が提供しているような開発生産性を高めるツールがあったり、これまで高価だったインフラがクラウドという形で提供されるようになったりすることで、「これまで同様にソフトウェアを粛々と設計し、開発する」という行為だけでは、顧客に対して価値を提供することが難しくなっています。コストをオフショアと単純に比較されたりするのではなく、どのようにして広い意味での提案=付加価値を、開発組織がアプリケーションという「応用」で提供することが出来るのかが、これまで以上に求められるようになっています。

私たちと私たちの顧客の前には、タッチユーザーインターフェイスの拡大やマルチデバイス需要の拡大など、多くの技術的不連続面も立ちはだかっています。そんな時だからこそ、提案することを辞めず、価値提案をすることをあきらめないでいただきたいのです。私が現職で働いているのは、多くの方が発想をしやすい環境/時間を作り出すためのお手伝いをしたいと思っているからにほかなりません。そのためのツールを提供し、ワークショップでは発想のベースともなるブレインストーミングなどの練習も皆さんと行なっています。この点で、著者がこの書籍を執筆した意図に強く賛同しています。

ストアなどの流通形態を通じた海外からのソフトウェアの流入などで、狭い日本も「狭さを理由にできない事態」に直面するはずです。だからこそ、小粒かもしれませんが、ピリッとするようなアイデアで価値を提供し続けるために、是非本書から多くのヒントを手に入れてください。顧客ためのみならず私たち自身のためにも、アイデアで、この業界を一緒に盛り上げましょう!」


いかがでしたでしょうか。「イノベーションの神話」は今手にとって見ても非常に良い本だと思いますので、是非読んでみてください。紙面の都合で書ききれなかったことも多いのですが、昨今の事情も踏まえて加筆を予定しております。その際には、そちらも再度公開させて頂きます。

既にデブサミは満員御礼の状態と伺っておりますが、会場ではこの書籍の販売も行われるようです。恥ずかしい気もしますが、サインなどもさせていただくことになっております。会場にお越しの方は、是非お声がけください。それでは、デブサミ会場でお会いできるのを楽しみにしております!