Nexus7のUbuntuにnode.jsを入れてみた

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配下のディレクトリが凄く嫌だ)このくらいの粒度がわかりやすくていいと思う。