Best of Design PatternsJanuary 2025

  1. 1
    Article
    Avatar of laravelkidsLaravel Kids·1y

    Best Design Pattern source for Learning

    Refactoring Guru provides comprehensive resources for learning design patterns in PHP. The site includes detailed explanations, examples, and practical advice for implementing various patterns in real-world projects. Ideal for anyone looking to enhance their software design skills.

  2. 2
    Article
    Avatar of dotnetsquad.NET·1y

    Separation of Concerns Principle: A Reflection after a job-interview

    The author's reflection on the Separation of Concerns (SoC) principle in software development, sparked by a challenging job interview. They discussed why passing request models directly through layers is considered bad practice and the importance of using Data Transfer Objects (DTOs) to maintain clear boundaries and reduce complexity. The post emphasizes the importance of implementing SoC properly to enforce isolation between layers and enhance security.

  3. 3
    Article
    Avatar of justjavaJust Java·1y

    Factory Design Pattern

    The Factory Design Pattern is a creational pattern that centralizes object creation logic, providing a way to instantiate objects without exposing the instantiation details to the client. This promotes loose coupling, easier maintenance, and extensibility. A real-world example in a healthcare ERP system demonstrates how different reports (e.g., Pharmacy, Billing, Inpatient) can be generated using this pattern. The pattern is beneficial for runtime object type determination, decoupling client code, and centralizing complex creation logic.

  4. 4
    Video
    Avatar of communityCommunity Picks·1y

    Avoid Returning Null From Methods – There Is a Better Way To Write Them!

    Nullable reference types have improved C# by reducing NullReferenceExceptions, yet returning null from methods can make domain models less expressive. Instead, always return a proper object. By introducing types with valid defaults, avoid the need to handle nulls, simplifying both producers and consumers of objects. This follows the Null Object pattern, promoting more robust and maintainable code.