kotlin公式Ducument
kotlinの公式ドキュメントの中で特に重要だと思った点をまとめる。
ソースファイル名
- 単一のクラスまたはインタフェースが含まれるファイル:クラス名と同じ名前に
.kt
をつける。 - 複数のクラスまたはインタフェースが含まれるファイル:ファイルに含まれる内容を説明するように命名する。
クラスのレイアウト
-
クラスの内容は次の順番で記述する。
1 プロパティ宣言と初期化ブロック
2 セカンダリコンストラクタ
3 メソッド宣言
4 コンパニオンオブジェクト -
メソッドは名前順に並べるのではなく、関連するものをまとめて、上から読んだときに何が起こっているか、ロジックを辿っていける様に書く。
-
ネストされたクラスをそのクラス内で使う場合は、使われている箇所の近くの記述する。クラス外部で利用される場合は、コンパニオンオブジェクトの後 に記述する。
-
クラスの名前は通常、そのクラスが何であるかを説明する名詞または名詞句。
-
宣言名の一部として頭字語を使用する場合、2文字(3文字くらいまでいける?)で構成される場合は 大文字 にする(
IOStream
)。長い場合、最初の文字のみ大文字にする。
インタフェースの実装レイアウト
インタフェースを実装する場合は、インタフェースに記述されている順番にメンバを保つ、必要に応じて追加で実装されるプライベートメソッドを記述する。
オーバーロードレイアウト
オーバーロードはまとめて記述する。
アノテーション
- 引数の無いアノテーションは水平方向に並べて配置し、引数の無い単一のアノテーションは、対応する宣言と同じ行に配置する。引数のあるアノテーションはすべて別の行で宣言する。
制御ステートメント
-
else
,catch
,finally
等は、前述する{~}の最後の波括弧と同じ行に記述する。 -
when
で複数の分岐が存在する場合は、一つ一つのcaseの間に空白行で区切ることを検討する。また、分岐処理が一行で済む場合等は、波括弧をつけずに同じ行に記述する。
ラムダパラメータ
- 短く、ネストがない場合には、規則的に利用することのできるit
を利用し、ネストがある場合は、常にパラメータを明示的に宣言する。