dot.case とは
dot.case(ドットケース)は、単語の間にピリオドを入れ、すべての文字を小文字にする書き方です。
Database Connection Urlはdatabase.connection.urlになりますhomePageTitleはhome.page.titleになりますerror_message_requiredはerror.message.requiredになります
ドットはたいてい階層を表します。app.server.port なら、「port」は「server」に属し、「server」は「app」に属しています。
ツールの仕組み
ツールは各行の単語を見つけ、小文字にしてドットでつなぎます。単語の区切りとして認識するのは、スペース、アンダースコア、ハイフン、スラッシュ、そして camelCase や PascalCase の名前に含まれる大文字です。各行は個別に変換されるので、キーのリストはリストのまま返ってきます。
全角スペースも区切りとして扱われます。ただし日本語の単語や全角の英字はそのまま残るので、キーにする場合は英単語を半角で入力してください。
| 入力 | 出力 |
|---|---|
| Database Connection Url | database.connection.url |
| homePageTitle | home.page.title |
| error_message_required | error.message.required |
| checkout-button-label | checkout.button.label |
dot.case が使われる場所
- 設定ファイル。 Java の
.propertiesファイルや Spring Boot の設定では、spring.datasource.urlやserver.portのようなキーを使います。 - 翻訳ファイル。
checkout.button.labelのようなキーで、画面や要素ごとに文言をまとめます。大きな翻訳ファイルでも整理しやすくなります。アプリを日本語化するときの i18n のキーにもよく使われます。 - パッケージ名。 Java や Kotlin のパッケージは、小文字の単語をドットでつないだ形です:
com.example.shop。 - ログとメトリクス。 ロガー名やメトリクス名は
service.component.eventの形をとることがよくあります。 - フィーチャーフラグと分析イベント。
billing.invoice.sentのような名前は、先頭部分で絞り込みやすくなります。
チームがドット区切りのキーを選ぶ理由
ドット区切りのキーは並べ替えに強いという利点があります。checkout. で始まるキーはアルファベット順のリストでまとまって並ぶので、関連する設定や文言が隣り合います。多くのツールはドットを理解し、キーをツリー表示することもできます。
注意点
- 順番が大切です。 大きな分類から細かい分類へ並べます。
welcome.subject.emailではなくemail.subject.welcomeです。 - 2語からなる階層には別のスタイルが必要です。 ひとつの階層が2語になる場合は、スタイルを組み合わせます:
checkout.shipping-address.labelやcheckout.shippingAddress.label。このツールはすべての単語の間にドットを入れるので、その部分は手作業でつなげてください。 - コードの識別子には使いません。 コードではキャメルケース(camelCase)やスネークケース(snake_case)を使います。