この記事は、「KNOWLEDGE WORK Blog Sprint」第1日目の記事になります。 mayah です。株式会社ナレッジワークでは創業時より CTO をしています。開発ではプロダクト全体のアーキテクトをやっていることが多いです。普段からメンバーたちが書く Design Document やコードのレビューをする機会も多く、コードレビューだけでも月 200〜300 PR ぐらいは見ています。 さて、美しく堅牢なコードを書く上で、一握りのソフトウェアエンジニアは自然に習慣としていることで、多数のソフトウェアエンジニアは全く考えていない(もしかしたら一度も考えたことすらない)ように見えていることが1つあり、本日はその話をしたいと思います。 それは、操作よりも状態・性質に注目してコードを書くという習慣です。 ここでいう操作とは、インプットからアウトプットを計算したり、なんらかのオブジェク
