ドットケース

JavaScriptライブラリ

ドットケース: dot case)は、プログラミングにおける命名規則の一つであり、一つの識別子の単語間をピリオド.で区切る命名規則である[1][2][3][4]。別の呼び方としては「ドットノーテーション(: dot notation[5]」「ドットシンタックス(: dot syntax[6]」「ピリオドケース(: period case[7]」、日本語表現としては「ドット記法[8]」が存在する[注釈 1]。主にプロパティファイル、リソースバンドル、YAMLファイルなどで使用され、階層的なプロパティの整理を目的とする[9][10][11]。例えば「person.title」「person.surname」「person.job.description」などがドットケースの例である。

ドットケースの使用はソフトウェア開発の初期から見られ[12][13]、以降MavenプロジェクトASP.NET Core Web APIのルートテンプレートなどで標準的に採用されるようになった[14][15]。これにより、一貫した命名規則としての地位を確立した​。

ドットケースの利点としては、視認性の向上やプロパティ階層的整理が挙げられる[16][17]。一方で、過度に長いプロパティ名やネストされた階層が多い場合には可読性が低下する可能性がある​[16][17]

ドットケースは主に設定ファイルやプロパティファイルに適用される[9][15]。例えば、JavaのプロパティファイルやYAML形式の設定ファイルにおいて、階層構造を表現するために広く使用される(例:database.url[9][18]

ドットケースは特定のフレームワークやツールにおいて標準として採用され、プロジェクト全体での一貫性と可読性を維持するためのベストプラクティスとして推奨されている[14][19]。関連するプロパティを階層的に整理することで、設定ファイルの管理のしやすさを向上させることができる[9][20]

ドットケースはその視認性と整理整頓のしやすさから、特に複雑な設定やプロパティを管理する際に有効な命名規則であるが、適用する際には一貫性を維持するための注意が必要である[16][17]。​本ページでは、ドットケースの定義から始まり、その歴史、利点と欠点、適用範囲や適用例、標準およびベストプラクティスについて詳述する。

定義

編集

ドットケースは、プログラミングにおける命名規則の一つであり、一つの識別子の単語間をピリオド.で区切る命名規則である[1][2][3][4]。この形式は、主にプロパティファイル、リソースバンドル、YAMLファイルなどの設定ファイルにおいて使用される[9][14][15][16][17]。例えば「person.title」「person.surname」「person.job.description」のように、各プロパティを階層的に整理するために用いられる。この命名規則は、関連するプロパティをグループ化し、視覚的な識別を容易に行える[16][17]

ドットケースは、特定のフレームワークやツール(例:Mavenプロジェクト[15]、ASP.NET Core Web API[14])において標準的に採用されており、コードベース全体で一貫性を保つための手段として有効である。特に、複雑な設定やプロパティを管理する際に、その利便性が発揮される[16][17]

例えば、Javaのプロパティファイルにおける設定は以下のようになる。

database.url=jdbc:mysql://localhost:3306/mydb
database.username=root
database.password=example

このように、ドットケースは設定項目を明確に階層化し、各プロパティがどのカテゴリに属するかを直感的に理解できるようにする。

以上のように、ドットケースは階層的なプロパティの整理を目的とし、その視認性と整理整頓の利点から、特に設定ファイルにおいて広く使用されている命名規則である[9][15]

歴史

編集

1960年代:初期のコンピュータプログラミング

編集

ドットケースの起源は、コンピュータプログラミングの初期にまでさかのぼることができる[12][13]。1960年代には、FORTRANCOBOLなどの初期のプログラミング言語が登場し、これらの言語では変数名やプロパティ名の命名規則が厳密に定められていた[12][21]。この時代には、特に命名規則に関する標準は存在していなかったが、プログラムの可読性と保守性を向上させるための命名規則が模索されていた[12][22]

1980年代:構造化プログラミングの台頭

編集

1980年代に入ると、構造化プログラミングが主流となり、プログラムのモジュール化や再利用性が重要視されるようになった[17][23]。この時期には、変数名や関数名における命名規則がさらに重視され、特に大規模なシステム開発において一貫した命名規則が求められるようになった[16][17]。この頃から、プロパティ名にピリオド.を使用することで階層的に整理する方法が考案され、設定ファイルの管理が容易になった。

1990年代:オブジェクト指向プログラミングと標準化

編集

1990年代には、オブジェクト指向プログラミング(OOP)が普及し、JavaやC++などの言語が主流となった[24][25]。この時期には、Javaのプロパティファイルにおいてドットケースが広く採用され、階層的なプロパティの整理が一般的となった。例えば、Javaのjava.util.Propertiesクラスでは、設定項目をピリオド.で区切ることが推奨され、これによりプロパティの整理と視認性が大幅に向上した。

2000年代:Webアプリケーションとフレームワークの普及

編集

2000年代には、Webアプリケーションの開発が急速に進展し、様々なフレームワークやツールが登場した[9][26]。この時期には、MavenプロジェクトやASP.NET Coreなどのフレームワークにおいて、ドットケースが標準的に採用されるようになった[14][15]。これにより、複雑なプロジェクトの設定ファイルが階層的に整理され、一貫性と可読性が向上した。

2010年代以降:現代の開発環境

編集

2010年代以降、ドットケースは広く普及し、設定ファイルの標準的な命名規則として定着した[19][20]。特に、YAMLやJSONなどのデータ形式においても、プロパティ名の階層化にドットケースが利用されることが一般的となっている[11][27]。これにより、設定ファイルの管理がさらに容易になり、大規模なシステムにおける一貫性と保守性が向上している。

以上のように、ドットケースはプログラミングの歴史を通じて普及し、現代のソフトウェア開発において重要な役割を果たしている。

利点

編集

ドットケースは、プログラミングに関連する分野において顕著な利点がある。以下にそれらを詳述する。

視認性の向上

編集

ドットケースは、プロパティ名をピリオド.で区切ることにより、階層構造を視覚的に表現することができる[16][17]。この形式を採用することで、関連するプロパティを一目で識別しやすくなり、設定ファイルの読みやすさが向上する。例えば「person.title」「person.surname」「person.job.description」のように、各プロパティがどのカテゴリに属するかを直感的に理解することが可能である。

整理整頓

編集

ドットケースを使用することで、設定ファイルやプロパティファイルを階層的に整理することが可能になる[9][14]。これにより、複雑な設定項目をグループ化し、構造的に整理することができる。例えば、Javaのプロパティファイルでは「database.url」「database.username」「database.password」のように、関連する設定項目を一つのカテゴリにまとめることができる。

一貫性の維持

編集

ドットケースは、特定のフレームワークやツールにおいて標準的に採用されているため、プロジェクト全体で一貫性を保つことができる[15][19]。例えば、MavenプロジェクトやASP.NET Core Web API[14]では、ドットケースが広く使用されており、これにより設定ファイルの一貫した命名規則が維持される。

プロパティの管理の容易化

編集

ドットケースを使用することで、設定ファイルのプロパティをフィルタリングしやすくなる[9][14]。例えば、プレフィックスperson.」を使用することで、「person」に関連する全てのプロパティを簡単に抽出することができる。このようにして、特定のカテゴリに関連する設定項目を迅速に見つけ出し、管理することが可能になる。

以上のように、ドットケースは設定ファイルの視認性向上、整理整頓、一貫性の維持、プロパティ管理の容易化など、多くの利点を提供する命名規則である。このため、特に複雑な設定やプロパティを扱う際に、ドットケースは非常に有効な手段であると言える。

欠点

編集

ドットケースには多くの利点がある一方で、いくつかの欠点も存在する。以下にそれらを詳述する。

可読性の低下

編集

ドットケースは、階層構造を明示的に示すために便利であるが、過度にネストされた階層や長いプロパティ名を使用すると、かえって可読性が低下することがある[16][17]。例えば「system.configuration.database.connection.timeout.seconds」のような長いプロパティ名は、一目で理解するのが難しくなる。

設定の複雑化

編集

ドットケースを使用すると、設定ファイルの階層が深くなることがある[14][19]。これにより、設定項目の管理が複雑になり、特に大規模なシステムでは、プロパティの依存関係や相互関係を把握するのが難しくなる。

一貫性の維持の難しさ

編集

プロジェクト全体で一貫した命名規則を維持することは重要であるが、複数のチーム開発者が関与するプロジェクトでは、ドットケースの適用にばらつきが生じることがある[16][17]。これにより、設定ファイルの一貫性が損なわれ、管理が難しくなることがある。

名称衝突のリスク

編集

ドットケースは、異なるコンテキストで同じプロパティ名を使用するリスクがある[16][17]。例えば「user.name」と「admin.user.name」のように、異なるコンテキストで同じ「name」プロパティが使用される場合、名称衝突が発生し、設定の整合性が失われる可能性がある。

パフォーマンスの問題

編集

多量の設定項目を含む大規模な設定ファイルでは、ドットケースを使用することでパフォーマンスの低下が生じることがある[17][28]。特に、設定項目を頻繁に検索・更新する操作が多い場合、パフォーマンスのボトルネックとなることがある。

以上のように、ドットケースは多くの利点を持つ命名規則である一方、その適用には可読性や管理の複雑さ、一貫性の維持、名称衝突のリスク、パフォーマンスの問題など、いくつかの欠点が存在することを認識する必要がある。

適用範囲

編集

ドットケースは、主に以下のような設定ファイルやプロパティファイルにおいて広く使用されている。

プロパティファイル

編集

Javaのプロパティファイルにおいて、ドットケースは標準的な命名規則として採用されている[9][18]。例えば「database.url」「database.username」「database.password」のように、設定項目を階層的に整理するために使用される。この形式は、設定項目を論理的にグループ化し、関連するプロパティを一目で識別しやすくする。

YAMLファイル

編集

YAML形式の設定ファイルにおいても、ドットケースは階層構造を表現するために使用される[27][29]。例えば「server.port」「server.address」のように、サーバー設定を階層的に整理する際に便利である。YAMLファイルでは、ドットケースを用いることで設定項目の整理が容易になり、可読性が向上する。

リソースバンドル

編集

国際化対応のリソースバンドルファイルにおいて、翻訳キーを階層的に整理するためにドットケースが使用される[9][30]。例えば「message.error.notfound」「message.success.saved」のように、関連するメッセージをグループ化して管理することができる。これにより、翻訳キーの一貫性を保ちつつ、管理が容易になる。

フレームワークとツール

編集

MavenプロジェクトやASP.NET Core Web APIなどのフレームワークやツールにおいて、ドットケースは標準的な命名規則として採用されている[14][15]。Mavenの設定ファイルでは「project.build.directory」のようにプロパティを階層的に整理することで、設定項目の管理が容易になる。ASP.NET Core Web APIでは、ルートテンプレートやコントローラーの命名にドットケースが使用され、一貫した命名規則を維持することが推奨されている。

ドットケースはその階層構造を明示する特性から、設定ファイルやプロパティファイルの整理整頓に非常に有用であり、特に複雑なシステムにおいてその利便性が発揮される。

適用例

編集

ドットケースは、様々な設定ファイルやプロパティファイルにおいて広く使用されている。その具体的な適用例として、Javaのプロパティファイル、YAMLファイル、Mavenプロジェクトの設定ファイル、ASP.NET Core Web APIの設定ファイルなどが挙げられる。以下にそれぞれの適用例を示す。

Javaのプロパティファイル

編集

Javaのプロパティファイルにおいて、ドットケースは非常に一般的に使用される。この形式は、設定項目を論理的に整理し、関連するプロパティを階層構造で示すために利用される。

例えば、以下のような設定ファイルが典型的な例である。

database.url=jdbc:mysql://localhost:3306/mydb
database.username=root
database.password=example
server.port=8080
server.address=localhost

この例では「database」「server」というカテゴリに属するプロパティが明確に分けられている。

YAMLファイル

編集

YAML形式の設定ファイルでも、ドットケースは広く使用されている。

例えば、Spring Bootアプリケーション設定ファイルにおいて、ドットケースは以下のように使用される。

server:
  port: 8080
  address: localhost
database:
  url: jdbc:mysql://localhost:3306/mydb
  username: root
  password: example

この例では「server」「database」というカテゴリが明確に分けられ、各プロパティが階層的に整理されている。

Mavenプロジェクト

編集

Mavenの設定ファイルでも、ドットケースは標準的に使用される。

例えば、以下のような「pom.xml」ファイルにおいて、プロパティ名にドットケースが用いられる。

<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  <maven.compiler.source>1.8</maven.compiler.source>
  <maven.compiler.target>1.8</maven.compiler.target>
</properties>

この例では「project.build」「maven.compiler」などのカテゴリに属するプロパティが明確に分けられている。

ASP.NET Core Web API

編集

ASP.NET Core Web APIの設定ファイルにおいても、ドットケースは使用される。

例えば、以下のような「appsettings.json」ファイルがある。

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "AllowedHosts": "*",
  "ConnectionStrings": {
    "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=aspnet-CoreAPIApp-53D3BB2E-6176-4B1E-85C2-888BBFF7BCDE;Trusted_Connection=True;MultipleActiveResultSets=true"
  }
}

この例では「Logging」「ConnectionStrings」といったカテゴリに属する設定項目が階層的に整理されている。

以上のように、ドットケースは様々な設定ファイルやプロパティファイルにおいて、その視認性と整理整頓の利便性から広く使用されている。これにより、設定項目の管理が容易になり、プロジェクト全体の一貫性が保たれる。

標準およびベストプラクティス

編集

ドットケースは、設定ファイルやプロパティファイルにおいて、その視認性と保守性を高めるために広く採用されている。以下に、ドットケースの標準およびベストプラクティスを示す。

標準の採用

編集

特定のフレームワークやツールでは、ドットケースが標準的な命名規則として採用されている。例えば、MavenプロジェクトやASP.NET Core Web APIでは、プロパティ名や設定項目を階層的に整理するためにドットケースが使用されている[14][15]。これにより、設定ファイルの一貫性が保たれ、プロジェクト全体での命名規則が統一される。

一貫性の維持

編集

プロジェクト全体で一貫したドットケースの使用を維持することが重要である。これには、各チームや開発者が同じ命名規則を守るようにし、プロジェクトのドキュメントコードレビューで命名規則の遵守を確認することが含まれる[16][17]。統一された命名規則は、コードの可読性と保守性を大幅に向上させる。

階層構造の整理

編集

ドットケースを使用してプロパティを階層的に整理することで、設定項目の管理が容易になる[14][19]。例えば、プレフィックス「database.」を使用することで、データベースに関連する全てのプロパティをグループ化できる。この方法は、特に大規模なプロジェクトで有効であり、関連する設定項目を一目で識別できるようにする。

設定ファイルの最適化

編集

設定ファイルにおいて、ドットケースを使用する際には、プロパティ名が過度に長くならないように工夫することが推奨される[16][17]。短く明確なプロパティ名を使用し、必要に応じて適切なプレフィックスを付与することで、設定ファイルの可読性と保守性を向上させる。

ベストプラクティスの導入

編集

ドットケースの使用においては、以下のベストプラクティスを導入することが推奨される[16][17]

  • プロパティ名はできるだけ短くし、意味が明確になるようにする。
  • 階層の深さを適度に保ち、過度にネストしないようにする。
  • プロジェクトのドキュメントに命名規則を明示し、全ての開発者が参照できるようにする。
  • 設定ファイルの定期的なレビューを行い、一貫性と最適化を維持する。

ドットケースは、その視認性と整理整頓の利便性から、特に複雑な設定やプロパティを管理する際に有効である。しかし、その適用には一貫性と可読性を維持するための注意が必要であり、標準とベストプラクティスを守ることが重要である。

命名規則一覧

編集
名称 英語表記 説明 表記例
スネークケース snake case 単語間をアンダースコア(_)で繋ぐ形式。 example_variable
スクリーミングスネークケース screaming snake case 単語間をアンダースコア(_)で繋ぎ、全て大文字にする形式。「アッパースネークケース」(upper snake case) や「コンスタントケース」(constant case) とも呼ばれる[31] EXAMPLE_VARIABLE
キャメルケース camel case 各単語の頭文字を大文字にし、単語を連結する形式(最初の単語のみ頭文字が小文字)。.NETの文脈で使用。 exampleVariable
ローワーキャメルケース lower camel case キャメルケースと同じ形式だが、フレームワークや言語に依存しない表現。 exampleVariable
パスカルケース Pascal case 各単語の頭文字を大文字にし、単語を連結する形式(キャメルケースと似ているが、最初の単語の頭文字も大文字)。.NETの文脈で使用。 ExampleVariable
アッパーキャメルケース upper camel case パスカルケースと同じ形式だが、フレームワークや言語に依存しない表現。 ExampleVariable
ケバブケース kebab case 単語間をハイフン(-)で繋ぎ、各単語の頭文字を小文字にする形式。

「チェインケース/チェーンケース」(chain case) とも呼ばれる[31]

example-variable
トレインケース train case 単語間をハイフン(-)で繋ぎ、各単語の頭文字を大文字にする形式。 Example-Variable
ドットケース dot case 単語間をドット(.)で繋ぐ形式。 example.variable
ローワーケース lower case 全て小文字で単語を連結する形式。 examplevariable
アッパーケース upper case 全て大文字で単語を連結する形式。 EXAMPLEVARIABLE

脚注

編集

注釈

編集
  1. ^ Googleによる検索では、英語圏では「ドットケース」の使用が最も多く、次に「ドットノーテーション」や「ドットシンタックス」が続く。「ピリオドケース」の使用はあまり見られない。日本語での「ドット記法」という表現も浸透している。

出典

編集
  1. ^ a b State Machines - What’s in a name? | Stately” (英語). stately.ai (2024年1月23日). 2024年7月5日閲覧。
  2. ^ a b Cherny, Boris (2019-04-25) (英語). Programming TypeScript: Making Your JavaScript Applications Scale. "O'Reilly Media, Inc.". ISBN 978-1-4920-3762-0. https://www.google.co.jp/books/edition/Programming_TypeScript/Y-mUDwAAQBAJ?hl=ja&gbpv=1&dq=Programming+TypeScript&printsec=frontcover 
  3. ^ a b Crockford, Douglas (2008-05-08) (英語). JavaScript: The Good Parts: The Good Parts. "O'Reilly Media, Inc.". ISBN 978-0-596-55487-3. https://www.google.com/books/edition/JavaScript_The_Good_Parts/PXa2bby0oQ0C?hl=ja&gbpv=1&printsec=frontcover 
  4. ^ a b Skeet, Jon (2019-03-23) (英語). C# in Depth: Fourth Edition. Manning Publications. ISBN 978-1-61729-453-2. https://www.google.co.jp/books/edition/C_in_Depth/yEoZtAEACAAJ?hl=ja 
  5. ^ Dot Notation: A Beginner’s Guide” (英語). Built In. 2024年7月5日閲覧。
  6. ^ The Power of Dot-Notation in Programming and SEO” (英語). Startup House. 2024年7月5日閲覧。
  7. ^ Reproducible Data Science in R: Writing better functions” (英語). waterdata.usgs.gov (2024年6月17日). 2024年7月5日閲覧。
  8. ^ information, I. T. (2023年11月13日). “【JavaScript】「ドット記法」と「ブラケット記法」の違い”. IT Information. 2024年7月5日閲覧。
  9. ^ a b c d e f g h i j k Walls, Craig (2022-03) (英語). Spring in Action, Sixth Edition. Simon and Schuster. ISBN 978-1-61729-757-1. https://www.google.co.jp/books/edition/Spring_in_Action_Sixth_Edition/2zVbEAAAQBAJ?hl=ja&gbpv=1&dq=Spring+in+Action&printsec=frontcover 
  10. ^ Gregory, Gary; Bauer, Christian (2015-10-27) (英語). Java Persistence with Hibernate. Simon and Schuster. ISBN 978-1-63835-522-9. https://www.google.co.jp/books/edition/Java_Persistence_with_Hibernate/8TgzEAAAQBAJ?hl=ja&gbpv=1&dq=Java+Persistence+with+Hibernate&printsec=frontcover 
  11. ^ a b Introduction to YAML: Demystifying YAML Data Serialization Format. Lets Practice Academy. (2020-12-4). https://www.amazon.co.jp/Introduction-YAML-Demystifying-Serialization-English-ebook/dp/B08PQDLSR3 
  12. ^ a b c d Knuth, Donald E. (1998-04-24) (英語). The Art of Computer Programming: Sorting and Searching, Volume 3. Addison-Wesley Professional. ISBN 978-0-321-63578-5. https://www.google.co.jp/books/edition/The_Art_of_Computer_Programming/cYULBAAAQBAJ?hl=ja&gbpv=1&dq=The+Art+of+Computer+Programming&printsec=frontcover 
  13. ^ a b Abelson, Harold; Sussman, Gerald Jay (2022-04-12) (英語). Structure and Interpretation of Computer Programs: JavaScript Edition. MIT Press. ISBN 978-0-262-54323-1. https://www.google.co.jp/books/edition/Structure_and_Interpretation_of_Computer/4rtNEAAAQBAJ?hl=ja&gbpv=1&dq=Structure+and+Interpretation+of+Computer+Programs&printsec=frontcover 
  14. ^ a b c d e f g h i j k l Freeman, Adam (2020-06-06) (英語). Pro ASP.NET Core 3: Develop Cloud-Ready Web Applications Using MVC, Blazor, and Razor Pages. Apress. ISBN 978-1-4842-5440-0. https://www.google.co.jp/books/edition/Pro_ASP_NET_Core_3/o5npDwAAQBAJ?hl=ja&gbpv=1&dq=Pro+ASP.NET+Core+3&printsec=frontcover 
  15. ^ a b c d e f g h i Company, Sonatype (2008-09-24) (英語). Maven: The Definitive Guide: The Definitive Guide. "O'Reilly Media, Inc.". ISBN 978-0-596-55178-0. https://www.google.co.jp/books/edition/Maven_The_Definitive_Guide/cBvZ4s72Z0gC?hl=ja&gbpv=1&dq=Maven:+The+Definitive+Guide&printsec=frontcover 
  16. ^ a b c d e f g h i j k l m n Martin, Robert C. (2008-08-01) (英語). Clean Code: A Handbook of Agile Software Craftsmanship. Pearson Education. ISBN 978-0-13-608325-2. https://www.google.co.jp/books/edition/Clean_Code/_i6bDeoCQzsC?hl=ja&gbpv=1&dq=Clean+Code:+A+Handbook+of+Agile+Software+Craftsmanship&printsec=frontcover 
  17. ^ a b c d e f g h i j k l m n o p McConnell, Steve (1993) (英語). Code Complete: A Practical Handbook of Software Construction. Microsoft Press. ISBN 978-1-55615-484-3. https://www.google.co.jp/books/edition/Code_Complete/lohA2aY9gu0C?hl=ja&gbpv=1&bsq=Code+Complete:+A+Practical+Handbook+of+Software+Construction&dq=Code+Complete:+A+Practical+Handbook+of+Software+Construction&printsec=frontcover 
  18. ^ a b Oaks, Scott (2014-04-10) (英語). Java Performance: The Definitive Guide: Getting the Most Out of Your Code. "O'Reilly Media, Inc.". ISBN 978-1-4493-6354-3. https://www.google.co.jp/books/edition/Java_Performance_The_Definitive_Guide/aIhUAwAAQBAJ?hl=ja&gbpv=1&dq=Java+Performance:+The+Definitive+Guide&printsec=frontcover 
  19. ^ a b c d e Walls, Craig (2015-12-16) (英語). Spring Boot in Action. Simon and Schuster. ISBN 978-1-63835-358-4. https://www.google.co.jp/books/edition/Spring_Boot_in_Action/IzkzEAAAQBAJ?hl=ja&gbpv=1&dq=Spring+Boot+in+Action&printsec=frontcover 
  20. ^ a b Morris, Kief (2016-06-09) (英語). Infrastructure as Code: Managing Servers in the Cloud. "O'Reilly Media, Inc.". ISBN 978-1-4919-2439-6. https://www.google.co.jp/books/edition/Infrastructure_as_Code/BIhRDAAAQBAJ?hl=ja&gbpv=1&dq=Infrastructure+as+Code:+Managing+Servers+in+the+Cloud&printsec=frontcover 
  21. ^ Shelly, Gary B.; Cashman, Thomas J.; Foreman, Roy O. (2000) (英語). Structured COBOL Programming. Course Technology. ISBN 978-0-7895-5703-2. https://www.google.co.jp/books/edition/Structured_COBOL_Programming/w_1pJrnApygC?hl=ja&gbpv=1&bsq=COBOL+Programming+Shelly+Cashman&dq=COBOL+Programming+Shelly+Cashman&printsec=frontcover 
  22. ^ Petzold, Charles (2022-08-02) (英語). Code: The Hidden Language of Computer Hardware and Software. Microsoft Press. ISBN 978-0-13-790929-2. https://www.google.co.jp/books/edition/Code/iNfPEAAAQBAJ?hl=ja&gbpv=1&dq=Code:+The+Hidden+Language+of+Computer+Hardware+and+Software&printsec=frontcover 
  23. ^ Yourdon, Edward; Constantine, Larry L. (1979) (英語). Structured Design: Fundamentals of a Discipline of Computer Program and Systems Design. Prentice Hall. ISBN 978-0-13-854471-3. https://www.google.co.jp/books/edition/Structured_Design/zMQmAAAAMAAJ?hl=ja&gbpv=1&bsq=Structured+Design:+Fundamentals+of+a+Discipline+of+Computer+Program+and+Systems+Design&dq=Structured+Design:+Fundamentals+of+a+Discipline+of+Computer+Program+and+Systems+Design&printsec=frontcover 
  24. ^ Gamma, Erich; Helm, Richard; Johnson, Ralph; Vlissides, John (1995) (ドイツ語). Design Patterns: Elements of Reusable Object-Oriented Software. Pearson Deutschland GmbH. ISBN 978-3-8273-2824-3. https://www.google.co.jp/books/edition/Design_Patterns/jUvf7wMUGcUC?hl=ja&gbpv=1&dq=%22Design+Patterns:+Elements+of+Reusable+Object-Oriented+Software&printsec=frontcover 
  25. ^ Stroustrup, Bjarne (2000) (ドイツ語). The C++ Programming Language. Pearson Deutschland GmbH. ISBN 978-3-8273-1660-8. https://www.google.co.jp/books/edition/The_C++_Programming_Language/YR5CqZcFJU8C?hl=ja&gbpv=1&dq=The+C+++Programming+Language&printsec=frontcover 
  26. ^ Hartl, Michael (2022-10-24) (英語). Ruby on Rails Tutorial: Learn Web Development with Rails. Addison-Wesley Professional. ISBN 978-0-13-804997-3. https://www.google.co.jp/books/edition/Ruby_on_Rails_Tutorial/-NnPEAAAQBAJ?hl=ja&gbpv=1&dq=Ruby+on+Rails+Tutorial:+Learn+Web+Development+with+Rails&printsec=frontcover 
  27. ^ a b Gutierrez, Felipe (2018-12-12) (英語). Pro Spring Boot 2: An Authoritative Guide to Building Microservices, Web and Enterprise Applications, and Best Practices. Apress. ISBN 978-1-4842-3676-5. https://www.google.co.jp/books/edition/Pro_Spring_Boot_2/S8l-DwAAQBAJ?hl=ja&gbpv=1&dq=Pro+Spring+Boot+2:+An+Authoritative+Guide+to+Building+Microservices,+Web+and+Enterprise+Applications,+and+Best+Practices&printsec=frontcover 
  28. ^ Thomas, David; Hunt, Andrew (2019-07-30) (英語). The Pragmatic Programmer: Your journey to mastery, 20th Anniversary Edition. Addison-Wesley Professional. ISBN 978-0-13-595691-5. https://www.google.co.jp/books/edition/The_Pragmatic_Programmer/LhOlDwAAQBAJ?hl=ja&gbpv=1&dq=The+Pragmatic+Programmer:+Your+Journey+to+Mastery&printsec=frontcover 
  29. ^ Poulton, Nigel (2023-07-04) (英語). The Kubernetes Book. Nigel Poulton Ltd. ISBN 978-1-916585-19-5. https://www.google.co.jp/books/edition/The_Kubernetes_Book/enTJEAAAQBAJ?hl=ja&gbpv=1&dq=The+Kubernetes+Book&printsec=frontcover 
  30. ^ Deitsch, Andrew; Czarnecki, David (2001-03-15) (英語). Java Internationalization. "O'Reilly Media, Inc.". ISBN 978-0-596-00019-6. https://www.google.co.jp/books/edition/Java_Internationalization/djuMgaEuBhQC?hl=ja&gbpv=1&dq=Java+Internationalization&printsec=frontcover 
  31. ^ a b スネークケースとは - IT用語辞典”. IT用語辞典 e-Words. 2024年7月7日閲覧。

関連項目

編集