SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

翻訳書「レガシーコード改善ガイド」の注目トピック

「レガシーコード改善ガイド」のススメ
第5回:レガシーコードを攻略するための原則とプラクティス

邦訳版『Working Effectively With Legacy Code』の重要トピックを紹介

  • X ポスト
  • このエントリーをはてなブックマークに追加

レガシーコードを理解して改善するための、さまざまなプラクティス

 さて、いかがだったでしょうか。今回は『レガシーコード改善ガイド』で取り上げている原則やプラクティスの一部を紹介しました。

 その他にもこの本では、テスト用クラスの命名規約、メソッドの影響範囲を特定するため影響スケッチ(effect sketch)、アーキテクチャを説明するための白紙のCRC(naked CRC)、安全に変更作業を行うためコンパイラまかせ(Lean on the Compiler)やシグニチャの維持(Preserve Signatures)など、レガシーコードを理解して、改善するためのさまざまなプラクティスを紹介しています。

ユニークな第2部の章タイトル

 最後に、本書のユニークな特徴を1つ紹介しておきましょう。本書は3部構成になっていますが、第2部の章タイトルは非常にユニークです。以下に実際の章タイトルのいくつかを示します。

  • 第6章:時間がないのに変更しなければなりません
  •   - I Don't Have Much Time and I Have to Change It

  • 第11章:変更する必要がありますが、どのメソッドをテストすればよいのでしょうか?
  •   - I Need to Make a Change. What Methods Should I Test?

  • 第14章:ライブラリへの依存で身動きが取れません
  •   - Dependencies on Libraries Are Killing Me

  • 第23章:どうすれば何も壊していないことを確認できるでしょうか?
  •   - How Do I Know That I'm Not Breaking Anything?

  • 第24章:もうウンザリです。何も改善できません
  •   - We Feel Overwhelmed. It Isn't Going to Get Any Better

 これは、レガシーコードと闘う開発者からのFAQ(よくある質問)を想定した表現にしているためです。皆さんも第2部の目次から思い当たるタイトルを探して、そこの章から読み始めてみてはいかがでしょうか。

終わりに

 5回にわたって『レガシーコード改善ガイド』の内容を紹介してきました。本書の良いところは、「テストのないコードがレガシーコード」と定義し、まずはテストで保護するために、最善の設計よりも現実的な解決を目指していることです。この連載を読んで興味を持っていただいた方は、ぜひ『レガシーコード改善ガイド』に書かれているノウハウやテクニックを身につけ、保守開発に役立てていただければと思います。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
翻訳書「レガシーコード改善ガイド」の注目トピック連載記事一覧

もっと読む

この記事の著者

田村 友彦(タムラ トモヒコ)

ウルシステムズ株式会社 シニアコンサルタントICカードの通信プロトコルからWebアプリケーションまで、さまざまなソフトウェア開発をさまざまな言語・環境で経験してきた。2006年より現職。現在は、技術的な支援を行う立場でシステム開発に携わっている。支援だけでなく、ときにはどっぷりとコーディングをすることもある...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/4220 2009/07/31 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング