awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

14 个仓库

Awesome GitHub RepositoriesPackage Dependency Decoupling

Techniques for using placeholders in package-level containers to keep packages agnostic of concrete implementations.

Distinct from Dependency Injection Containers: Focuses on the architectural decoupling of package dependencies using DI, not package manager installation.

Explore 14 awesome GitHub repositories matching devops & infrastructure · Package Dependency Decoupling. Refine with filters or upvote what's useful.

Awesome Package Dependency Decoupling GitHub Repositories

用 AI 发现最棒的仓库。我们将通过 AI 为您搜索最匹配的仓库。
  • federico-busato/modern-cpp-programmingfederico-busato 的头像

    federico-busato/Modern-CPP-Programming

    15,808在 GitHub 上查看↗

    This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu

    Explains how to decouple interfaces from implementations using opaque pointers to accelerate compilation and hide internal logic.

    HTMLc-plus-pluscode-qualitycompilers
    在 GitHub 上查看↗15,808
  • doctrine/ormdoctrine 的头像

    doctrine/orm

    10,172在 GitHub 上查看↗

    Doctrine ORM is a PHP object-relational mapper that connects application objects to relational database tables. It uses the data mapper and identity map patterns to decouple the in-memory object model from the database schema, allowing developers to manage data persistence without writing manual SQL. The project features a dedicated object-oriented query language and programmatic builder for retrieving data based on entities rather than tables. It implements a unit-of-work system to track object changes during a request and synchronize them via atomic transactions. The capability surface inc

    Decouples entity dependencies by mapping interfaces or abstract classes to concrete implementations during runtime.

    PHPhacktoberfest
    在 GitHub 上查看↗10,172
  • senghoo/golang-design-patternsenghoo 的头像

    senghoo/golang-design-pattern

    9,027在 GitHub 上查看↗

    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

    Demonstrates how to program to interfaces to separate high-level logic from concrete implementations.

    Go
    在 GitHub 上查看↗9,027
  • teivah/100-go-mistakesteivah 的头像

    teivah/100-go-mistakes

    7,915在 GitHub 上查看↗

    100 Go Mistakes is a reference book and code review companion that catalogues frequent Go programming anti-patterns and provides corrected implementations for each one. It covers a wide range of common pitfalls, from range loop variable capture and interface nil handling to error wrapping and map iteration randomization, helping developers recognize and avoid these issues in their own code. The project distinguishes itself by offering a structured, example-driven approach to learning idiomatic Go. It covers core design decisions such as when to use pointer versus value receivers, how to apply

    Replaces concrete dependencies with interfaces so implementations can be swapped without changing consumers.

    Gobookchinesedocumentation
    在 GitHub 上查看↗7,915
  • evrone/go-clean-templateevrone 的头像

    evrone/go-clean-template

    7,601在 GitHub 上查看↗

    Clean Architecture template for Golang services

    Defines repository and use-case boundaries as Go interfaces so that the core domain never imports infrastructure packages directly.

    Goclean-architecturedependency-injectionexample
    在 GitHub 上查看↗7,601
  • ets-labs/python-dependency-injectorets-labs 的头像

    ets-labs/python-dependency-injector

    4,805在 GitHub 上查看↗

    This is a dependency injection framework and inversion of control container for Python. It decouples object creation from business logic by managing how services and their dependencies are assembled, delivered, and linked within an application. The framework is distinguished by its ability to perform automated component wiring, using import hooks and decorators to inject dependencies into functions and classes across different modules. It supports non-blocking flows through an asynchronous dependency resolver and manages the initialization and shutdown sequences of shared external resources a

    Defines external dependencies within a package container using placeholders to maintain implementation agnosticism.

    Pythonaiohttpasynciodependency-injection
    在 GitHub 上查看↗4,805
  • zio/ziozio 的头像

    zio/zio

    4,347在 GitHub 上查看↗

    ZIO is a functional effect system for the JVM that models asynchronous and concurrent programs as pure, composable values with typed error handling and dependency injection. Its core identity is built on fiber-based concurrency, where lightweight, non-blocking fibers execute millions of concurrent tasks with structured lifecycle management, and a dual-channel error model that separates expected business failures from unexpected system defects at compile time. The system provides effect-typed dependency injection through a layer-based dependency graph, pull-based reactive stream processing with

    ZIO programs to interfaces rather than concrete classes so different implementations can be swapped in without changing dependent code.

    Scalaasynchronicityasynchronousasynchronous-programming
    在 GitHub 上查看↗4,347
  • dropbox/godropboxdropbox 的头像

    dropbox/godropbox

    4,205在 GitHub 上查看↗

    godropbox 是一个后端开发框架和服务蓝图,用于在 Go 中构建一致的服务器应用程序和微服务。它提供了一系列共享库和模式,以标准化多个项目间的开发流程。 该项目包括一个依赖注入库,通过基于接口的服务契约将业务逻辑与实现解耦。它还提供了一套用于将 Go 应用程序编译并部署为 Linux 上自包含静态二进制文件的工具。 该框架涵盖了企业应用工具,包括用于日志记录、配置和错误处理的共享原语。它进一步支持微服务架构和 Linux 服务编排,以确保互联服务间的一致行为。

    Decouples high-level business logic from low-level implementations by programming to Go interfaces.

    Go
    在 GitHub 上查看↗4,205
  • ardanlabs/serviceardanlabs 的头像

    ardanlabs/service

    4,030在 GitHub 上查看↗

    该项目为使用 Go 语言构建生产服务器、高性能后端、Kubernetes 微服务和 AI 流水线提供了一套结构化模板与框架。它作为基础架构,通过集成的路由和中间件,支持构建高吞吐量基础设施及可扩展的生产服务器。 该框架包含一套用于开发检索增强生成(RAG)系统的专用基础设施,强调本地模型推理与数据主权安全。此外,它还提供了一个用于容器化部署的微服务模板,专注于资源配额与服务生命周期管理。 该项目涵盖了广泛的功能领域,包括用于监控系统健康状况的可观测性埋点、基于接口的依赖注入,以及基于迁移的关联数据模式管理。它还集成了基于通道(channel)的并发机制,用于管理异步任务,并通过 CPU 和内存分析优化资源使用。

    Decouples business logic from external infrastructure by defining interface contracts for data storage and APIs.

    Go
    在 GitHub 上查看↗4,030
  • cenkalti/backoffcenkalti 的头像

    cenkalti/backoff

    4,021在 GitHub 上查看↗

    This is a Go library providing a framework for managing repetitive task execution and implementing exponential backoff strategies. It serves as a concurrency tool designed to prevent system overload during failures by retrying operations with increasing delays. The project implements a retry strategy framework that manages attempt limits and timeouts during unstable network or system calls. It specifically provides an implementation of the exponential backoff algorithm to handle failing operations. The library covers reliability patterns for mitigating transient failures and service outages,

    Decouples the retry logic from specific wait algorithms using interfaces to allow custom delay implementations.

    Gogolang
    在 GitHub 上查看↗4,021
  • casatwy/ctmediatorcasatwy 的头像

    casatwy/CTMediator

    4,015在 GitHub 上查看↗

    CTMediator 是一个用于 iOS 的动态服务定位器和模块化架构框架。它作为一个依赖解耦器,允许将大型项目拆分为更小的、独立的子项目和目标,以改善组织结构并缩短构建时间。 该框架使用目标-动作模式实现这些隔离模块之间的通信。它利用动态运行时查找来分派请求并将动作路由到特定模块,而无需在启动期间进行手动服务注册。 该系统通过基于协议的请求路由和中介者模式管理数据交换和项目分解,确保内部组件可以在不创建直接依赖的情况下进行通信。

    Removes direct dependencies between app modules using a target-action pattern for communication.

    Objective-C
    在 GitHub 上查看↗4,015
  • symfony/contractssymfony 的头像

    symfony/contracts

    3,941在 GitHub 上查看↗

    这是一个 PHP 接口库,提供了一个组件互操作层。它由一组与框架无关的契约和标准化定义组成,使不同的库能够通过一致的契约协同工作。 该库专注于提供最小化的共享接口和 API 定义,允许软件组件在不同的 PHP 项目中使用,而无需依赖特定的底层框架。这种方法将应用程序逻辑与具体的框架实现解耦。 该项目专门涵盖了服务容器抽象和依赖注入标准化。通过定义访问服务容器的通用接口,它确保了不同容器实现之间的互操作性,并允许组件在各种环境中检索依赖项。

    Provides generic interfaces that allow services to remain compatible across different components and versions.

    PHPabstractionscomponentcontracts
    在 GitHub 上查看↗3,941
  • amontalenti/elements-of-python-styleamontalenti 的头像

    amontalenti/elements-of-python-style

    3,489在 GitHub 上查看↗

    This project is a comprehensive Python style guide and technical reference designed to promote the creation of clean, maintainable, and idiomatic code. It provides a set of opinionated guidelines and architectural patterns focusing on functional and declarative programming to reduce complexity and improve overall code quality. The guide establishes specific standards for naming conventions, module organization, and project layout. It emphasizes reducing object coupling by favoring modules and functions over deep class hierarchies and offers technical standards for writing docstrings and marku

    Recommends using built-in serializable types to decouple components from custom object dependencies.

    code-stylecodestyledocumentation
    在 GitHub 上查看↗3,489
  • timoxley/best-practicestimoxley 的头像

    timoxley/best-practices

    1,277在 GitHub 上查看↗

    This project serves as a comprehensive handbook and architectural guide for software engineering best practices. It provides a curated set of principles and technical guidelines focused on maintaining long-term code health, reducing complexity, and ensuring that software systems remain readable and manageable as they grow. The core philosophy centers on modularity and domain-driven design, encouraging developers to structure applications around specific business use cases rather than the constraints of external frameworks. By prioritizing interface-based contracts and dependency injection, th

    Uses inversion of control and dependency injection to decouple components and facilitate testing.

    在 GitHub 上查看↗1,277
  1. Home
  2. DevOps & Infrastructure
  3. Dependency Management
  4. Dependency Injection Containers
  5. Package Dependency Decoupling

探索子标签

  • Interface-Based Decoupling4 个子标签Programs to interfaces rather than concrete classes so different implementations can be swapped in without changing dependent code. **Distinct from Package Dependency Decoupling:** Distinct from Package Dependency Decoupling: focuses on programming to interfaces at the code level, not on package-level container placeholders.
  • Module Dependency DecouplingTechniques for removing direct dependencies between application modules using mediator or target-action patterns. **Distinct from Package Dependency Decoupling:** Focuses on decoupling internal application modules rather than external package dependencies.