私の目標は、既存のWebアプリケーションをRESTful シングルページアプリケーション(SPA)に移行することです。現在、いくつかのJavascript Webアプリケーションフレームワークを評価しています。
私の要件は次のとおりです。
- RESTfulデータレイヤー(ember-dataなど)
- MV *構造
- 動的ルート
- テストサポート
- 慣例によるコーディング
- SEOサポート
- ブラウザー履歴サポート
- 良い(API-)ドキュメント
- 生産準備完了
- 生活コミュニティ
背骨
現在のアプリケーションはを使用していbackbone.js
ます。全体としてbackbone.js
は素晴らしいプロジェクトですが、どこで何が発生し、どのように実装する必要があるかを決定する明確に定義された構造がありません。大きなチームで変化する開発者と作業することは、ある種の構造化されていないコードにつながり、メンテナンスが難しく、理解が困難になります。これが、フレームワークを探している理由です。このフレームワークはすでにすべて定義されています。
エンバー
私はember.js
最後の日を調べました。このアプローチは私にとって非常に有望なようです。しかし、残念ながら、コードはほぼ毎日変更されます。だから、私はそれをプロダクションレディとは呼びません。そして、残念ながら、それがバージョン1.0になるのを待つことはできません。しかし、私はこのフレームワークの背後にあるアイデアが本当に好きです。
角度
Angular.js
同様に広く普及しているフレームワークであり、Googleによって維持されています。しかし、私は角度に慣れることができませんでした。私にとっては、構造が不明瞭に思われ、フレームワークの各部分の全体的な責任の説明が欠落しており、実装は遠回りに感じています。正直に言うと、これは私の個人的な印象であり、知識の欠如に基づいている可能性があります。
バットマンと流星
私が理解したように、どちらのフレームワークにもサーバー部分が必要です。また、RESTfulバックエンドが必要なだけなので、言語、技術、ソフトウェアに関係なく、これは私たちが望むものではありません。さらに、バックエンドAPIはすでに存在しています(RoR)。
ノックアウト、CanJS、Spine
これら3人の候補者については、これ以上詳しく説明しませんでした。多分これが私の次のステップになるでしょう。
だから今私の質問:
- 優れたSPAフレームワークがありませんか?
- どのフレームワークを提案/推奨しますか?
- 言及されているフレームワークを回避しますか?
- より大きなSPアプリケーションでの経験は何ですか?
PS:"JSの玉座"会議(2012年から)とJavaScriptフレームワーク全般について、スティーブンアンダーソン(Knockout.jsのコア開発者)からのすばらしいブログ投稿をお勧めしたいと思います。
PS:はい、私はSOについてすでにいくつかの質問があることを知っています。しかし、SPAの開発は非常に迅速かつ迅速であるため、それらのほとんどはすでに古くなっています。