11 repository-uri
Design strategies that favor composing objects over using inheritance hierarchies to reduce coupling.
Distinct from Composition Hierarchies: Distinct from View Hierarchy Composition as it applies to general object logic, not just UI elements.
Explore 11 awesome GitHub repositories matching software engineering & architecture · Object Composition Patterns. Refine with filters or upvote what's useful.
This project is a collection of engineering guidelines and best practices for writing readable and maintainable JavaScript source code. It serves as a clean code guide and refactoring manual to help developers improve the structure of their codebases. The repository provides a reference for applying SOLID principles to reduce coupling and enable extensions without modifying existing logic. It includes a naming convention standard for using explicit, searchable identifiers and a guide for asynchronous patterns to replace nested callbacks with clearer execution flows. The guidelines cover soft
Offers guidance on building extensible structures through object composition instead of deep inheritance.
This project is a comprehensive collection of software design patterns implemented in Python. It serves as a reference for architectural, behavioral, creational, and structural patterns to guide the organization of Python applications. The collection covers behavioral strategies for managing object communication and state, creational techniques for controlling object instantiation, and structural methods for composing classes and objects into flexible hierarchies. It also includes architectural references for system-wide structuring, such as multi-tier architectures and blackboard models. Th
Implements object composition strategies using adapters and decorators to extend behavior without inheritance.
DesignPatternsPHP is a reference collection of software architecture patterns implemented in PHP 8. It provides a guide for object-oriented programming through sample code demonstrating creational, structural, and behavioral design patterns. The project includes reference implementations for common patterns such as factories, builders, singletons, adapters, bridges, and proxies. Each implementation is accompanied by a PHPUnit test suite to verify that the patterns behave correctly and produce expected logical outcomes. The codebase covers a broad range of architecture capabilities, including
Implements object composition patterns that favor nesting objects over class inheritance to reduce coupling.
This project is a set of software engineering standards and architectural patterns for writing maintainable and refactorable TypeScript code. It provides a comprehensive guide for implementing clean code principles, focusing on the application of SOLID design and structural patterns to build decoupled systems. The framework prioritizes composition over inheritance and utilizes dependency inversion to reduce system coupling. It establishes standards for strict static typing and the use of read-only modifiers to ensure type safety and eliminate runtime errors. The guidance covers a broad range
Provides design strategies that prioritize object composition over inheritance hierarchies to reduce system coupling.
This project is a collection of software design patterns implemented in Go, serving as a technical reference and a set of practical programming examples. It maps theoretical architectural patterns to concrete code to demonstrate structural, creational, and behavioral coding techniques. The repository provides implementations for creational patterns focused on object instantiation and blueprint management, structural patterns for organizing object compositions, and behavioral patterns that manage object interactions and responsibilities. The content covers broad capability areas including in
Implements the Composite pattern to treat single objects and collections of objects under a shared interface.
Acest proiect este un ghid de implementare a modelelor de design software și o referință arhitecturală. Oferă o colecție practică de exemple de cod care demonstrează modele creaționale, structurale și comportamentale pentru a îmbunătăți mentenabilitatea și calitatea software-ului. Biblioteca include implementări standardizate pentru instanțierea obiectelor prin modele creaționale, șabloane pentru asamblarea obiectelor în ierarhii eficiente folosind modele structurale și exemple pentru gestionarea comunicării între obiecte și distribuția responsabilităților prin modele comportamentale. Proiectul mapează aceste modele de design abstracte pe domenii de business specifice, cum ar fi tranzacțiile și marketingul, pentru a demonstra cum se pot rezolva probleme software din lumea reală. Aceasta include aplicarea dispatch-ului polimorfic la runtime și decuplarea bazată pe interfețe pentru a reduce complexitatea sistemului și a crește scalabilitatea.
Implements structural patterns such as Adapter, Bridge, Composite, and Proxy for efficient object composition.
Portfolio and risk analytics in Python
Assembles multiple independent analytical modules into a single report by orchestrating plot and metric generation.
Acest proiect este o colecție de referință cu exemple practice care demonstrează implementarea modelelor de design software comune în Kotlin. Acesta servește drept ghid pentru bunele practici arhitecturale și principiile orientate pe obiecte prin aplicarea modelelor comportamentale, de creație și structurale. Colecția oferă implementări concrete pentru a demonstra cum să decuplezi instanțierea obiectelor, să gestionezi comunicarea și responsabilitatea între obiecte și să organizezi relații complexe între clase și obiecte. Referința acoperă modele de creație precum fabrici și constructori, modele structurale incluzând adaptoare și compozite, și modele comportamentale precum observatori și strategii.
Implements design strategies that prioritize object composition over inheritance to reduce coupling in Kotlin.
Acest proiect este o bibliotecă de design patterns pentru TypeScript și un ghid de arhitectură. Oferă o colecție de tipare de arhitectură software standard în industrie, implementate în TypeScript pentru a demonstra crearea și comunicarea obiectelor. Biblioteca servește drept referință practică pentru aplicarea principiilor de design orientat pe obiecte, utilizând tipizarea statică pentru a impune cerințele structurale ale acestor tipare în timpul fazei de compilare. Conținutul acoperă implementarea tiparelor de creație pentru a decupla instanțierea obiectelor de logica de business, tipare structurale pentru a aranja clasele și obiectele în compoziții mai mari și tipare comportamentale pentru a gestiona comunicarea obiectelor și distribuția responsabilităților.
Provides design strategies for composing objects to simplify complex structural relationships.
django-crispy-forms is a Django form rendering library used to generate styled HTML output from forms. It employs a programmatic form layout engine that allows the composition of form structures and styling using Python objects rather than handwritten HTML templates. The library uses a template pack system to decouple form logic from visual styling, enabling the application of different CSS frameworks through configuration settings. This ensures frontend UI consistency by swapping the set of HTML templates used for various frameworks. The tool provides a Django template filter to produce com
Builds form output from a tree of Python objects (Div, Field, ButtonHolder) that map to structured HTML.
Acest proiect este o colecție de explicații simplificate și implementări de cod pentru modele de design software comune folosind JavaScript. Servește ca un ghid pentru implementarea modelelor de design creaționale, structurale și comportamentale pentru a rezolva probleme de arhitectură software. Resursa categorizează modelele în trei grupuri principale. Modelele creaționale se concentrează pe instanțierea flexibilă a obiectelor și gestionarea resurselor. Modelele structurale organizează relațiile dintre obiecte și interfețele pentru a forma structuri eficiente. Modelele comportamentale gestionează comunicarea și interacțiunea între obiecte. Materialul acoperă concepte fundamentale, inclusiv programarea orientată pe obiecte, planificarea arhitecturii software și strategii de refactorizare a codului pentru a reduce datoria tehnică.
Provides strategies for composing objects to decouple interfaces from implementations and reduce coupling.