lelelemon’s blog

カメの歩みでのんびり学んでいます。

【2025年一人アドベントカレンダー 10日目】仕様変更に強いコードとは?

はじめに

こんにちは。巷で有名なアドベントカレンダーを、一人で書いてみよう企画になります。
通常アドベントカレンダーはクリスマスまでですが、もうちょっとおかわりして、31日まで駆け抜けます。
今回のテーマは「仕様変更に強いコードとは?」です。

仕様変更に強いコードとは?

最近、ビジネスをそのままコードとして表現する実装を考える機会がありました。これができると、ビジネスの変更に合わせて柔軟にコードも変更でき、ビジネスの変化に合わせてコードもスピーディーに追随できると考えています。
そのために、基本1メソッド1責務で実装し処理の明快さを保つこと、クラスに持つパラメーターは最低限に抑えること、あとユーティリティはわりと作りがちかなと思いますが、その分複数箇所からの依存が増えて変更時の影響が大きくなってしまうので、本当に必要な時だけ作るようにして依存をさせないようにすることも大事と考えています。
大量の引数を受け取り汎用的なロジックを実現しているメソッドは変更の難易度や複雑な依存に繋がり、テストもしづらく負債化しやすいので、こういった点でもクリーンなコードを心がけたいですね。

終わりに

今回は以上です!
それではまた明日!