初めてのWebアプリ

今回初めてWebアプリを開発した。ょ
とは言っても、
実際に使えるレベルのものってわけじゃなくて
展示会でデモに使うためのプロトタイプをね。
その割りには、
デザイナーさんとコラボしたりと割りと本格的だったかな。


構成は、


サーバーというかネットワークのセキュリティに始まって、
Webアプリの実装まで、一通り学べたかな?
一応、チームで開発して作業分担もしたから、
わかってないとこあるけど。


サーバーの設定では、

  • IPアドレスの設定
  • iptablesの設定
  • cron-aptを使った定期アップデート
  • sshを認証キーのみのログイン

なんかをやった。
Apache2とかPHPとかPostgreSQLの設定は完全に
任せてしまったけど。


今回の実装はまず、
紙の上で画面やら機能やらをひたすら議論して
(の割りには、けっこーアバウトなとこ多かったなぁ)
それをデザイナーさんがイラレ化して、
さらにそれをHTML+CSSで書き直してもらった。


ある程度できたとこで、
Ajaxをどう実装するか考えてて、一方でDBを考えてもらってて。
DB構成がある程度決まったところで、
HTMLをPHPで書き直してってしてた。
と言ってもPHP化の際はDB接続部分は後回しで、
SQLでこんなデータが返ってくるってのを仮定して実装。
最後にDBアクセス部分を実装して終わった。


う〜ん、最後までHTML+CSSに修正が入りまくりだし、
PHP化は、デザイナーさんが作業しづらくなるだろうと思って先延ばしにしてたり、
HTML+CSSを完全にデザイナーさん任せにしたもんだから、
Ajaxを実装するときにアーキテクチャ的にちょっと困ったり。
そこら辺をどううまくやるかが課題かな。


デザイナーさんとの協業においては、
subversionの使い方を教えるべきだったのか、
テスト環境を用意するべきだったのか。


HTML+CSSがあったおかげで、
デザインを全く考えずに実装できたのは良かったと思う。
あとはやっぱり、研究室の仲間の存在!
初めて扱うAjaxやらPHPについていろいろ教えてもらい議論した。
仲間って大事だなぁ〜ほんと><


次回の作業方法の提案としては、

  1. 紙の上で画面と機能を議論
  2. イラストレーターで画面構成を具体化しつつ、機能の詳細を練る。
  3. アーキテクチャをデザイナーさんと共有(名前の付け方やタグでの囲い方など)。
  4. HTML+CSSに落とし込みつつ、DB構成を考える。
  5. DBにアクセスして得られる値を過程して、HTMLをPHP化。
  6. Ajaxを実装(5.と同時もしくは前でもいいかも)。
  7. DBアクセスを実装。

こんな感じ?
ちょっとてきとーすぎるかも。。。