PHP サーバサイド

if文とswitch文

現在、サーバエンジニアとしてPHPを触っている。僕ともう一人経験豊富なエンジニアがいた、彼と僕とではやはりコードの読みやすさが違う。その中の特徴の一つが条件分岐のやり方だ。

 

If文での条件分岐


例えば、値の中身に応じて処理を分けて、途中で値を返したりする場合はif文を使うだろう。

だけど、この記述は僕なりに2つの問題点がある。

ひとつ目は単純に見づらい。条件分岐をしている行(ifやelse if, elseの部分)の長さがマチマチなのでデザイン的に受け付けられない。

ふたつ目はもし、$wordsに新しい値を追加して、条件分岐を変更したい場合に最後のelseのところを"else if($words[$value] === 'banana')"みたいに変更しないといけない。これは面倒だ。

現場でも、僕はたまにこうした楽観的なコードを書く癖があるので、後から見直すと「オェーwww」みたいな感じになる。

 

Switch文


ちなみに、経験豊富な彼はこう書くだろう。

どこかで良いコードとは横に長いのではなく、縦に長いコードだと聞いた気がする。

単純な値の比較であれば、switch文の方がコードが読みやすい。

見やすいだけではなく、新しい条件も設定しやすい。

 

 

-PHP, サーバサイド
-

© 2023 Shiro's secret base