12 مستودعات
The process of retrieving and instantiating a registered service from a container, often using type inference.
Distinct from Dependency Resolution: Distinct from Package Dependency Resolution: focuses on runtime object retrieval from a DI container.
Explore 12 awesome GitHub repositories matching software engineering & architecture · Dependency Resolution. Refine with filters or upvote what's useful.
InversifyJS is an inversion of control framework and dependency injection library for TypeScript. It provides a centralized container to manage object lifecycles and automate the instantiation of classes and their dependencies. The library decouples software components by mapping unique identifiers to concrete implementations. This architecture separates object creation from business logic and allows for the replacement of real service implementations with mock objects during unit testing. The framework utilizes TypeScript decorators to provide metadata-driven injection and recursive depende
Automates the process of retrieving and instantiating registered services from a container using type inference.
Swinject is a dependency injection framework for Swift that manages object creation and wiring through a centralized container. It resolves dependencies by looking up registered service types at runtime, supporting iOS, macOS, and Linux platforms. The framework provides multiple injection patterns, including initializer injection where dependencies are passed through initializer parameters, property injection that sets resolved dependencies on stored properties after object creation, and method injection that calls methods with resolved dependencies as arguments. It handles complex dependency
Resolves dependencies by looking up registered service types in a central container at runtime.
tsyringe هي حاوية حقن تبعية لـ TypeScript وإطار عمل لعكس التحكم. تفصل تنفيذات الفئات عن إنشاء الكائنات من خلال إدارة التبعيات وأعمار الكائنات باستخدام المزخرفات (decorators) والبيانات الوصفية. يتميز إطار العمل بنظام حاويات هرمي حيث يمكن للحاويات الفرعية الحفاظ على نطاقات تسجيل مستقلة والرجوع إلى الحاويات الأصلية لحل التبعية. ويوفر نظام مزود يتحكم في طول عمر الكائن من خلال قواعد إنشاء الكائنات الفردية والعابرة. يدعم النظام حقن المنشئ العودي ويتعامل مع التبعيات الدائرية باستخدام الوكلاء. ويتضمن قدرات لتعيين السجل القائم على الرموز، وحل التنفيذ المتعدد، والتخلص الآلي من الموارد للكائنات التي تنفذ واجهات التنظيف.
Provides the process of retrieving and instantiating registered services from a container using unique tokens.
gore هو غلاف تفاعلي وحلقة قراءة-تقييم-طباعة (REPL) للغة Go. يعمل كأداة للنماذج الأولية تسمح بتقييم التعبيرات، والبيانات، وإعلانات الدوال في واجهة قائمة على الطرفية دون الحاجة إلى دورة بناء كاملة. يتكامل المشروع كعميل لخادم اللغة لتوفير إكمال ذكي للكود، واقتراحات كود في الوقت الفعلي، وحل تلقائي لاستيراد الحزم. كما يتميز بتوليد ملفات وحدات مؤقتة لحل التبعيات واستيراد المستودعات البعيدة تلقائياً أثناء الجلسة. تتضمن الأداة قدرات لتجربة المطور، مثل فحص نوع التعبير، واسترجاع توثيق الرموز، وتصفية مخرجات المترجم الزائدة. يتم دعم الجلسة التفاعلية من خلال تتبع الكتل متعددة الأسطر، وسجل الأوامر المستمر، وإدارة مؤشر الطرفية القائمة على ANSI.
Generates temporary module files to resolve dependencies in online and offline environments.
Maven هي أداة لأتمتة بناء مشاريع Java ومنسق لبناء البرمجيات. تعمل كمدير لدورة حياة المشروع ونظام لإدارة التبعيات، باستخدام نموذج كائن مشروع موحد لتجميع واختبار وتغليف مشاريع Java. يتميز المشروع بدورة حياة بناء قائمة على المراحل ونموذج توسعة قائم على الإضافات، مما يسمح للمستخدمين بربط أهداف مخصصة بمراحل بناء محددة. ينسق البرمجيات المعقدة من خلال إدارة المشاريع متعددة الوحدات ويضمن سير عمل بناء قابل للتكرار عن طريق تحييد متغيرات البيئة والتحكم في إصدارات سلسلة الأدوات. تغطي إمكانياته إدارة شاملة للتبعيات، بما في ذلك حل التبعيات المتعدية ونشر القطع البرمجية (artifacts) إلى مستودعات بعيدة. يوفر النظام أيضاً إنشاء المشاريع من خلال القوالب وإنشاء وثائق مفصلة لإنتاج مراجع واجهات برمجة التطبيقات ومواقع المشاريع. تتضمن الأداة واجهة سطر أوامر مع إكمال المدخلات وتدعم تنفيذ البناء دون اتصال باستخدام ذاكرة تخزين مؤقت محلية للقطع البرمجية.
Resolves and fetches required external libraries from repositories while managing version conflicts and exclusions.
This project is a comprehensive set of architectural patterns, coding standards, and reference materials for AngularJS applications. It establishes a structural approach for separating business logic into injectable services and restricting document object model manipulation to directives. The guide provides a standardized framework for project organization through consistent naming conventions, directory hierarchies, and module structuring. It emphasizes the use of isolated scopes for component encapsulation and explicit array notation for dependency injection to ensure stability during code
Ensures data availability by resolving required dependencies via services before the corresponding view is displayed.
Awilix is a JavaScript dependency injection framework and inversion of control container. It provides a centralized system for registering and resolving services, decoupling application components by automating how dependencies are created and passed to the functions or classes that require them. The framework features an automatic module loader that scans the filesystem using glob patterns to register dependencies based on filenames and exports. It supports parameter-name-based injection and proxy-based resolution to manage how dependencies are delivered to constructors and functions. The s
Retrieves registered dependencies by name while utilizing type inference to ensure correct object shapes.
Stack is a build tool, package manager, and project bootstrapper for the Haskell language. It provides a consistent environment for compiling source code, managing project binaries, and executing programs. The system ensures reproducible builds through snapshot-based dependency resolution and manages the installation of specific compiler binaries to match project requirements. It utilizes content-addressable package storage and local-path caching to maintain the integrity of source code and avoid redundant downloads across different projects. The toolset covers the full development lifecycle
Ensures reproducible builds across different machines and time using precise frozen lists of package versions.
Neutrino is a zero-config build framework and orchestrator for JavaScript projects. It serves as a build preset framework that eliminates manual setup files by using a convention-over-configuration model to bootstrap development environments. The system functions as a preset manager, wrapping complex build tool settings into reusable modules. These configurations are managed through a composable build pipeline that combines multiple presets into a single execution chain by merging and overriding object properties. The project covers frontend toolchain management and build process standardiza
Resolves build presets dynamically by locating and loading configuration modules from the project environment.
Swift Build هو نظام بناء معياري مصمم لتنسيق تجميع مشاريع البرمجيات. يعمل كمحرك منخفض المستوى يدير دورة حياة البناء بالكامل، بما في ذلك حل التبعيات، وجدولة المهام، وتوليد الملفات التنفيذية أو المكتبات. من خلال استخدام معمارية عميل-خادم مفككة، يفصل النظام محرك البناء عن الواجهة لتسهيل تنفيذ المهام بشكل متسق ومعزول. يتميز النظام بنهج يعتمد على الرسم البياني لجدولة المهام وقاعدة بيانات دائمة تتتبع حالات الملفات لضمان صحة البناء التزايدي. ويوفر بيئة مهيكلة لإدارة خطط البناء المعقدة، مما يسمح بالتحقق من تبعيات المهام وفرض معايير لغوية محددة. تمكن هذه القدرات النظام من التعامل مع متطلبات التجميع المعقدة مع الحفاظ على عزل العمليات عبر تكوينات المضيف المختلفة. بعيداً عن التجميع الأساسي، تتضمن مجموعة الأدوات مرافق لتصحيح أخطاء عملية البناء، وتهيئة البيئة، وتكامل أدوات التطوير الخارجية. كما يدعم أتمتة إدارة الحزم ويوفر ميزات لعرض التوثيق التقني محلياً. يتم توزيع المشروع مع واجهات سطر أوامر تسمح بتنسيق دورات البناء والتحقق من مخرجات البناء.
Inspects source code and metadata at runtime to discover and link necessary libraries and modules.
Kotlin-inject is a dependency injection framework for Kotlin that utilizes compile-time code generation to construct type-safe object graphs. By processing declarative annotations during the build process, the library eliminates the need for runtime reflection, ensuring that dependency resolution and validation occur before the application executes. The framework distinguishes itself through its native support for Kotlin Multiplatform, enabling consistent dependency management across shared and platform-specific codebases. It provides specialized mechanisms for assisted injection, allowing de
Provides type-safe dependency resolution by processing declarative annotations at compile time.
MoonBit is a programming language compiler and build system designed to translate source code into high-performance binaries for web, browser, and native environments. It provides a unified toolchain that manages the entire development lifecycle, from source code compilation and dependency management to the final bundling of applications. The platform distinguishes itself through a modular architecture that enables cross-environment logic sharing, allowing developers to maintain a single codebase that targets both WebAssembly and native machine code. By utilizing a strongly-typed intermediate
Tracks module relationships and source changes to rebuild only the necessary components during the compilation and bundling process.