プログラマ 開発・基盤

理解しやすい良いプログラミングコードを書く技術

  1. HOME >
  2. 開発・基盤 >
  3. プログラマ >

理解しやすい良いプログラミングコードを書く技術

概要

複数人でのプロジェクトでは相手のプログラミングを見ることが多くあります。そして、他の人が作ったコードに対して改修をする必要が出てきます。

理解しにくいコードでは相手に負荷をかけるのでプログラミングをするときは わかりやすいコードを記載する必要があリます。

もし、適当に書いてわかりずらいコードになってしまった場合、自分で何を書いたのすらわからなくなるだけでなく何をどのように改修するのか理解するのが困難になります。

良いコードを書く技術は生まれ持ったものではなく努力によって鍛えてできる技術なのです。可動性の高い読みやすいソースコードを目指してください。

理解しやすい可読性の高い良いコードを書く技術

最近のチーム開発はコードレビューという文化があり、このプログラミングは今のプロジェクトに統一した書き方なのかしっかりと動くのかどうかお互いチェックします。

そのときに、理解しずらく、複雑なコードは他の人のコードレビューを受けると通らないようになります。

一昔前はとりあえずプログラミングコードは動いたら OKの時代もありましたが今は周りの目が光っているので悪いコードは書けません。

プログラミングするときは、理解しやすいコードを書く必要があります。良いコードを書く技術は生まれ持ったものではなく努力によって鍛えてできる技術なのです。

理解しやすいコードを書くことについてこの本を読めばある程度理解できます。

初心者がわかりやすいコードを書きたいとき意識する場合はこの「リーダブルコード」という本を読んだら十分理解できます。プログラミング言語の本は古いと価値が無くなりますがこの本は何年経っても価値の高い本です。この本で体系的に理解しやすい良いコードについて理解できます。

理解しやすいコードを書くために覚えておくポイント

コードを書くときに注意していることは大まかに以下の通りです。

理解しやすいコードの定義

  • 変数名はわかりやすく・変数のスコープを縮める
  • コードをネストさせすぎない
  • 不要な機能は全て削除
  • 同じ機能をなんども書かない
  • コメントはわかりやすく

変数名はわかりやすく・変数のスコープを縮める

変数名はわかりやすく書くことがいいです。なぜならコメントを書かなくても何の変数名かわかるからです。あまり長すぎる変数名は問題ですが多少の長さは問題ないと思います。 20文字までには納めたいです。

あと変数のスコープを縮めることについてですが何でもグローバル変数にすることと変数の管理が難しく、同じ名前の変数名をつけると何がどう動くのか管理できなくなります。

コードをネストさせすぎない

If文の中にfor文さらにその中にif文を入れる等深くすると何が何だかわからないコードができてしまいます。ネストしすぎるのであれば、別の関数にするとか対応をする必要があります。

不要な機能は全て削除(YAGNI)

プログラミングをしている最中に不要なコードはできることはあります。
そのコードをもったいないからと思ってコメントにして
残している人もいるのですが、返って理解が困難なものになります。
他の人が見たら今後使うのかどうか判断できなくなるので邪魔なコードです。

同じ機能をなんども書かない(DRY)

似たコードを書くことがあります。その際は手間でも関数にまとめて繰り返し使うことをお勧めします。
同じ機能を何度も書くと大規模なコードであればあるほど複雑化します。

コメントはわかりやすく

ブログ作成者の私もたまにやりますが、コメントの内容が不明で自分で見返してもわからないということがあります。
簡潔にわかりやすくすることを心がけましょう。
私が何度も読んだ良書であるリーダブルコードはさらに詳しく載っていますので読んでみるのもいいかもしれないです。

まとめ

上記理解しやすいコードの定義を気をつけて実践していくと良いコードになり可読性が高くなり、君のコード読みやすいねと言われることが出てきます。

良いコードを書くように日々努力を続けてください。

また、本の紹介を下部にしています。これらも上記のリーダブルコードと同様、良書になります。参考までにレビューしてます。

徹底的に可読性、保守性の高いプログラミングを体系的取り組みことができます。厳しいコードレビュー環境に置きたい人はこの本を読んでコードを研究してください。

プリンシプル オブ プログラミングはどのようにプログラミングを書くかよりも、いかに周りとコミュケーションをとるためにどのような思想で書くかということが書かれています。

システム開発外注先とコミュニケーションをとるときに大切なことプロジェクト管理に役立つ考え方やプログラミングを人に教えるためのことが1冊でまとめられています。

また、独学でプログラミングを覚えた、現場実践でのルールが教われない教えてもらえないという方は、参考して良いと思います。

コードコンプリートについてはコーディングに入る前の準備から、心構え、周囲の人との調整まで幅広い観点で書かれています。
プログラマだけでなく、設計とコーディングを兼務するSEにはかなり重要な本となるでしょう。
リーダブルコードもかなりの名書ですがコードコンプリートもかなりの名書です

プログラマーの現状と今後の傾向

システムエンジニアランキング 仮想通貨ランキング にほんブログ村 IT技術ブログへ にほんブログ村 IT技術ブログ IT技術メモへ にほんブログ村 IT技術ブログ Webエンジニアへ

-プログラマ, 開発・基盤

Copyright© スリーネクスト , 2020 All Rights Reserved.