Search

Lessons (19)

  • I — Interface Segregation Principle

    … fat interfaces cause LSP violations. The fix: small, role-based interfaces ts // ✅ One interface per capability interface Printer …

  • Onion Architecture & Clean vs Hexagonal vs Onion

    … interfaces live in the inside Just like the other two styles, the repository interface is declared in an …

  • Clean Architecture

    … one action each Entities + interfaces RegisterUser , PlaceOrder 🔵 Interface adapters Controllers, presenters, repositories Use cases UserController , PostgresUserRepo 🟣 Frameworks …

  • Clean Architecture in Depth

    … one class per user action The application's behaviour changes Entities + port interfaces 🔵 Interface adapters Controllers, presenters, gateways …

  • SOLID at a Glance

    … TypeScript adds real interfaces. - Functions are first-class, so you can often pass a function where Java would …

  • Which Pattern Do I Need?

    … Proxy controls access to the same behaviour. Adapter vs Facade Adapter makes one interface fit another. Facade simplifies …

  • D — Dependency Inversion Principle

    … details point UP to abstractions"] OS2[OrderService] -- R{{OrderRepository<br/ interface}} OS2 -- M{{Mailer<br/ interface}} MySQL[MySQLOrderRepository …

  • Hexagonal Architecture (Ports & Adapters)

    … Promise<void ; } export interface LoanRepository { save(loan: Loan): Promise<void ; countActiveFor(memberId: string): Promise<number ; } export interface Notifier …

  • TypeScript Essentials

    … Learn the core types, interfaces, unions, generics and utility types with practical examples. The big idea Imagine electrical …

  • Monolith vs Microservices

    … each module has its own folder, public interface and (ideally) its own database schema. Modules talk only through …

  • O — Open/Closed Principle

    … body<br/ (never changes)"] --- M{{Lens mount<br/ = interface}} M --- L1[Wide lens] M --- L2[Zoom lens] M …

  • Structural Patterns: How to Connect Objects

    … Adapter Make incompatible interfaces work together 🔌 travel plug Decorator Wrap to add behaviour, same interface ☕ coffee toppings Facade …

  • MVC, MVP & MVVM

    … The Presenter holds all the presentation logic and talks to the View through an interface, which makes it …

  • Microkernel (Plugin) Architecture

    … the ONLY thing plug-ins import from the core export interface MarkdownPlugin { name: string; version: string; / Transform raw …

  • Views, Triggers & Stored Procedures

    … It can simplify joins, expose a secure subset, and give clients a stable interface. A materialized view stores …

  • Vertical Slice Architecture & the Modular Monolith

    … Neighbours can't walk into each other's kitchens; they knock (a public interface). A modular monolith is …

  • Domain-Driven Design: Tactical Patterns

    … a port), implemented in infrastructure (an adapter) export interface OrderRepository { get(id: OrderId): Promise<Order ; // loads the WHOLE …

  • Code Smells & Refactoring

    … map((shape) = shape.area()); mermaid classDiagram class Shape { <<interface area() } Shape < .. Circle Shape < .. Square Shape < .. Triangle Adding a …

  • Creational Patterns: How to Make Objects

    … send("Your order shipped!"); mermaid classDiagram class Notifier { <<interface +send(msg) } Notifier < .. EmailNotifier Notifier < .. SmsNotifier Notifier < .. PushNotifier createNotifier …