各プログラミング言語のコーディング規約まとめ
各プログラミング言語のコーディング規約/スタイルについてのリンク
Java
Python
Ruby
JavaScript
- Google JavaScript Style Guide 和訳
- Google JavaScript スタイルガイド - 日本語訳
- JavaScript coding standards | Drupal.org
- JavaScript style guide | MDN
C#
Swift
- Swiftコーディング規約@Wantedly
- github/swift-style-guide
- github/swift-style-guide - 日本語訳
- raywenderlich.com 公式の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クラスのファイル内に含めても良い
プログラミング的概念
言語それぞれで最適な書き方が変わるので内容については割愛
- パッケージ
- クラス
- 構造体
- インターフェース
- トレイト
- メソッド
- プロパティ
- フィールド
- アノテーション
- 型
- タプル
- ジェネリクス
- クロージャ/ラムダ式
- 例外