Railsのフロントエンド開発を考える

Preview:

Citation preview

Rails のフロントエンド開発を考える - JavaScript フレームワーク

Ruby/ Ruby on Rails ビギナーズ勉強会 第 9 回2015/12/19 平田智子

about me•平田智子(ひらたともこ)

•新潟県生まれ、大阪出身です

•普段は vb.net で開発しています• web 勉強歴はもうすぐで1年

• Facebook:hirata.tomoko• blog:http://tomoko-tsubasa.hateblo.jp/

agenda

•フロントエンドとバックエンド•AngularJS•Backbone.js•Knockout.js•どれを選ぶ?

フロントエンドとバックエンド

View

Controller

Model

RubyonRailsフロントエンド側 バックエンド側

HTMLCSS

Javascript

AngulerJS

+Rails gem 'angular-gem'

MVW(MVC) モデル

フルスタック型フレームワーク ( 双方向バインディング、ルーティング、 REST API…)

機能が多いため学習コストは高い

構造化、部品化がしやすい

TypeScript と相性が良い

公式サイト

Backbone.js

公式サイト

MVW(MVC2) モデル

underscore.js に依存

軽量なフレームワークで自由度が高い

ルーティング機能 / サーバとの通信機能

Rails/CoffeeScript と相性が良い

+Rails( 代表例 )    gem 'rails-backbone'    gem 'backbone-on-rails'

Knockout.js

公式サイト

MVVM モデル

バインディングに特化したフレームワーク

シンプルでわかりやすく学習コストは低い

構造化が弱いため大規模開発には不向き?

TypeScript と相性が良い

+Rails gem 'knockoutjs-rails'

どれを使う?

一人でさくっと作る / 小規模の開発 → 習得済のもの or 学習コストだけなら Knockout.js

複数人で作る / 中~大規模の開発 → 既習得者がいるもの  or Backbone.js    データバインディングが重要なら AngulerJS ? 

おしまい