awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
codegangsta avatar

codegangsta/inject

0
View on GitHub↗
978 Stars·146 Forks·Go·MIT·4 Aufrufe

Inject

Inject ist eine Dependency-Injection-Bibliothek für Go, die Objektlebenszyklen verwaltet und Anwendungskomponenten durch Automatisierung der Bereitstellung von Abhängigkeiten verdrahtet. Sie fungiert als reflexionsbasierter Container, der spezifische Werte ihren entsprechenden Typen zuordnet, was den automatischen Abruf und die Injektion von Objekten in die Anwendungslogik ermöglicht.

Die Bibliothek zeichnet sich durch ihre Fähigkeit zur automatischen Funktionsaufrufung aus, bei der sie Funktionssignaturen zur Laufzeit untersucht, um erforderliche Argumente aus einer zentralen Registrierung aufzulösen und bereitzustellen. Sie unterstützt zudem Struct-Field-Injection, die Objekteigenschaften durch Scannen nach spezifischen Metadaten-Tags während der Initialisierung befüllt.

Das Framework erleichtert modulares Design durch hierarchisches Container-Management, was es untergeordneten Containern erlaubt, Abhängigkeits-Lookups an übergeordnete Scopes zu delegieren, wenn ein angeforderter Typ lokal fehlt. Dieses System unterstützt schnittstellenbasierte Auflösung, wodurch sichergestellt wird, dass konkrete Implementierungen basierend auf Laufzeitevaluierung korrekt mit den angeforderten Typen abgeglichen werden.

Features

  • Dependency Injection Frameworks - Manages object lifecycles and wires complex dependencies in Go applications to improve modularity.
  • Reflection-Based Invocations - Executes functions by automatically resolving required arguments from mapped dependencies using reflection.
  • Dependency Injection Libraries - Provides a toolkit for managing object lifecycles and resolving dependencies using reflection and type-based mapping.
  • Dependency Injection Containers - Provides a dependency injection container that supports chaining and hierarchical resolution.
  • Reflection-Based Dependency Resolution - Matches concrete implementations to requested interface types using runtime reflection.
  • Hierarchical Containers - Supports nested container structures where child scopes inherit dependencies from parent containers.
  • Dependency Argument Injection - Automatically resolves and injects function arguments by inspecting signatures at runtime.
  • Function Invocation Mappings - Automates function execution by mapping dependencies to required parameters.
  • Struct Tags - Populates struct fields by scanning for metadata tags during object initialization.
  • Dependency Injection Population - Automatically populates struct fields with dependencies based on metadata tags.
  • Type-Based Dependency Mappings - Associates values with types to enable automatic retrieval and injection during runtime.

Star-Verlauf

Star-Verlauf für codegangsta/injectStar-Verlauf für codegangsta/inject

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Kuratierte Suchen mit Inject

Handverlesene Sammlungen, in denen Inject vorkommt.
  • Dependency-Injection-Toolkits für Go

Häufig gestellte Fragen

Was macht codegangsta/inject?

Inject ist eine Dependency-Injection-Bibliothek für Go, die Objektlebenszyklen verwaltet und Anwendungskomponenten durch Automatisierung der Bereitstellung von Abhängigkeiten verdrahtet. Sie fungiert als reflexionsbasierter Container, der spezifische Werte ihren entsprechenden Typen zuordnet, was den automatischen Abruf und die Injektion von Objekten in die Anwendungslogik ermöglicht.

Was sind die Hauptfunktionen von codegangsta/inject?

Die Hauptfunktionen von codegangsta/inject sind: Dependency Injection Frameworks, Reflection-Based Invocations, Dependency Injection Libraries, Dependency Injection Containers, Reflection-Based Dependency Resolution, Hierarchical Containers, Dependency Argument Injection, Function Invocation Mappings.

Welche Open-Source-Alternativen gibt es zu codegangsta/inject?

Open-Source-Alternativen zu codegangsta/inject sind unter anderem: facebookarchive/inject — Inject is a dependency injection framework for Go that automates the assembly of complex object graphs. By leveraging… ets-labs/python-dependency-injector — This is a dependency injection framework and inversion of control container for Python. It decouples object creation… mvvmcross/mvvmcross — MvvmCross is a .NET MVVM framework designed for building cross-platform applications by separating business logic from… jeffijoe/awilix — Awilix is a JavaScript dependency injection framework and inversion of control container. It provides a centralized… derekyrc/mini-spring — mini-spring is a Java dependency injection framework and inversion of control container. It manages the full lifecycle… apple/container — This project serves as a technical educational resource and software implementation example focused on dependency…

Open-Source-Alternativen zu Inject

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Inject.
  • facebookarchive/injectAvatar von facebookarchive

    facebookarchive/inject

    1,408Auf GitHub ansehen↗

    Inject is a dependency injection framework for Go that automates the assembly of complex object graphs. By leveraging runtime reflection, the library dynamically inspects object structures to resolve and populate required dependencies, decoupling component initialization from business logic. The framework manages object lifecycles through both singleton and factory-based provisioning. It maintains a central registry to share singletons across an application for consistent state, while also supporting the creation of unique, private instances to isolate state between different components. To

    Go
    Auf GitHub ansehen↗1,408
  • ets-labs/python-dependency-injectorAvatar von ets-labs

    ets-labs/python-dependency-injector

    4,805Auf GitHub ansehen↗

    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

    Pythonaiohttpasynciodependency-injection
    Auf GitHub ansehen↗4,805
  • mvvmcross/mvvmcrossAvatar von MvvmCross

    MvvmCross/MvvmCross

    3,917Auf GitHub ansehen↗

    MvvmCross is a .NET MVVM framework designed for building cross-platform applications by separating business logic from native user interfaces. It functions as a navigation engine and a UI data binding library, enabling the encapsulation of logic within view models that are reused across different operating systems. The framework provides a native hardware abstraction layer and a dependency injection container to decouple components and provide a consistent interface for accessing device features. It coordinates type-safe transitions between native screens and manages the synchronization of da

    C#androidc-sharpdotnet
    Auf GitHub ansehen↗3,917
  • derekyrc/mini-springAvatar von DerekYRC

    DerekYRC/mini-spring

    6,360Auf GitHub ansehen↗

    mini-spring is a Java dependency injection framework and inversion of control container. It manages the full lifecycle of beans, including instantiation, property population, and scope management, while providing a system for automating the wiring of components. The project implements a Java AOP framework that uses dynamic proxies to intercept method calls for cross-cutting logic. It also functions as a Java component scanner to automatically discover and register managed objects via annotations and as a Java event bus to decouple components through a publish-subscribe multicast system. The

    Javamini-springspringspring-boot
    Auf GitHub ansehen↗6,360
  • Alle 30 Alternativen zu Inject anzeigen→