« CO-CONVの節分 | ストレッチの時間だよ! »

はじめましてSilverlight!(プログラマ篇)

CO-CONV 最田ですtamu23

しおラボ Blog: はじめましてSilverlight! で発表しましたが、先週、デザイナの田村と共同で Silverlight 2 の開発を体験してみましたelectric2

20090202_sanmoku.jpg

いままでの開発

今まで、CO-CONV では Windows アプリケーション、Flex アプリケーション、ホームページなどをデザイナーと一緒に作ってきました。そういう場合の開発手順は…
  1. デザイナが全体の画面イメージを作る
  2. デザイナが画面のパーツを画像ファイルとして切り出す
  3. プログラマが 1. の完成イメージを参考に、画像ファイルを画面にあてはめていく
  4. プログラマが全体の動作を調整して仕上げる

といったものでした。

この 3. の作業は、プログラマにとってはストレスとなることが多かったです。

下絵を見ながら、なるべくデザイナの意向に近いものを組み上げなきゃいけないし、あとからデザイナからのちょっとした変更依頼にも応えなきゃいけませんでした。

Silverlight 2 で何が変わったのか

今回は Visual Studio と Expression Blend を使って、この作業フローがどれだけ改善できるのか試してみました。

作業を始めて驚いたのは、1.~3. が完全にデザイナ側の作業になっていたことですhand5
しかも、プログラマとデザイナの作業が完全に独立して進められたので、アプリケーションがほとんどできあがったあとでも、デザイナが見た目を向上したり改善できたのです。


もう1つ驚いたのはソースコードの短さです。今回の「4色三目並べ」で書いたソースコードは300行足らずなのです。

デザインに関する実装がソースコードに現れないので、ロジックのみの本当にシンプルなソースコードになりました。

完成までの流れ

私もこのゲームを作成した5日間を振り返ってみたいと思います。

pin11日目 Visual Studio 2008 SP1 と Silverlight ToolKit の導入。XAML の勉強。ドラッグして盤面に石を置けるようにする。
pin12日目 勝ち判定をいれる。
pin13日目 Visual State Manager の勉強を兼ねてリーチ判定の要素を入れる。
pin14日目 各種アニメーションを導入してみる。といっても、win_animation.Begin(); といったコードを各ポイントに入れていくだけ。
pin15日目 細かいバグをつぶし、何とか公開できる状態に!


なんと、4日目・5日目ではソースコードは10行程度しか修正していません。

それなのに、デザイナにまかせておくと、いつの間にか画面が整っていき、アニメーションが出来上がっていきました。自分の知らないところでアプリケーションの完成度が上がっていく様は今まで体験したことのないものでした。

(今までは、ここをこうしたい、ああしたいという要望がデザイナから周ってきて、他の実装も終わってないのに…、とプログラマの前にタスクがどんどん山積みになっていきました…)

これは今までは体験のしたことがなかったことで、非常にストレスフリーだったのですface1

今後も何か機会があれば Silverlight 2 で業務アプリを開発してみたくなりました。

2007-2009 CO-CONV,Corp

ブログ内に記載されている社名および製品名は各社の商標または登録商標です。