はじめましてSilverlight!(プログラマ篇)
CO-CONV 最田です![]()
しおラボ Blog: はじめましてSilverlight! で発表しましたが、先週、デザイナの田村と共同で Silverlight 2 の開発を体験してみました![]()

いままでの開発
今まで、CO-CONV では Windows アプリケーション、Flex アプリケーション、ホームページなどをデザイナーと一緒に作ってきました。そういう場合の開発手順は…- デザイナが全体の画面イメージを作る
- デザイナが画面のパーツを画像ファイルとして切り出す
- プログラマが 1. の完成イメージを参考に、画像ファイルを画面にあてはめていく
- プログラマが全体の動作を調整して仕上げる
といったものでした。
この 3. の作業は、プログラマにとってはストレスとなることが多かったです。
下絵を見ながら、なるべくデザイナの意向に近いものを組み上げなきゃいけないし、あとからデザイナからのちょっとした変更依頼にも応えなきゃいけませんでした。
Silverlight 2 で何が変わったのか
今回は Visual Studio と Expression Blend を使って、この作業フローがどれだけ改善できるのか試してみました。作業を始めて驚いたのは、1.~3. が完全にデザイナ側の作業になっていたことです![]()
しかも、プログラマとデザイナの作業が完全に独立して進められたので、アプリケーションがほとんどできあがったあとでも、デザイナが見た目を向上したり改善できたのです。
もう1つ驚いたのはソースコードの短さです。今回の「4色三目並べ」で書いたソースコードは300行足らずなのです。
デザインに関する実装がソースコードに現れないので、ロジックのみの本当にシンプルなソースコードになりました。
完成までの流れ
私もこのゲームを作成した5日間を振り返ってみたいと思います。
1日目 Visual Studio 2008 SP1 と Silverlight ToolKit の導入。XAML の勉強。ドラッグして盤面に石を置けるようにする。
2日目 勝ち判定をいれる。
3日目 Visual State Manager の勉強を兼ねてリーチ判定の要素を入れる。
4日目 各種アニメーションを導入してみる。といっても、win_animation.Begin(); といったコードを各ポイントに入れていくだけ。
5日目 細かいバグをつぶし、何とか公開できる状態に!
なんと、4日目・5日目ではソースコードは10行程度しか修正していません。
それなのに、デザイナにまかせておくと、いつの間にか画面が整っていき、アニメーションが出来上がっていきました。自分の知らないところでアプリケーションの完成度が上がっていく様は今まで体験したことのないものでした。
(今までは、ここをこうしたい、ああしたいという要望がデザイナから周ってきて、他の実装も終わってないのに…、とプログラマの前にタスクがどんどん山積みになっていきました…)
これは今までは体験のしたことがなかったことで、非常にストレスフリーだったのです![]()
今後も何か機会があれば Silverlight 2 で業務アプリを開発してみたくなりました。

