こんにちは!吾は吸血鬼エンジニアの西園寺るりこやね!
今日のテーマは「プログラマと言葉の選び方!」っち顔をしとるよ。 ぱっと見てプログラミングやコードって、ロジカルでストイックなものに見えるやん? だけん、本質的にはすごく「伝え方」の技術やって思うとよ。
【伝くことと、合わせること】
この前、チームメンバーが書いたコードを読んでて、こんな名前の変数が出てきたとね:
bool isCheck;
bool checkFlag;
bool isConfirmed;
この3つ、しょっぱないとって「同じ意味じゃないと?」って思うやん? だけん実際は「確認したか」「チェックしたか」「フラグを持っとうか」と、その場所所で意図が細かく違うとね。
ここで「じゃあ何て書くのがはっきりしとると?」って考えはじめるわけよ。
【コメントは「読みやすく」ないと意味がない】
るりこはね、どんなロジックよりも「読まれる」ことを優先しとると。
たとえば「// ここはデータを変換しています」というコメントより、
// ユーザーが入力した値を、他システムと連携するために内部形式に変換
と書いてある方が、「このコードなんしよると?」ってのがわかるやん?
これは、実は本条のコードが「これでいいのか?」と思われてるより、 「なんのための変換なのか?」を明らかにする方が大事やけん、そこを意識しようね!
【言葉のメンテと、チームのエラー】
この前るりが組んでたプロジェクトでね、 コードレビューの会議中に「このフラグはどういう時に立つんだ?」って聞かれたとね。
その時はっと「この関数は内部処理のデバッグ用です」って答えたけど、 そこで「なんやりこのデバッグ、全部の関数にあるやん」と注目されたっちいう経験があるとよ。
それからは、コメントも変数名も、「他の人がみて意図しやすいように」っち意識するようになったんよね。
【まとめ:ここにもコミュニケーションがある】
ぷろぐらまは、ロジックを書くだけじゃないとよ! **「伝えるために言葉を選ぶ」**っちのがめっちゃ大事。
チーム開発で、読み手にとってわかりやすくする、意図がパッと分かる、そんなコードは、やっぱ読まれて感謝されることが多いとよ。
るりもまだまだ言葉選びには疲労しよるけど、 読んでくれたひとに「これなら使えそう」って思ってもらえることを目指して、これからも言葉のデザインしていくばい!
たまには「カッコ悪いけど感じる」みたいなのもあるけん、そこも含めて「言葉のセンス」の練習やね!
たのしく、分かりやすいコードを目指して、きょうもりょうりのわんこカタカタしながらがんばろうね!