All Projects → philipmat → di_speed

philipmat / di_speed

Licence: other
Speed comparison of Dependency Injection Container

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to di speed

Autofac.Extras.NLog
An Autofac module to integrate Autofac and NLog, it supports both constructor and property injection.
Stars: ✭ 48 (+166.67%)
Mutual labels:  dependency-injection, autofac
Blog.core
💖 ASP.NET Core 6.0 全家桶教程,前后端分离后端接口,vue教程姊妹篇,官方文档:
Stars: ✭ 3,542 (+19577.78%)
Mutual labels:  dependency-injection, autofac
WebApiClient.Extensions
WebApiClient项目的第三方扩展:Autofac、DependencyInjection、HttpClientFactory、SteeltoeOSS.Discovery、MessagePack、Protobuf、Json-Rpc
Stars: ✭ 73 (+305.56%)
Mutual labels:  dependency-injection, autofac
Autofac
An addictive .NET IoC container
Stars: ✭ 3,713 (+20527.78%)
Mutual labels:  dependency-injection, autofac
KickStart
Application initialization helper
Stars: ✭ 42 (+133.33%)
Mutual labels:  dependency-injection, autofac
component-manager
component framework and dependency injection for golang
Stars: ✭ 21 (+16.67%)
Mutual labels:  dependency-injection
test-tools
Improves PHPUnit testing productivity by adding a service container and self-initializing fakes
Stars: ✭ 25 (+38.89%)
Mutual labels:  dependency-injection
unbox
Fast, simple, easy-to-use DI container
Stars: ✭ 45 (+150%)
Mutual labels:  dependency-injection
mvp-architecture-kotlin-dagger-2-retrofit-android
Android Application MVP (Model-View-Presenter) architecture example using Dagger2 Dependency Injection (DI) and Retrofit Tutorial using Kotlin programming language.
Stars: ✭ 15 (-16.67%)
Mutual labels:  dependency-injection
wedi
[Deprecated] A lightweight dependency injection (DI) library for TypeScript, along with a binding for React.
Stars: ✭ 22 (+22.22%)
Mutual labels:  dependency-injection
inversify-koa-utils
inversify-koa-utils is a module based on inversify-express-utils. This module has utilities for koa 2 applications development using decorators and IoC Dependency Injection (with inversify)
Stars: ✭ 27 (+50%)
Mutual labels:  dependency-injection
AutoMapper.Contrib.Autofac.DependencyInjection
Autofac plug-in for AutoMapper.
Stars: ✭ 14 (-22.22%)
Mutual labels:  autofac
solid
Solid Android components
Stars: ✭ 33 (+83.33%)
Mutual labels:  dependency-injection
rsdi
Dependency Injection Container
Stars: ✭ 45 (+150%)
Mutual labels:  dependency-injection
di-comparison
DI containers comparison
Stars: ✭ 20 (+11.11%)
Mutual labels:  dependency-injection
varie
A Typescript Framework For VueJS
Stars: ✭ 23 (+27.78%)
Mutual labels:  dependency-injection
tsdi
Dependency Injection container (IoC) for TypeScript
Stars: ✭ 50 (+177.78%)
Mutual labels:  dependency-injection
solid-services
Solid.js library adding a services layer for global shared state.
Stars: ✭ 34 (+88.89%)
Mutual labels:  dependency-injection
eixample
Multi-Tenant .NET 6 Architecture (Angular, Vue, React)
Stars: ✭ 61 (+238.89%)
Mutual labels:  autofac
Spork
Annotation processing and dependency injection for Java/Android
Stars: ✭ 77 (+327.78%)
Mutual labels:  dependency-injection

Test of speed of DI Containers

Attempting to test the speed of various Dependency Injection Containers.

See the results of my tests here: http://philipm.at/2011/0808/

.Net Containers:

  • Autofac
  • Castle.Windsor
  • ninject
  • Spring.Net
  • StructureMap
  • Unity

This repository contains various branches dedicated to multiple DI usage scenarios in an attempt to provide a comprehensive landscape for measurements. Don't rely on the master branch maintaining a specific topic, it might change its content. Instead look at those branches for the specific scenarios that might be of interest to you. The only thing I can somewhat promise is that the master branch will have the most up-to-date spreadsheet with my results.

  • with_isregistered: checks that the object is registered with the container before requesting it. This causes some abysmal performance in Unity.
  • without_isregistered: requests the object without performing the registration check. Has the potential to yield either NullReferenceExceptions or container specific registration exceptions.
  • ex_vs_isreg: compares the speed difference between using IsRegistered and handling specific registration exceptions. Spoiler: don't use exceptions.
  • ex_vs_isreg_vs_opt: Unity provides an alternate way to deal with objects not being registered, OptionalDependencyAttribute. This branch, a bit badly named, attempt to look at how this attribute performs.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].