Tag: design
Abstract Factory Pattern
PHP 5.0+
Creates families of related objects ensuring they are used together consistently without mixing implementations.
6mo ago
Code Quality intermediate
Colour-Blind Accessible Design
CSS3
1
Design for the 8% of men with colour vision deficiency — pair colour with icons, labels, and patterns; never use colour as the only differentiator.
6mo ago
Accessibility intermediate
Gateway Pattern
1
A class that encapsulates access to an external system or resource — wrapping HTTP APIs, queues, or legacy systems behind a clean interface that the rest of the application uses.
6mo ago
Code Quality intermediate
Global Variable Abuse
PHP 5.0+
Using global variables or the global keyword to share state between functions — making code unpredictable, untestable, and impossible to reason about.
6mo ago
Code Quality intermediate
Low Cohesion
A class or module that does many unrelated things — high coupling's counterpart, making code hard to understand, test, and reuse.
6mo ago
Code Quality intermediate
Memento Pattern
PHP 5.0+
A behavioural pattern that captures an object's internal state and stores it externally so it can be restored later — enabling undo, snapshots, and versioning without exposing internals.
6mo ago
Code Quality intermediate
Transaction Script Pattern
3
A pattern where each business operation is a single procedure — simple, linear, and appropriate for straightforward workflows without complex domain logic.
6mo ago
Code Quality intermediate
Database Normalisation
1
The process of structuring a relational database to reduce redundancy and improve integrity, defined through progressive normal forms (1NF through BCNF).
6mo ago
Database intermediate
The process of defining tables, columns, data types, constraints, and relationships — decisions made at schema design time are expensive to reverse once data is live.
6mo ago
Database intermediate
A foreign key is a column that references the primary key of another table, enforcing referential integrity — no orphaned rows pointing to non-existent parents.
6mo ago
Database intermediate
Ubiquitous Language (DDD)
2
A shared vocabulary between developers and domain experts, used consistently in code, tests, documentation, and conversation.
6mo ago
Architecture intermediate
UUID vs ULID vs Auto-Increment
PHP 7.0+
Primary key strategies: auto-increment is simple and fast, UUID v4 is globally unique but random (poor index performance), UUID v7 and ULID are sortable globally unique IDs.
6mo ago
Database intermediate