skillup

技術ブログ

プログラミング全般

コーディングルール 前半まとめ

投稿日:2016年7月7日 更新日:

リーダブルコードを3分の2ぐらいよんだので現時点でのまとめを。

いいコードの定義

リーダブルコードのいいコードの定義は読む人が理解しやすいということだと思います。

シンプルにいうとこれにつきます。ルール同士は干渉したり、衝突することもあるけどこの原則が最優先にくることは間違いないでしょう。

具体的な手法

変数の名称

  • 具体的でわかりやすい名称にする
  • 一般論としてスコープに比例して名前に情報を入れる必要あり
  • 長すぎる場合は短縮形を使ったり、不要な単語を削る
  • フォーマットを決めて形式で情報を伝える
  • 各種よく使われる命名パターンを覚える(最大最小 max or minなど)
  • 否定よりも肯定など、意味がとりやすい名称にする

コード自体の見た目

  • 改行位置を揃える
  • 縦の情報がずれていないようにする
  • 似たような変数は目で見てグルーピングがわかるようにする

コメント

  • 当たり前のことを書かない
  • コメントが冗長になりそうであれば命名などを考える
  • 実例を書く
  • 文章よりは式や箇条書きなど意味が簡潔でわかりやすいものにする
  • クラスやファイル自体は全体像のコメントを書く

制御フロー

  • if文は比較される値を右に。できれば<のほうが見やすい
  • 否定形よりも肯定系で
  • 除外できる結果は早く返す
  • ネストを浅くする

コードの分割

  • 1行に処理が詰まりすぎている場合は変数を使い分割
  • 条件分岐は反転させられないかを考える
  • 条件分岐で処理がありすぎる場合は分割する
  • 別解を考える

変数の使い方

  • 不要な一時変数の削除
  • できるだけスコープを縮める
  • 使用箇所と近い場所での定義
  • 書き込むのは一度だけ(orなるべく数なくする)

-プログラミング全般
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

オブジェクト指向について その2

前回のエントリーのように、データとロジックを一体で考えるのは、処理状の有効性のみならず、よりユーザー側に近い処理をかくということにもつながります。 日付の問題に関してもintやshortよりはLoca …

no image

オブジェクト指向 データベース層

本日も引き続き「現場で役立つシステム設計の原則」を読み進めてます。 本日は主にデータベース層の考え方について。 Contents1 データべース層1.1 要点1.1.1 典型的なダメテーブル設計1.1 …

no image

画面テストのツールに関して

Unitテストに関してはxUnit一択だと思いますが、UI系のテストツールについて。 IDE(コードを書かずにすむマクロ系)に関して全てChromeで動くことを確認しています。 Contents1 ツ …

no image

オブジェクト指向設計 柔軟なインターフェイス

オブジェクト指向シリーズ。今回はインターフェイスについて。 インターフェイスといっても、implementsを使った実装だけではなく、要はあるクラスが外部の窓口となるときに使うメソッドってことだと思う …

no image

ダミーデータの作り方 まとめ

現在作っているアプリを顧客先で見せる機会があり、そのためダミーデータを入れる、という仕事がありました。 といっても画面からポチポチやったんでは時間もかかりますし、何より精神的にやられてしまいます。(汗 …