2580


はじめまして。JavaScriptのフレームワークについて質問します。

AngularやEmberやBackboneなどのフレームワークがありますが、 みなさんはどういった理由・観点からフレームワークを選定しますか？

アプリケーションの種別とニーズに応じて選ぶべきだと思うのですが、 例えばどんなときに、何のフレームワークを選べばよろしいのでしょうか？


CC BY-SA 3.0
2014-12-25T12:23:16.370
2576
2014-12-26T01:42:30.807
2014-12-25T12:32:35.817
208
5748
question
javascript framework
JavaScriptのフレームワークの選定について


フレームワークとはMVW(MVWhaterver)のことだとして話をします。

流行り廃りが激しい環境なので、枯れているかという点より、今現在どの程度アクティブにメンテナンスされているかが最も重要です。Githubの最終コミットが3ヶ月以上前のものは基本的に避けています。

とはいえ、開発/運用期間中にメンテナンスが放棄されることもあるので、自分はリスクを避けるために一つのライブラリの役割が目的に対して単機能であり、単機能故に学習コストが低く、アプリ全体の設計としてモジュールがいつでも置き換えられるかどうかを重視しています。(これが理由で自分はリスク面でAngularを採用していません。が、これに関しては恐らく自分と異なる意見があるという点を付記しておきます)

その上で、求められるパフォーマンスと生産性のバランス、あとはプロジェクトメンバーのスキルセットを考慮して考えます。スキルが有るメンバーがいるならReactを推していますが、あまりJavaScriptのスキルが高くないメンバーが含まれないなら時期尚早かもしれません。

  * Backbone.js系に違和感がないならMarionette.js
  * 単純なデータバインドが欲しいなら Vue.js/Knockout.js
  * 資料の少なさを乗りきれて、ある程度規模が大きくパフォーマンスを要求するならReact
  * 疎結合なコンポーネントを大量に統合するならAngular

色々使ってきましたがここらへんが現実的に取りうる選択肢だと思います。
500行未満ならjQueryも選択肢になるでしょうが、最近はダメな設計への割れ窓になりがちなので使用を控えたいと思っています。


CC BY-SA 3.0
2014-12-25T13:51:07.013
2580
2014-12-25T13:51:07.013
2674
2576
answer