كل المشاريع
واجهة خلفية

حقن التبعيات وعكس التحكّم — أربع تقنيات

دراسة عملية لعكس التحكّم في Java: نفس تقسيم DAO/الأعمال موصولاً بأربع طرق — حقن يدوي عبر setter، تحميل ديناميكي بالـ reflection من ملف إعداد، إعداد حاوية Spring XML، ومسح تعليقات Spring (@Component/@Autowired).

4
Injection techniques
Spring 6
Framework
IDao + IMetier
Contracts
XML + annotations
Wiring
المنهجية

تنفيذ تطبيق واحد موجَّه بالواجهات بأربع طرق: ثابتة، reflection ديناميكي، XML لـ Spring، تعليقات Spring

المكدس التقني
Java 17Spring 6.1MavenReflection API
الكلمات المفتاحية
SpringIoCDependency InjectionReflectionXML ConfigAnnotationsJava
التعمق

جولة تأسيسية في عكس التحكّم وحقن التبعيات — «اعتمِد على الواجهات لا على التنفيذ» — ببناء نفس التطبيق بأربع طرق.

الهيكل

java-ioc-1/   (Maven + Spring 6)
  ├── dao/          IDao + التنفيذات
  ├── metier/       IMetier + التنفيذات
  └── presentation/ 4 عروض للحقن
enset_ioc/    (نقطة بداية بـ Java الخالص)

أربع تقنيات حقن

العرضالطريقةالكيفية
Presentationثابتةnew يدوي + حقن عبر setter
Presentation2ديناميكيةتحميل فئة بالـ reflection من config.txt
PresentationxmlSpring XMLربط عبر الحاوية بـ applicationContext.xml
PresentationAnnotationتعليقات Springمسح @Component + @Autowired

لماذا يهمّ IDao (عقد الوصول للبيانات) وIMetier (عقد الأعمال) مرتبطان عبر الواجهات فقط، فالحاوية — لا الكود — هي من تقرر أي تنفيذ يُحقَن. هذا هو المبدأ الذي تعتمد عليه كل مشاريع Spring اللاحقة في هذه المجموعة.