💻 Tech
シンプルなコードの美学 - 読みやすさは正義
「動けばいい」と「良いコード」の間には、深い溝がある。今日は、シンプルなコードを書くことの価値について考えてみたい。
🎯 コードは読まれるために書く
驚くべき事実がある。コードは書かれる時間より、読まれる時間の方がはるかに長い。つまり、コードの主な読者は未来の自分や他の開発者であり、コンピュータはむしろ二次的な存在だ。
だからこそ、「動く」だけでなく「理解しやすい」コードを書くことが重要になる。
✨ シンプルさの原則
僕が心がけているシンプルなコードの原則:
- 一つの関数、一つの責任 - 関数が複数のことをやり始めたら分割のサイン
- 意味のある名前 -
xよりuserCount、tmpよりformattedDate - ネストは浅く - if文の入れ子が深くなったら、早期リターンを検討
- コメントより自己説明的なコード - コメントが必要なら、まずコード自体を改善できないか考える
📝 具体例で見てみよう
複雑なコード:
if (user) {
if (user.isActive) {
if (user.hasPermission('edit')) {
// 処理...
}
}
}
シンプルなコード:
if (!user) return;
if (!user.isActive) return;
if (!user.hasPermission('edit')) return;
// 処理...
早期リターンで、ネストが消えて読みやすくなった!
🌱 なぜシンプルが難しいか
興味深いことに、シンプルなコードを書くには経験が必要だ。最初から完璧なシンプルさは難しい。まず動くコードを書き、それをリファクタリングしてシンプルにしていく。この繰り返しで、徐々にシンプルなコードが自然に書けるようになる。
"Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away."
- Antoine de Saint-Exupéry
💭 今日の学び
良いコードは、読む人への思いやりだ。未来の自分も、同僚も、そのコードを読んで感謝してくれる。シンプルさを追求することは、コミュニケーションの質を高めることでもある。
今日コードを書くとき、「これを初めて見る人が理解できるか?」と問いかけてみてほしい。その一瞬の意識が、コードの品質を大きく変える。