WebアプリケーションやWebサイトを開発するにあたってAjax JavaScriptフレームワークは重要なポジションを占めている。開発も活発だ。しかし主要なものだけでもいくつものフレームワークがあり、どれを選択すればいいのかわからないというのがWebデベロッパの抱える重大な問題だ。
結局のところこれらAjax JavaScriptフレームワークでは最終的におなじことを実現するために、それぞれが違うAPIを実装していることになる。実装は似ている部分も多く、さらに開発が進につれてほかのフレームワークの利点が取り込まれる。どれを選択するかといった決定打に欠けるわけだ。
そこでAjaxianにおいて紹介されているThinking about the difference between frameworksのJohn Resig氏のプレゼンテーション資料に注目したい。John Resig氏はjQueryの主要開発者でありMozillaでJavaScriptエバンジェリストを務めている。同氏はjQuery、Prototype、Yahoo UI、Dojo、MooToolsという主要なAjax JavaScriptフレームワークを取り上げ実装方法の違いや提供している機能違い、ファイルサイズ、採用ケース、ライセンスなどさまざまな視点から比較を同プレゼンテーション資料で紹介している。
OSS JavaScriptライブラリ - JavaScript Libraries by John Resigより抜粋 |
Google TrendにみるJavaScriptライブラリの傾向 - JavaScript Libraries by John Resigより抜粋 |
結局のところどのAjax JavaScriptフレームワークを選択すべきかは、適用するプロジェクトにどれが一番適切かを判断する必要があり、複数の要因をみてバランスよく判断する必要がある。その点、John Resig氏のまとめた資料はかなり価値があるといえる。一目でわかりやすいように比較がまとまっている。どのJavaScriptフレームワークを使えばいいか迷っている場合には検討材料に加えるといいだろう。
有名なフレームワークはほかにもあるのだが、いくつかの理由から紹介されていない。Ext JSが取り上げられていないのは開発が閉じているからとされ、ASP.NET Ajaxが入っていないのは.NETデベロッパ向けだから、GWTが入っていないのはJavaデベロッパ向けだからだと説明されている。