第3回アレ終了

スタイルシートを替えてみました。今までは青系の全体的に薄い色をベースにしていたんですが、いまいちインパクトに欠けるのと、読みにくいことこの上なかったので、シンプルに白と黒で仕上げてみました。まだ十分テストはしてないけど、個人的にはだいぶ満足です。
あと、研究室の新しいマシンへの移行は大体終わりました。新しいマシンでは、eclipseが5秒で起動し、VisualStudioが一瞬で起動します。もう、エディタと遜色ないです。ほんとに驚きです。学部時代に使っていたマシンだと、eclipseの起動に3分近くかかってたことを考えると… すばらしいです。やはりPCのスペックは大切です。

ドキュメント作成

私が研究のために開発しているツール、グラフシミュレータのドキュメント整備を行っています。この場でのドキュメント整備とは、すべてのクラスがjavadocを通るようにすることを指します。
このツールの開発は私一人で行っており、もともとお遊びで作っていたということもあり、設計およびドキュメント化にはあまり力を入れていませんでした。ですが修士論文を書くにあたり、論文のネタが思いつかなかったので、このツールの発展系を研究することになり、急遽まじめに設計・ドキュメント化を行う必要が出てきました(うちの研究室では修論のテーマは自分で見つける。私は卒論のテーマも自分で決めた)。研究用ツールだから、作りっぱなしでも良いかなと思いもしましたが、大学生活の集大成として何か残すという意味も込めて、このツールをまじめに作り上げよう決心しました。そして今、急いでjavadocが通るようにコメント&ドキュメントを書いているわけです。
ドキュメントをきちんと書いていると、まじめに設計していないぶん、設計のあらが見えてくるんです。なんでここにこのメソッドがあるんだろうとか、このクラスは分割したほうが良くないかなあとか、一つのオブジェクトのいくつかの側面は一つにしたほうがいいのかなあ、分けたほうがいいのかなあ、なんてドキュメントを書いているうちにいろいろ考えてしまうわけです。
そしてこれは世間一般に言われている設計のリファクタリングにほかなりません(コードはまだ弄ってないけど)。やっと、ドキュメント作成は将来の自分のためにやるべきだと言った、私のプログラミングの先生(?)の意図を掴みかけてきた気がします。コードの理解ではなく、コードの改善のためにドキュメントを作成する、そう思うとドキュメント作成もまた一味違った見方ができ、モチベーションもよりいっそう高まると感じました。

関数の変形@Effective JavaScript

http://www.interq.or.jp/student/exeal/dss/ejs/1/4.html
この一つ前のセクションまでは、濃い内容だとは思っていたけど、lisp/schemeを勉強している身としてはまだ想像の範疇でした。しかし、今回の関数の変形はマジでやばいです。まさかJavascriptでここまでやるとは思いませんでした。
あとでもう一度読むためにメモ。