BPStudy#41に参加してきたのでメモってた内容。
TwitterはTogetter – 「BPStudy#41 まとめ」にまとまっています。

^文殊堂

第一部 – RequireJSeventUIコンポーネント

BPStudy#41 RequireJSとeventとUIコンポーネント – 文殊堂

RequireJS実践編

jQuery カスタムイベント応用編

粗結合のUIコンポーネントの作成について

 

RequireJS実践編

RequireJSとは何か?

AMDのブラウザ向けの実装

RequireJS moduleについて

defineでモジュールを定義する。

requiremain関数みたいなもの。

define – 第一引数に依存してるモジュール、第二引数に中身
(第一引数に関数オブジェクトを渡すと関数の返値になってしまう)

moduleの用途

関数を返すmoduleを定義すれば、関数として使えるmoduleが作れる。

副作用
何も返さないmoduleも有効利用できる

jQueryextendしてるmoduleを作れば、requireしたときにその拡張してるという保証が存在するため有用になる。

RequireJS本体の前にrequireというグローバル変数があると、RequireJSの設定として認識される

baseurl

module名はpathから拡張子をのぞいたものだけど、pathの基底を変更できる

paths

pathを探す場所をkey-valueで決められる

urlArgs

読み込むjsファイルに指定したパラメーターをつけることができる。(キャッシュ対策)

deps

最初から読み込んでおきたいファイルを決めておける

text plugin

文字列として取得できる
テンプレート的な利用

 

jQuery カスタムイベント応用編

カスタムイベントはブラウザ定義ではなく独自定義のイベント

jQuerytrigger,triggerHandlerなどで、イベントの発火ができる(dispatch event)

カスタムイベントは豊かな表現が行える

jQuerybindでイベント名とイベントハンドラをくっつける

trigerの第二引数に配列を渡すと展開されて渡した状態でイベントハンドラを実行する

data(“属性” , ““)をつけられる

イベントハンドラの$(this)==evt.target

カスタムイベントでClassを定義する

liveを利用する。
liveは要素ではなくて、CSSセレクタに紐づけることができる。

カスタムイベントでmixin

liveを使ってるので、classを追加するとメソッドを生える

カスタムイベントでcallback

liveを登録して、callbackcallする代わりにtirgerでイベントを発火させる。

カスタムイベントでmixout

classを追加することでmixinになるため、classを除去すればmixoutできる。

カスタムイベントで同名の関数を呼び出す

存在しない関数も呼んで大丈夫

好きなだけ定義できる

 

第二部

マスタリング非同期読み込み – os0x

マスタリング非同期読み込み BPStudy#41

Twitterでも非同期処理やってるけど、本文が表示されるのが最後なので遅い感じがする。

LAB.js

部分的な導入が難しい。
全体を書き換える必要がある。

ControllJS

としてtypeを変えて読み込む。

Controll側で評価する

RequireJS

依存がネストすると非同期にできない。

依存関係が複雑だと、読み込み待ちが発生する。

解決方法として、テキストとして読み込んでおいて評価する。とか

whatwgのwikiにいろいろな手法が乗っている。

 

第三部

gitの歴史改変について神速

BPStudy#41で発表しました #bpstudy – アジャイルSEを目指すブログ

分散SCMの基本的なこと

ネットワーク環境がなくても作業できる

誰かが壊しても問題ない

歴史改変でできること

不要な変更のコミット修正

コミットメッセージの修正

作業途中のコミット

適当なコミットを行える

git add -p

部分変更を記録するコマンド

対話式で部分コミットを行える

git rebase -I

コミットの変更、結合、削除とか

歴史改変の実践編

bisect テストが失敗してるところを2分探索するコマンド

デモ

間違いを打ち消す git revert

過去のコミットを打ち消す

改変世界からの復帰 – reflog

コミットを移動させたり

歴史を変えてはいけないコミット

人のは変えてはいけない

自分の黒歴史だけ

感想

椅子オンリーだったので、膝上PCつらい。
途中でキーボードがトラブった
カスタムイベントは何か冗長だけど、今後よく使う方向になりそうな予感がするのでいろんな使い方がでてきそう。
また機会があったら参加したいですね。