Ubuntuでいろいろできるぜと思っててとりあえずnode.jsをやってみたいとも思ったので
普通にインストールしてmakeしたら動いたのでらくちんだった。
) sudo apt-get install build-essential ) sudo apt-get install libssl-dev ) wget -N http://nodejs.org/dist/node-latest.tar.gz ) tar xzvf node-latest.tar.gz ) cd node-v0.8.16/ ) ./configure ) make ) sudo make install
makeには予想以上に時間がかかってた。新幹線の中でmakeしてたんだけど京都を出発したころにmakeはじめたはずが名古屋についても終わってなかった。様子を見ているとv8をひたすらコンパイルしている様子で、たしかにv8はでかそうだったしそんなもんかと思った。
v8のソースコードはひたすらでかくて、たとえばdeps/v8/srcフォルダには5000行を超えている.ccが7つもある。
) wc *.cc 39 273 1822 v8preparserdll-main.cc 41 281 1851 string-search.cc : 3570 9291 119897 profile-generator.cc 3596 10960 118417 debug.cc 4138 13274 140950 mark-compact.cc 6016 21249 214814 jsregexp.cc 6073 19998 205129 parser.cc 6410 15346 218032 api.cc 7179 20888 243258 heap.cc 9186 27260 326348 hydrogen.cc 13214 40117 459330 objects.cc 13614 42424 474898 runtime.cc
よく「1メソッドは100行まで。1ファイルは1000行まで」とかの主張を見かけたりするけど、それを杓子定規にやるのは多分実体と合っていないと思う。僕はファイルがたくさんあるのが苦手なので(Androidのres配下のディレクトリが凄く嫌だ)このくらいの粒度がわかりやすくていいと思う。