はじめに
yamlの「独自定義」可能な個所の命名規則を考えました。
記載の前提
記述する機会の多い
Paths Object
とComponents Object
を対象にしています。
命名規則は、
コンポーネントのtype(型)単位と
parameters、requestBody、responsesのコンポーネント単位
が想定さるが、
ここではコンポーネントのtype(型)単位で考えています。
TIPS
特殊なのは、Paths Object
の
url
(エンドポイント名)とparameters
のin
(パラメータの場所)だけで、
他は基本的に、コンポーネントのtype
(型)で考えることが可能です。
命名規則
エンドポイントとパラメータの記載仕様
大分類 | 中分類 | 記載仕様 | 設定例 |
---|---|---|---|
url | - | lowercase | /user/name |
parameters |
in がheader |
kebab-case | user-name |
in がquery |
snake_case | user_name |
|
in がpath |
snake_case | user_name |
|
in がcookie |
snake_case | user_session |
コンポーネントの記載仕様
型 | 記載仕様 | 設定例 |
---|---|---|
Object型 | PascalCase | AccountNumber |
string型 | camelCase | accountNumber |
number型 | camelCase | accountNumber |
boolean型 | camelCase | isActive |
array型 | camelCase | userList |
記載仕様の説明
-
lowercase: すべての文字を小文字で記述
- 例:
user
,account
- 例:
-
snake_case: 単語をアンダースコア(_)で区切りにして小文字で記述
- 例:
user_name
,account_number
- 例:
-
kebab-case: 単語をハイフン(-)で区切りにして小文字で記述
- 例:
user-name
,account-number
- 例:
-
PascalCase: 各単語の最初の文字を大文字にして単語を連結
- 例:
UserName
,AccountNumber
- 例:
-
camelCase: 先頭の文字を小文字にして以降の単語の先頭を大文字にして連結
- 例:
userName
,accountNumber
- 例: