- Amazon.co.jp ・電子書籍 (416ページ)
感想・レビュー・書評
-
複雑で入り組んだコードベース、そしてそれによって織りなされる仕組みを見たことがあるなら、一読して損はない。レガシーソフトウェアに立ち向かう確信を与えてくれる一冊。
詳細をみるコメント0件をすべて表示 -
今まさにレガシーソフトウェアに対峙している、そんな人は多いのではないだろうか。
私もその一人であり、自分のやっていることは正しいのか、もっと良い方法は無いのかを知りたくて手に取った。結論から言えば、多くの書籍や記事で読んだものが多く、目新しさはあまりなかったが、著者の豊かな経験とそれに裏打ちされた地道な改善の大切さがうかがえ、また勇気づけられた。
最終章で述べられている通り、本書のメインテーマは次のものだ。
・ソースコードがすべてではない
・情報はフリーになりたがらない
・われらの仕事は終わらない
・すべてを自動化せよ
・小さいのが美しい
ユーザにとって価値のあるソフトウェアが重要であり、プロジェクトの成功には組織やプロセスの合理化、コミュニケーション、ドキュメンテーションが必要になる。
これらはいずれも地道で泥臭いものである。
人はしばしば楽な方に流される。割れ窓理論にあるように、誰かが窓を割れば、次々と綻びが生じるだろう。これを防止するには、本書で扱うように、人の暗黙知をコード化&ドキュメント化し、定期的に見直しをすることである。そして、コードは小さくモジュール化された美しいものを目指さなければならない。
最後に筆者が述べる「望むと望まないとに関わらず、我々は次世代の開発者に遺産(legacy)を残すのだから、できるだけのことをして、誇らしい遺産にしよう。」には同感である。レガシーは我々が残すのだ。
なお、書中ではCIやCD、環境構築の自動化について具体的なツールを用いて例を示しておりイメージを掴みやすくなっている。勿論、アップデートやツールの流行り廃りで、そのまま使えなくなる可能性があるが、重要なのはどのようなことを自動化すべきかという着目点である。その点において、特に使用しているツールで本書を避ける必要性はない。 -
先月、半額になってたので買った本。
読んでてわくわくした。
コードのことだけでなく、それを取り巻く環境含めての改善について書かれてる。ビルド、テスト、リリースの自動化や、個人の開発環境をVagrantなどで簡単にさくせできるようにとか。現在のトレンドがどんな風なのかがよくわかる。
全体を通してのテーマは「自動化」かな。
ハードのスペック向上と技術の進歩で、個人のPCに複数の仮想マシンやコンテナを起動するなんて10年前は思いもしなかったなぁ。
そんな自分のPCにはDockerはインストールされているものの、コンテナは起動してなかったりするけど・・・