2020/08/12
スムーズに開発を進めるためにも命名規則に沿って名前をつけることは大事です。
Laravelでは他のフレームワークに比べると命名規則は厳しくないと言われています。
しかし、いくつかの作法があるのも事実です。
Laravelをはじめて学習する方は最初にここを抑えておくと、プロジェクト全体に統一感が出ていいかもしれません。
今回は命名規則についてのエントリーです。
INDEX
複数の単語を組み合わせる場合
プログラミングにおいて複数キーワードの名前の付け方としてアッパーキャメル記法、ローワーキャメル記法とスネーク記法という記述方法があります。
アッパーキャメル記法
先頭を大文字で書き始め、複合語のスペースをなくし要素の先頭を大文字にします。
(※パスカルケースとも呼びます。)
[例] user + parameter ⇒ UserParameter
文字のラインが凸凹になっており、ラクダのこぶのように見えることからキャメル記法と名付けられました。
Laravelでの使用方法
種類 | 単数/複数 | 例 |
---|---|---|
モデル | 単数形 | UserMsg.php AccessRanking.php |
コントローラ | どちらもOK | UserMsgController.php AccessRankingController.php |
ローワーキャメル記法
先頭を小文字で書き始め、複合語のスペースをなくし要素の先頭は大文字にします。
アッパーキャメルをパスカルケースと呼ぶ人はローワーキャメルを単にキャメルケースと読んだりします。
[例] user + parameter ⇒ userParameter
Laravelでの使用方法
種類 | 単数/複数 | 例 |
---|---|---|
メソッド | - | userProfile() postRegister() |
スネーク記法
単語と単語の区切りにアンダースコアを使う記述方法をスネーク記法と呼びます。
[例] user + parameter ⇒ user_parameter
文字のラインがくねくねした蛇に見えることからスネーク記法と名づけられました。
Laravelではメソッドの名前やマイグレーションファイルの名前、DBのカラム名を付けるときに使用します。
Laravelでの使用方法
種類 | 単数/複数 | 例 |
---|---|---|
テーブル名 | 複数形 | access_rankings user_profiles |
変数名 | - | $user_name $college_name_current |
Bladeのファイル名 | - | user_admin.blade.php user_profile.blade.php |
マイグレーションのファイル名 | 単数形 | create_user_table.php add_pref_to_users.php |
事例
例えばログインの履歴を残すテーブルを作る場合は以下のように全て名前が決まります。
テーブル名 | login_records | 複数形、スネークケース |
---|---|---|
モデル名 | LoginRecord | 単数形、アッパーキャメルケース |
コントローラ | LoginRecordsController | (今回は)複数形、アッパーキャメル |
特にテーブル名とモデル名は規則に沿って名前をつけないと紐づきません。
命名規則に関しては以上です。
PHPフレームワーク Laravel入門 第2版
僕がはじめてLaravelを学習するために参考にしたサイトは、掌田津耶乃(しょうだつやの)さんの libro というサイトです。当時(2016年)、Laravel学習サイトの中でもこのサイトは群を抜いてわかりやすく説明されていたので、とても勉強になったのを覚えています。この本は掌田津耶乃さんが書いた本なので、わかりやすく解説されているだろうと kindle で購入しました。2020年8月の時点でいうと日本国内にて唯一の Laravel の良書と言っても良いかと思います。口コミでもLaravel本のロングセラー定番解説書として認知されています。当サイトではチュートリアル形式でLaravelを解説しているので、初心者の方はこの本とセットで学習されるといいと思います。しかし、かなりわかりやすく解説されているとはいえ、PHP中級者以上のスキルは必要です。PHP自体の知識が乏しい方は 独習PHP 第3版 をあわせて購入することをお勧めします。
仕事で Laravel を使っています。気づいたことや新しい発見など情報を発信していきます。問い合わせはこちら。