Skip to content
On this page

Naming Conventions

Standaard

  • Engels

Database

Tabellen

Conventions

  • snake_cased
  • plural
Voorbeelden

Right

  • users
  • user_types
  • memberships
  • user_memberships
  • membership_users

Wrong

  • gebruiker
  • user
  • userType
  • MeMbErShIp
  • usersMembership

Kolommen

Conventions

  • snake_cased
  • No negative booleans (bv: inactive)
  • Prefix voor booleans (bv: is_active, has_membership)
  • Status = integer (met comment en ValueObject)
  • Foreign Keys gebruiken voor tabellen die sterk gerelateerd zijn (bv: invoice -> invoice-items)
    • Eventueel met onDelete CASCADE als dit logisch is
  • Volgorde:
    • values
    • foreign keys (bv: membership_id)
    • timestamps :::
Voorbeelden

Wrong

  • id
  • membershipId
  • name
  • email
  • pa$$w0rd

Right

  • id
  • name
  • email
  • password
  • membership_id
  • created_at
  • updated_at

PHP

Classes

Conventions

  • CamelCased (uppercase)
  • 90% = Singular
    • Models (bv User, Membership, Invoice)
    • Controllers (bv UserController, MembershipController, InvoiceController)
  • 10% Plural
    • ValueObjects (bv UserStatusses, MembershipTypes, InvoiceStatusses)
  • Descriptive

Enums

Conventions

  • PascalCase
  • Singular
  • Descriptive
  • Use a backed enum when possible to fallback to scalar type
php
<?php

namespace App\Domains\Auctions\Enums;

enum AuctionStatus: int
{
    case Open = 1;
    case Closed = 2;
    case Cancelled = 3;
    case PausedByComplaint = 4;
}

Methods

Conventions

  • camelCased (lowercase)
    • Tests = snake_cased (bv it_calculates_room_pricings_correctly)
  • Descriptive

Variables

Conventions

  • camelCased (lowercase)
  • Descriptive
  • no abbreviations
Voorbeelden

Wrong

  • $c
  • $s
  • $e
  • $payment_service

Right

  • $controller
  • $service
  • $entity
  • $paymentService