11 个仓库
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.
本项目是一个软件设计模式实现指南和架构参考。它提供了一系列实用的代码示例,演示了创建型、结构型和行为型模式,以提高软件的可维护性和质量。 该库包括通过创建型模式进行对象实例化的标准化实现、使用结构型模式将对象组装成高效层次结构的模板,以及通过行为型模式管理对象通信和职责分配的示例。 该项目将这些抽象设计模式映射到特定的业务领域(如交易和营销),以演示如何解决现实世界的软件问题。这包括应用多态运行时分派和基于接口的解耦,以降低系统复杂性并提高可扩展性。
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.
本项目是一个参考集合,展示了 Kotlin 中常见软件设计模式的实际实现。它通过行为型、创建型和结构型模式的应用,作为架构最佳实践和面向对象原则的指南。 该集合提供了具体的实现,演示了如何解耦对象实例化、管理对象间的通信与职责,以及组织复杂的类和对象关系。 该参考涵盖了工厂和构建器等创建型模式,适配器和组合模式等结构型模式,以及观察者和策略等行为型模式。
Implements design strategies that prioritize object composition over inheritance to reduce coupling in Kotlin.
该项目是一个 TypeScript 设计模式库和架构指南。它提供了一系列在 TypeScript 中实现的行业标准软件架构模式,以演示对象创建和通信。 该库作为应用面向对象设计原则的实用参考,利用静态类型在编译阶段强制执行这些模式的结构要求。 内容涵盖了创建型模式的实现(以解耦对象实例化与业务逻辑)、结构型模式(以将类和对象组织成更大的组合)以及行为型模式(以管理对象通信和责任分配)。
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.
This project is a collection of simplified explanations and code implementations for common software design patterns using JavaScript. It serves as a guide for implementing creational, structural, and behavioral design patterns to solve software architecture problems. The resource categorizes patterns into three primary groups. Creational patterns focus on flexible object instantiation and resource management. Structural patterns organize object relationships and interfaces to form efficient structures. Behavioral patterns manage communication and interaction between objects. The material co
Provides strategies for composing objects to decouple interfaces from implementations and reduce coupling.