複雑なコード

強烈に複雑なコードを見たときのあのポカ〜ンな状態は尋常じゃないな。
それでも1つ1つデバッグしていって、なんとな〜く分かったときは気持ちえぇええ。

最近よくやっちゃうのが、

var hoge = function(){
  var n = 1;
  return function(){
    alert("hoge");
  }
}

// この書き方は悪くはないが2回括弧が付くと非常に分かりにくくなる。
// でもたまにやるw
hoge()();

// だからといって
var obj = hoge();
obj();
// こう書くのは面倒だし

でもクロージャ使うときはだいたいこんな感じ。
I Love Closure!!

JavaSE7から採用?6じゃなかったんだ。