All Projects → andrus → di-comparison

andrus / di-comparison

Licence: other
DI containers comparison

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to di-comparison

android-template
Template for android development at Tiki
Stars: ✭ 17 (-15%)
Mutual labels:  dependency-injection
magnet
Dependency injection library for modular Android applications
Stars: ✭ 174 (+770%)
Mutual labels:  dependency-injection
lightsaber
Compile time dependency injection framework for JVM languages. Especially for Kotlin.
Stars: ✭ 119 (+495%)
Mutual labels:  dependency-injection
PopKorn
DI can be simple. Forget about modules and components. Just use it!
Stars: ✭ 139 (+595%)
Mutual labels:  dependency-injection
SwiftInjection
Dependency Injection framework for Swift
Stars: ✭ 21 (+5%)
Mutual labels:  dependency-injection
vue3-oop
使用类和依赖注入写vue组件
Stars: ✭ 90 (+350%)
Mutual labels:  dependency-injection
Kriptofolio
Free open source minimalistic cryptocurrencies portfolio app for Android.
Stars: ✭ 79 (+295%)
Mutual labels:  dependency-injection
tsdi
Dependency Injection container (IoC) for TypeScript
Stars: ✭ 50 (+150%)
Mutual labels:  dependency-injection
toolkit
some useful library of the php
Stars: ✭ 15 (-25%)
Mutual labels:  dependency-injection
di
🛠 A full-featured dependency injection container for go programming language.
Stars: ✭ 156 (+680%)
Mutual labels:  dependency-injection
mindjs
Minimalistic, pure Node.js framework superpowered with Dependency Injection 💡 💻 🚀
Stars: ✭ 17 (-15%)
Mutual labels:  dependency-injection
di
一个简易版本的Go依赖注入实现
Stars: ✭ 133 (+565%)
Mutual labels:  dependency-injection
noicejs
extremely thin async dependency injection
Stars: ✭ 16 (-20%)
Mutual labels:  dependency-injection
dodrugs
A macro-powered dependency injector for Haxe
Stars: ✭ 29 (+45%)
Mutual labels:  dependency-injection
android-base-project
Android LateralView Base Project
Stars: ✭ 25 (+25%)
Mutual labels:  dependency-injection
node-express-clean-architecture
A modular folder structure for developing highly scalable and maintainable APIs in nodejs using express.
Stars: ✭ 41 (+105%)
Mutual labels:  dependency-injection
AutoDI
Dependency injection made simple.
Stars: ✭ 87 (+335%)
Mutual labels:  dependency-injection
unbox
Fast, simple, easy-to-use DI container
Stars: ✭ 45 (+125%)
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 (-25%)
Mutual labels:  dependency-injection
inject
[Archived] See https://github.com/goava/di.
Stars: ✭ 49 (+145%)
Mutual labels:  dependency-injection

DI Containers Comparision

Comparing a simple app varieties on different DI containers.

IntelliJ IDEA Setup

Go to "Preferences > Annotation Processors", and check "Enable Annotation Processing".

"Benchmark"

# Build (can't compare build times, as module ordering affects the results)
mvn clean package
# Get the file sizes
find . -name '*.jar' |xargs ls -l |grep -v original |grep -v common
# Execution time

time java -jar ./bootique/target/bootique-*.jar
time java -jar ./cayennedi/target/cayennedi-*.jar
time java -jar ./dagger/target/dagger-*.jar
time java -jar ./guice/target/guice-*.jar
time java -jar ./owb/target/owb-*.jar
time java -jar ./spring/target/spring-*.jar
time java -jar ./springboot/target/springboot-*.jar

Results (Java 8)

DI Jar w/Deps Size, KB ⬇️ Exec time, ms
Dagger 46 104
Cayenne DI 79 120
Bootique 2522 244
Guice 3781 328
OpenWebBeans 1345 381
Spring 3954 355
Spring Boot 7824 1057
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].