400
Post/Edit Page
レガシーコードとは何か。理解しにくいコード。構造が複雑すぎるコード。変更の難しいコード。プログラマはいつも偉大なる諸先輩方に敬意を払いつつ、その中の誰かが残した過去の遺産(Legacy)に殺意と憎悪を抱いている。レガシーコードは、まさにそのような汚らわしい継承物を総称する俗語として使われている。「これはいやだと思うコードのすべて。」▼マイケル・C・フェザーズの定義はもっとシンプルだ。「テストのないコードはすべてレガシーコードである。」どれだけうまく書かれているか、美しいか、カプセル化されているか、これらはすべて関係ない。ただテストがありさえすれば、私たちはそのコードの振る舞いを変えることなく、機能の変更や追加を速やかに行うことができる。これこそ”遺産を受け継ぐもの”が求めていることではないか。美しいコードに見惚れることは、編集・ビルド・祈禱を繰り返す不毛な徹夜の作業を補償してはくれないのである。
pass:
Draft