容赦なくリファクタリングするか、捨てるために作るか?質問する

容赦なくリファクタリングするか、捨てるために作るか?質問する

新しいシステムコンセプトや新しい技術が使用される場合、捨てるシステムを構築する必要があります。なぜなら、最高の計画であっても最初から正しく実行できるほど万能ではないからです。したがって、1つを捨てるつもりなら、いずれにせよ捨てるでしょう。

-- フレッド・ブルックス神話の人月[強調は筆者による]

捨てるために作るんだ。そう言われた。そしてみんなアジャイル今、私たちは容赦なくリファクタリング。何が起こったのでしょうか?

それは...ですかいつもトラブルから抜け出すにはリファクタリングした方が良いでしょうか? そうでない場合、いつそれを続けるべきか、いつ諦めて最初からやり直すべきかを判断するのに役立つ経験則を誰か提案してもらえますか?

ベストアンサー1

テスト駆動開発を行っている場合は、リファクタリングによってほとんどすべての問題を解決できます。私は大きな問題もなく主要な設計上の決定を変更し、10 年前のコードベースを修復しました。

唯一の例外は、アーキテクチャが最初から最後まで完全に間違っていることがわかった場合です。たとえば、スレッドを使用してアプリを作成したが、非同期ステート マシンが多数必要であることがわかった場合などです。その時点で、最初のドラフトは破棄してください。

おすすめ記事