More Related Content
Similar to Ember コミュニティとわたし (20)
More from Ryunosuke SATO (13)
Ember コミュニティとわたし
- 9. 背景
• Rails 開発者も JS を意識せざるをえなくなってきた
• JS のライブラリはたくさんあるけど何を使えばいいの?
• 半年ごとにトレンドが変わる(ように見える)
• つらい
• 今日はちょっと趣向を変えて、コミュニティ的な側面から考え
てみる
- 10. 今日は Ember コミュニティ とわたしのお話
• 他のライブラリとの比較の話はしない
• React はスルー
• Angular もあえて見ない
• それぞれのライブラリで、解決したい問題とアプローチが違う
• Ember コミュニティの話と、そしてわたしがコミュニティどう
関わっているか
- 17. Ember.js
• 歴史
• SproutCore が起源
• 2011 年から開発開始
• 2013 年に v1.0.0 リリース
• 現在のバージョンは v2.1.0 (2015-11-08 現在)
• いわゆるフルスタックフレームワーク
• Routing, Model, Template などをサポート
- 18. フルスタック
バージョン: 2.1.0
• Data binding … 2つ以上のデータを同期させる仕組み。
• Template … オブジェクトの値を変更すると、自動で画面に反映
• Router … URL とアプリケーションを対応付ける
• Component … カスタムHTMLタグ。入れ子にして使う。
• Service … セッションに依存するデータなどを保持
• Ember Data … いわゆるモデル。API と通信してデータを保持す
- 20. チーム
• 創始者: Yehuda Katz(@wycats)
• コミッター: 30人くらい
• コアコミッター: 14人くらい
• その他公式ライブラリを含めると 50 人くらい
- 23. Ember.js について
• コミュニティ主導
• 定例の core team meeting
• 昔は議事録が公開されていたが…
• 各コンポネート毎にエキスパートがいる
• 今後の展望はブログに公開: http://emberjs.com/blog/
• 新機能の提案は RFC で: https://github.com/emberjs/rfcs
- 24. リリース
• Channels: release / beta / canary
• 今後は少し変わる予定 (ref: "Release cycle improvements")
• 定期的に新バージョンをリリース
• feature flag
• エコシステム
• private API を拡張するようなプラグインも大事にしている
• 互換性を大事に。API 変更は deprecation warning を表示する
- 25. エコシステム
• 開発ツール: Ember CLI
• rails コマンドみたいなツール
• ジェネレータ、ビルド、テスト、などをサポート
• 拡張: Ember Addon
• Ember 版 gem みたい
• Ember CLI でインストールする
- 26. Ruby と Ember.js
• @wycats says: "optimized for Developer Happiness"
• Ruby / Rails と同じく、Ember.js もプログラムではなくプログラ
マーにフォーカス
• 実は @wycats 以外のコミッターも Ruby やってたひとが多い
• その昔、ビルドツール群は Ruby 製だった
• SproutCore は gem で配布されてた
• $ gem install sproutcore
- 28. ここ最近のフロントエンド JavaScript
• ようやく JavaScript で本格的なアプリケーションを開発するた
めの土壌が整ってきた
• パターン
• ビルドツール
• JavaScript 自体の仕様
• まだまだ過渡期。これといった一強はない。
• お互いに影響を与えながら進化している(ように見える)
- 32. 2013 年当時の Ember
• 当時は Ember.js 1.0.0.pre4
• Breaking Change 真っ盛り
• 勉強がてらコードとドキュメントを読む
• 少しづつパッチを送るようになる
- 33. Before v1.0.0
• Ember 創世期
• 1週間に1回くらい Breaking Change
• ある日、クロスブラウザのサポートが大変という話を耳にする
• IE はあまりメンテされてなさそう
• IE6~8 対応とか始める
• 直しても数日で壊れるのでまた直す
• 意外とエッジケースの漏れが見つかったり