第1回.js系勉強会

■イベント開催レポート http://goo.gl/Q98GG ■イベント開催概要ページ http://atnd.org/events/30767
2
こばやし 'にらたま' けんいち @Niratama

そういえば、Angular.jsでModelの修正を外部に同期させる場合ってどうするんだろう #techbuzz

2012-08-29 20:15:11
matsuu @matsuu

#techbuzz 続きまして、Backbone.jsでつくるWebアプリケーション @hokaccha さん

2012-08-29 20:16:08
matsuu @matsuu

#techbuzz Backbone.jsとは何か JavaScriptのMVCフレームワーク。圧縮版で5.6KBと軽量。作者はCoffeeScript、underscore.jsなどを開発しているJeremy Ashkenas氏

2012-08-29 20:17:18
pi9min @__pi9min

Backbone.js軽いなー5k弱とか #techbuzz

2012-08-29 20:17:19
matsuu @matsuu

#techbuzz 他のJavaScript MVCフレームワークとしては、Spine, AngularJS, Ember.jsなどがある

2012-08-29 20:18:11
こばやし 'にらたま' けんいち @Niratama

次のBackbone.jsはAngular.jsとは対極なフレームワークなのかな #techbuzz

2012-08-29 20:19:04
matsuu @matsuu

#techbuzz まず普通にVanilla JSで書いたサンプル。規模が大きくなった時に管理しきれなくなる。

2012-08-29 20:19:41
matsuu @matsuu

#techbuzz 対策としては、とにかく分ける。ファイルを分ける。役割を分ける。機能を分ける。そうすることで、再利用、分業、テストが可能になる。

2012-08-29 20:20:20
matsuu @matsuu

#techbuzz Backbone.jsを導入することによって、役割、機能の切り分けができる。大規模な子度の保守性などが解決できる。

2012-08-29 20:20:57
matsuu @matsuu

#techbuzz Backbone.jsが解決しないこと。コード量は削減されない。プログラムは高速化されない。小規模なコードの保守性は向上しない。短期的には生産性は向上しない(長期的には向上するけど)

2012-08-29 20:22:09
pi9min @__pi9min

割と好き勝手できるのねBackbone.jsは。自分でほしいものは書け!ってのは好感が持てる #techbuzz

2012-08-29 20:22:14
matsuu @matsuu

#techbuzz ControllerはBackbone.RouterとBackone.History。ModelはBackbone.ModelとBackbone.Collection。ViewはBackbone.View

2012-08-29 20:23:01
matsuu @matsuu

#techbuzz Modelを子要素にしてまとめたものがCollection

2012-08-29 20:23:46
matsuu @matsuu

#techbuzz あーいいね。それぞれ疎結合でイベントを各モデルとビューで処理できるのか。いいねー

2012-08-29 20:26:05
ないさろーる @nysalor

VとMが直接結びついているのか #techbuzz

2012-08-29 20:26:43
matsuu @matsuu

#techbuzz ライブコーディング開始。開発環境はOSX。FTP/SFTPクライアントにForkLiftってのを使われてる。ブラウザはChrome。エディタはVIM。本題と関係ないけどメモ。

2012-08-29 20:28:02
matsuu @matsuu

#techbuzz Backbone.jsはunderscore.jsとjQueryに依存している。

2012-08-29 20:29:02
matsuu @matsuu

#techbuzz Backbone.Viewなどはクラス。Backbone.View.extend()で継承されたものを作成。

2012-08-29 20:30:03
matsuu @matsuu

#techbuzz Viewは基本的に1つのHTML要素以下を管理する。el: 'form.searchForm'とすれば、View内のthis.elで取得できる。this.$elはjQueryオブジェクトとして取得も可能

2012-08-29 20:32:28
しょうけん@KitchHike @shoken0x

Backbone.jsのライブコーディング、すげーなー。 どんどんできていく。 #techbuzz

2012-08-29 20:33:23
matsuu @matsuu

#techbuzz Backbone.jsの肝はevents。ほほう。

2012-08-29 20:34:17
matsuu @matsuu

#techbuzz みんなthisの処理どうやってんのかなーと気になってたけど、var self = this;ってやってた。なるほど

2012-08-29 20:40:21