WEB+DB PRESS Vol.74でJavaScriptのメモリリークについて書きました!
WEB+DB PRESSで連載中の「JavaScript活用最前線」が2年目に突入しました!
第7回目となる今回は、JavaScriptのメモリリークとChrome Developer Toolsのヒーププロファイラを使った解析方法を書きました。
- 作者: 井上誠一郎,奥野幹也,田中慎司,西嶋悠貴,伊藤直也,登尾徳誠,天野祐介,後藤秀宣,ヒノケン,近藤宇智朗,近藤嘉雪,渡邊恵太,堤智代,中島聡,A-Listers,はまちや2,川添貴生,WEB+DB PRESS編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2013/04/24
- メディア: 大型本
- この商品を含むブログを見る
近ごろはJavaScriptでもメモリ管理を気にかける機会が増えていると感じます。少し前まではメモリリークというとIEのJSとDOMの間で循環参照がナントカみたいな話が多かったですが、最近はシングルページのリッチなWebが増えたことで、純粋にオブジェクトのライフサイクルをきちんと管理しないといけなくなりました。
連載の内容は、まずオブジェクトのライフサイクルとガベージコレクションの動きを解説して、実際にリークが発生するサンプルコードをヒーププロファイラで解析していくような構成になっています。実はconsole.log()がリークの原因になることや、Backbone.jsでよくハマるZombie Viewにも触れています。
Backbone.jsをはじめとするMVCフレームワークがJavaScriptに新しいパラダイムを導入してくれましたが、それによってメモリリークが発生するというのは避けたいですね。このような罠にはまらないためにも、オブジェクトのライフサイクルをきちんと把握・管理することが重要です。
新人にドヤ顔で「それリークしてるよ」って言うためにも、このあたりはぜひ把握しておきたいですね。逆に新人さんは「それってメモリリークしませんか?」と強力なスタートダッシュを決めるチャンスです。
新人を応援するWEB+DB PRESS Vol.74 新人応援号は本日発売です!ぜひご覧ください!