いまいちその良さが分からないな。。
綺麗に書けって言われても何を意識して書けばいいのやら。。
こんにちは、古賀です!
本記事では、
はてな
「コードを綺麗に書くことで得られる隠れたメリット」
「コードを綺麗に書くポイント」
について、お答えします!
プログラミングを始めたばかりの頃なら、
誰もが一度は言われたことがある言葉、
「コードは綺麗に書け!」
コードを綺麗に書くことで、
「可読性が上がる」などのメリットがあります。
ただ、それだけではありません。
「可読性」を始めとした、一般的に挙げられるメリットではなく、
綺麗に書こうとすることで得られる「隠れたメリット」について、お話していきます。
自己紹介が遅れましたが、
わたしは大学卒業後、上場IT企業に就職し、プログラマー、システムエンジニアとして
約10年間働いておりました。
プロフィールの詳細はこちらです。
-
プロフィール
こんにちは、古賀正雄です。現在36歳です。 簡単ではありますが、こちらのページで自己紹介とこのブログについてお話します。 高校時代 学生時代は主に野球をしていました。 進学先の高校も野球で選びました。 ...
続きを見る
結論を先に言います!
ポイント
『コードを綺麗に書こうとする「意識」があると、ミスが減り、作業スピードが上がり、信頼を得られる!』
この1文について、これから説明していきます。
※YouTubeに同内容を公開しております。
コードを綺麗に書くと得られる一般的なメリット
コードを綺麗に書くことで、一般的に以下のようなメリットがあります。
- 他人がコードを見ても理解しやすい
- 修正作業がしやすい
ただし、これはあくまで結果のメリットです。
「綺麗に書いた」ことでなく、
「綺麗に書こう!」とすることで、隠されたメリットが他にもあります。
コードを綺麗に書こうとすると「隠れたメリット」が得られる!
先程は「綺麗に書いた」結果のメリットでしたが、
今度は「綺麗に書こう」とする過程で起きるメリットです。
ポイント
『「綺麗に書こう!」とする「意識」が大事!』
「なんとなく綺麗にコードが書けた!」
では意味がありません。
「綺麗に書こう」という「意識」がポイントです!
ここで言う「意識」は「プロ意識」のようなものです。
「意識が変われば行動が変わる!」
とよく言われますが、それと似たようなことがプログラミングでも起きます。
何が起きるかというと、以下のようなことが起きます。
- ミスに気付けるようになる
- リスクを把握できる
- 作業スピードが上がる
- 信頼を得られる
「綺麗に書こう」とすると「ミスに気付けるようになる」
「綺麗に書こう」とすることで、ミスに気付けるようになります。
これは「綺麗に書こう」とする「意識」が、視野を広げてくれるからです。
今までは、全く気にならなかった変数の名前の付け方一つにしても、急に気になったりします。
これは、
「一か所掃除をし始めたら、色々な所を掃除したくなってしまう現象」
によく似ています。
ポイント
「綺麗に書こうとする意識が視野を広げて、気付きを増やす」
「綺麗に書こう」とすると「リスクを把握できる」
「綺麗に書こう」とすると、先程言ったように視野が広がります。
その広がった視野は、ミスに気付くだけではありません。
「プログラム全体を見渡せるようになり、リスクの把握ができるようになる」
プログラム全体が急に見渡せるようになります。
結構不思議な感覚です。
全体を見渡せるようになると、
「こことここは繋がっているから、この記述は不具合を起こしてしまう。。」
というようにリスクを事前に察知できるようになります。
「綺麗に書こう」とすると「作業スピードが上がる」
今までは「ミス」や「リスク」といったマイナス面を減らすメリットでしたが、
「作業スピード」というプラス面のメリットもあります。
「ミスが減ることで、無駄な作業が少なくなる」
という理由でも、作業スピードは上がりますが、
ポイント
「気分が良くなって、作業スピードが上がる」
の方が効果が大きいと思います。
「綺麗な部屋で作業すると効率が上がる!」
と同じ理屈です。
たとえプログラムの修正依頼が来たとしても、
「あの綺麗なプログラムだから、まぁいっか。。」
という気分になります。
エンジニアにとって、効率を上げる面で「気分」というのは非常に重要な要素です!
「綺麗に書こう」とすると「信頼を得られる」
わたしがプログラマーをしていた時は、徹底的に綺麗にコードを書いていました。
他の人がパッと見て「綺麗!」と思うくらい、圧倒的に綺麗に書いていました。
『「技術的な綺麗さ」も大事だが、「見た目的な綺麗さ」も重要』
見た目だけだったら、あまり技術に関係なく綺麗に書けますね。
意識の問題になります。
見た目が綺麗なコードを他人が見ると、
「あ。。こいつできるな。。」
と思います。
「プロ意識あるな。。」
と思うのです。
そういうコードを書く人には、
「信頼が集まる」
のです。
自分の中にこだわりを持ってコードを書いてみましょう!
ポイント
『「他人にプロだな」と思われるように、圧倒的に綺麗に書く』
この意識が大事です。
コードを綺麗に書くためには何をすればいいのか?
「綺麗に書けと言われても何をしたらいいかわからん。。」
と言われそうなので、ポイントだけお話します。
細かく言ってしまうとキリがありませんので、以下のことに気を付けてみてください。
ポイント
- 同じことを複数書かないように処理をまとめる
- スペース、改行、インデントを揃える
- 適切(処理の意図など)なコメントを書く
- 変数の名前は役割を表した名前を付ける
- 変数のスコープ範囲を大きくしない
- 関数やイベントの行数が長すぎないか(長ければ関数を新たに作る)
- ネストが深すぎないか(if、if、ifと深くなっていないか)
- プログラム全体で統一性があるか
綺麗に書く力を付ける手っ取り早い方法は、
「お手本を真似る!」
です。
会社であれば、エース格が書いたプログラムを基に、
複数人で展開していく手法を取ることがあります。
わたしも始めは先輩の真似から始めました。
お手本となるようなプログラムを見つけて、真似てみてください。
気付いたら綺麗に書けるようになっているはずです。
そして、いずれはお手本を抜きましょうね!
コードは綺麗に書けなくてもいい
「綺麗に書こう」とする「意識」が大事なので、
コードを書いた結果、別に綺麗でなくてもいいんです。
「綺麗に書こう」とする「意識」さえあれば、どのみち綺麗に書けるようになります。
「意識」があれば先程のメリットは得られます。
『自分の中の「プロ意識」を作るためだと思って、綺麗に書こうとする』
これが大事です。
「綺麗に書かなくてもいいや。。」
と思っている人と雲泥の差をつけることができますよ!
まとめ:コードを綺麗に書く隠れたメリットは?
ここまでの話をまとめます。
まとめ
<コードを綺麗に書く一般的なメリット>
- 他人がコードを見ても理解しやすい
- 修正作業がしやすい
<コードを綺麗に書こうとすることで得られる隠れたメリット>
- ミスに気付けるようになる
- リスクを把握できる
- 作業スピードが上がる
- 信頼を得られる
<コードを綺麗に書くためのポイント>
- 同じことを複数書かないように処理をまとめる
- スペース、改行、インデントを揃える
- 適切(処理の意図など)なコメントを書く
- 変数の名前は役割を表した名前を付ける
- 変数のスコープ範囲を大きくしない
- 関数やイベントの行数が長すぎないか(長ければ関数を新たに作る)
- ネストが深すぎないか(if、if、ifと深くなっていないか)
- プログラム全体で統一性があるか
「コードは綺麗に書けなくてもいい!綺麗に書こうとすることが大事!」
本記事を読んでみて、
「なんだよ。技術的なことじゃなくて感情的なことかよ。。」
と思われたかもしれません。
ただ考えてみてください。
人間は感情で動く生き物です。
その感情を高められるのであれば、大事にすべきです。
感情を高めて気持ちが入った成果物には、
愛情のようなものさえ感じれるはずです。
時間を掛けて作った大きなプログラムであればなおさらです。
「綺麗に書く!」
めんどくさいと思うでしょう。
わたしもめんどくさいと内心思ってます。。
でもやるんです!
お忘れでしょうか?
これも「一流思考」なんです。
「綺麗に書こうとする」は「一流思考」の具体的な行動の1つです!
時間は確かに掛かりますが、掛けた時間は後で取り返せます!
ミスが減ります!作業スピードが上がります!
だまされたと思って「綺麗に書こう」としてみてください!
隠れたメリットを一度でも味わったら、
「綺麗に書く」という選択肢しか残らないはずです!
一流思考をまだお読みになられていない方はこちらです!
-
エンジニアとして成長するための考え方!一流へ成長する方法とは?
エンジニアになったけど、いまいち成長を感じられないなぁ。。 作業スピードも品質も平凡。 この先成長していけるんだろうか。。 こんにちは、古賀です! エンジニア ...
続きを見る