#10 Scalaで学ぶコメント規約の基本
Scalaのコメントは、JVM言語らしくJavadocに似た仕組みを使いつつ、Scala独自の書き方もいくつかあります。この記事では、Scalaにおけるコメントの書き方と、良いコメントの残し方を解説します。
コメントの書き方
// これは年齢を表す変数
val age = 20
複数行のコメントは/* */を使います。
/*
* ここから先は入力チェックの処理
* 空文字や不正な形式を除外する
*/
Scaladocという仕組み
Scalaには「Scaladoc」という、Javadocに似た/** */形式の説明書きの仕組みがあります。
/**
* 利用者に挨拶を表示する
* @param name 利用者の名前
* @return 挨拶メッセージの文字列
*/
def greet(name: String): String = {
s"こんにちは、$name さん"
}
@paramで引数の説明、@returnで戻り値の説明を書けます。sbtなどのビルドツールには、このScaladocの内容からHTML形式のAPIドキュメントを自動生成する機能もあり、公開するライブラリの関数には積極的に書いておく価値があります。
何を書くべきか
Scalaは型推論が多用される言語のため、型そのものの説明よりも、関数がどんな意図で設計されているか、どんな場面で使うことを想定しているかを書くことが重視されます。特に、副作用(画面表示やファイル操作など、値を返す以外の動作)がある関数には、その旨を一言添えておくと、呼び出す側が安心して使えます。
TODOコメントで作業を残す
後で対応する必要がある箇所には、// TODO: 説明という形式でコメントを残す習慣が広く使われています。IDE(IntelliJ IDEAなど)はTODOコメントを自動で一覧表示してくれるため、実装途中の箇所を見失いにくくなります。
Scalaならではの注意点
ScaladocはJavadocと似ていますが、Scala特有の書き方(型パラメータの説明タグなど)も存在します。Java向けの説明だけを参考にすると情報が不足することがあるため、Scala公式のドキュメントも確認しておくと安心です。また、Scalaは簡潔に書ける言語のぶん、1行に多くの処理を詰め込みがちです。そういったコードには特に、「何をしているか」ではなく「なぜそうしているか」を補うコメントが効果的です。
まとめ
Scalaのコメントは//が基本で、Scaladocによる説明書きも活用されます。型推論を活かしつつ、意図を伝えるコメントを心がけましょう。
本ページはプロモーションを含みます。
参考書籍(PR)
Scalaをもっと学びたい方には「実践Scala入門」がおすすめです。
PR
コードを書かずに自動化したい方へ
「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。
コメント
コメントを投稿