開発者と近づくWebデザイナー
iKnow!ってなに?
本連載では、成長を続けているソーシャルWebサイトのデザイナーやデベロッパーがどのように開発に取り組んでいるのか、そのノウハウについて紹介します。
それでは、Webアプリケーションを作るためのいくつかのテクノロジーやプロセス、さらに、開発者とデザイナーの仕事、いわばユーザーが使う部分とシステムで動かす部分がクロスオーバーする部分、つまりプレゼンテーション層について考えていきましょう。
突然ですが、読者の皆さんはiKnow!をご存じでしょうか。2007年10月に開設され、現在では22万人以上のユーザーが登録をしている、語学学習に特化した無料で使えるソーシャル・ラーニング・Webサイトです。
iKnow!のコアにあるのは、Webアプリケーションとリッチでインタラクティブな学習アプリケーションです。ユーザーが学習を通じて、ソーシャルアクティビティを行うことで、今まで1人では長続きしなかった学習から、より早く学んで、より長く覚えるための学習が可能になりました。
Webアプリケーションは、Ruby on Railsで開発され、学習アプリケーションは、Adobe Flashを使って開発をされています。
今回は、Webアプリケーションに焦点をあてて紹介していきます。特に最新のプログラミング言語、インターフェース開発技術、さらに組織化されたワークフロー・プロセスを取り入れた、Webアプリケーションのインターフェースデザインと開発に注目します。
Ruby on Railsでの開発
iKnow!のWebアプリケーションとデータサービスは、Ruby on Railsで開発されています。Ruby on Railsは、最小限のコードで、短時間でバックからフロントまでのシンプルなWebアプリケーション開発を容易にする、比較的新しいWebプログラミングのフレームワークです。
フレームワークベース開発の1つの利点は、時として複数人で流動的な開発チームの管理を効率化します。つまり、その開発に限られた知識の習得にかかる時間を減らすのです。
Ruby on Railsのフレームワークは、mvc(model view controller)パターンに基づいています。すべてに当てはまるとはいえませんが、インターフェースのコードファイルは、app/viewフォルダにあります。そして、インターフェースのデベロッパーが、アプリケーションをデザインする時に、よく使うフォルダです。ファイルシステムのフレームワークと並んで、Ruby on Railsは、洗練されたWeb開発のためのコンセプトに基づいたフレームワークを提供します。
そのフレームワークは命名規約とコード文法に関連するベストプラクティスを提供します。Ruby on RailsはOSに依存しないので、筆者は、Aptana Studioを自分のIDE(統合開発環境)として使っており、多くの開発をWindows XP上で行っていますが、デザイナーの中には、Mac OSX環境を好む人いるでしょう。iKnow!は現在、Ruby on Rails 2.0で開発されています。