2007年01月06日

コード8000行のPHP商用ツールをCakePHPフレームワークに移植!

大手も利用しているというスライドショー管理ツールを、CakePHP用に書き直したてんまつがまとめられた記事です。

Baking with CakePHP
http://blog.bradleyboy.com/2007/01/05/baking-with-cakephp/

このスライドショー自体はFlashでできているそうですが、なんでも、ESPNや、Rolling StoneThe New York Timesでも使われているそうです。

この方、仕事の片手間に書いたSlideShowPro Directorのコードが 8000行近くになり、メンテナンスのことも考えてフレームワークの利用を決意したそうです。

なぜCakePHPにしたのか、という理由ですが、

So, my focus sharpened to the growing list of PHP frameworks available. CakePHP stood out for two reasons. One, it was initially built as “Rails for PHP”, and although much has changed since then, it was easy to get up on my feet without having to relearn terminology and best practices. Second (and this was huge), CakePHP works on both PHP 4 (4.3.2+) and PHP 5 while most other PHP frameworks support only PHP 5. Just as a switch to Rails would have cost us sales in droves, so would suddenly limiting our target platforms to those who only had PHP 5. By my very non-scientific observations, I would say two-thirds of our customers are still on some flavor of PHP 4.

と書いています。すでに多くの顧客がいて、そのサーバはPHP4もあればPHP5もある、PHP4のユーザを切り捨てるわけにはいかないし、今だっておよそ3分の2の顧客はPHP4を使っている、ということが理由でした。既存客のニーズを満たすためにはPHP4にも対応していなければなりませんね。

結果として、自前で書いた 8000 行のコードは、フレームワークを使うことによって、2000行をメンテナンスするだけでよくなり、"75% reduction in MLOC"という結果になったそうです。

結論として、

In the end, we are more than pleased with the decision to go with CakePHP. We only had to change one minor requirement that affected less than 1% of our user base, before we had only required PHP 4.3.0 and now we require 4.3.2. Director still works on Linux, Unix, Mac or Windows servers. Being able to hit all those deployment targets without forking the code was a big accomplishment in my eyes

と書かれています。

この記事から分かることは、新規案件のみならず、既存のコードが多くなりすぎてメンテナンスしにくくなっているプロジェクトに対しても、フレームワーク上に載せる開発作業には大きなメリットがある、ということ、すでに商用アプリケーションレベルのものに対しても実績が出来ている、ということです。

あなたのプロジェクトは、大きくなりすぎて身動きが取れなくなっていませんか……。(^_^)
ラベル:cakephp SlideShowPro
posted by SDozono at 11:28| 東京 ☔| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
手(パー)To make a comment: Please type your name and comment. at the validation field box, type 'cakephp'. And there two glay buttons. "Preview"/"Submit". Thank you!
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。