Help us understand the problem. What is going on with this article?

可読性の高いコードを書くために心がけたいメモ

More than 3 years have passed since last update.

はじめに

プログラミングを始めてから春で3年目になるエンジニアです。
1年目の夏からiOS開発に携わらせていただき、今に至ります。
初めて学ぶ事や自分の力量を遥かに上回っているような案件にもアサインしていただいて、
学ぶ事が多い2年だったと感じております。
しかし、新しい事や、難しい事に挑戦する事により、足元が疎かに。。。
可読性を考慮したコーディングができていないと感じたり指摘されるような事が最近増えたなと感じています。
独りよがりなコードを書いて、あとから保守する人の地獄を回避するために、そしてこれからエンジニアになる人たちが同じような状態に陥らないように、そして備忘録として私がこれから意識していこうと考えている可読性を向上するためのメモを残そうと思います。

ここからメモ

1.初歩的だけど大事!インデントを正しく合わせよう

基本的に自分が0から書いたコードはインデントって合わせられてると思うのですが、
既存のコードに手をいれる時にインデントが崩れてしまっている時が多いです。
自分が手を入れたコードには逐一チェックをかけるようにする!!!

2.変数や関数の命名に気をつけよう!

変数や関数の命名には一定のルールがあります。
またプロジェクト毎に定められたコーディングルールもあると思います。
これらのルールに準拠するのが基本的守らないといけないことです。
プロジェクト毎に決められたコーディングルールを準拠するのはコーディングルールが記載されている資料などを見ればいいですが、一般的に言われルールって??って人もいるかと思います。
そういう人はリーダブルコード※1という書籍を読みましょう。
リーダブルコードはコードを理解しやすくするための様々な原則を具体例とコードを交えて解説してくれています。
(正直この記事を読まなくてもリーダブルコードを読めば。。。という話はなしで。)
リーダブルコードの中には変数や関数の命名規則についての解説もあるので必読です!!

3.コードレビューをしてくれる人の気持ちを考えよう

コードレビューは非常に重要な時間の一つです。
コーディング規約に則っているか、適切な命名規則を行っているか、冗長的な処理の書き方をしていないか等、
レビュアーの方が確認しなくてはならない事はたくさんあります。
確認しなくてはならない事はたくさんあるのに、そこに使える時間は限られています。
そのためコードレビューに出す前には、最低限のチェックは行いましょう。
Gitなどで差分を確認しながら関数や変数の命名はおかしくないか?メソッド化することはできないか?
ほんの少しの思いやりがお互いの仕事の効率を上げる事になり、チームとしての一体感を高められるのではないでしょうか。

4.他の人が書いているコードを積極的に読もう

自分のプロジェクトの先輩が書いているコードやOSSのコードを読む習慣をつけましょう。
真似したほうがいい所これはダメだという所、様々な知識を吸収することができます。
上質なアウトプットは上質なインプットから生み出されるのです。(どこかで聞いたことがあるような。。。)

おわりに

どれもどこかでよく聞くよ!!!って話だったかもしれませんね。。。
でもよく聞くということはそれだけ重要なことなのです。
そして新しくエンジニアとしての道を踏み出す新人の子達も同じような事を語り継いでいくのでしょう。
初心を忘れずにというのは本当に大事なことだと思いますので、
自分が書いているコードをじっくり読み直してみてはいかがでしょうか。

備考

※1
『リーダブルコード――より良いコードを書くためのシンプルで実践的なテクニック』
Dustin Boswell,Trevor Foucher 著,角征典 訳,オライリー・ジャパン(2012)
ISBN 978-4-87311-565-8
https://www.oreilly.co.jp/books/9784873115658/

s-mk
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away