Edited at

各プログラミング言語のコーディング規約まとめ

More than 3 years have passed since last update.


各プログラミング言語のコーディング規約まとめ


各プログラミング言語のコーディング規約/スタイルについてのリンク


Java


Python


Ruby


JavaScript


C#


Swift


Scala


Erlang


Haskel


SQL

(データベース言語だけど一応)


一般的なコーディング規約で規約とされてるもの


用語説明

単語
意味

丸括弧
(パーレン/parentheses)
()

角括弧
(ブラケット/スクエアブラケット/square bracket)
[]

波括弧
(カール/curl)
{}

山括弧
(アングルブラケット/angle bracket)
<>

キャメルケース
複合語の先頭を小文字から始める
cordingGuideLine

パスカルケース
複合語の先頭を大文字から始める
CordingGuideLine

スネークケース
複合語の区切りをアンダーバー(_)で繋げる
cording_guide_line
CORDING_GUIDE_LINE

チェインケース
複合語の区切りをハイフン(-)で繋げる
cording-guide-line


エンコーディング


  • 基本的にUTF-8一択


インデント


文字種別

タブとスペースを組み合わせるような使い方はしない、どちらかで統一する


  • タブ

  • スペース


インデント幅


  • 2

  • 4


末尾のセミコロン


必須な言語


  • 必要なので書く

  • 1行につき1つ


不要な言語


  • 必要とされる場合を除き一切書かない


インポート文


記述箇所


  • ファイルの先頭

  • モジュールコメントの直後


宣言順


  • 次の順番でグループ化する


    • 標準ライブラリ

    • サードパーティに関するもの

    • ローカルなアプリケーション/ライブラリに特有のもの



  • 各グループ単位で英数字でソートした順番とする


一行の桁数


  • 80〜100行


命名規約


  • 単語の省略は原則行わない

  • ローカルの狭いスコープ内の変数名は例外として省略する場合もある


略語の扱い

どちらか2パターン


  • 略語で使われてる大文字をそのまま命名でも大文字として表現する

  • 略語で大文字が使われてるとしても各命名規約に則る


ファイル名


  • publicクラスはそのクラス名で1ファイルとする

  • 例外としてprivateクラスはpublicクラスのファイル内に含めても良い


プログラミング的概念

言語それぞれで最適な書き方が変わるので内容については割愛


  • パッケージ

  • クラス

  • 構造体

  • インターフェース

  • トレイト

  • メソッド

  • プロパティ

  • フィールド

  • アノテーション


  • タプル

  • ジェネリクス

  • クロージャ/ラムダ式

  • 例外