سؤال

لقد كنت استخدم IoC لبعض الوقت الآن وأنا أشعر بالفضول إذا كان ينبغي لي استخدام Microsoft وحدة الإطار (الاسم الرسمي "كتلة تطبيق الوحدة").هل لدى أي شخص خبرة في استخدامه؟لذلك، قمت بنسخ رمز حاوية IoC الخاص بي من مشروع إلى آخر، ولكن أعتقد أنه سيكون من الأفضل استخدام شيء قياسي.أعتقد أن IoC يمكن أن يحدث فرقًا كبيرًا في الحفاظ على التطبيقات القائمة على المكونات مقترنة بشكل غير محكم وبالتالي قابلة للتغيير، لكنني لست خبيرًا في IoC بأي حال من الأحوال، لذلك أنا متوتر من التحول إلى إطار عمل من شأنه أن يضعني في زاوية كتبعية. سوف ترغب في يوم من الأيام في الابتعاد عن.

هل كانت مفيدة؟

المحلول

أود أن أقول التزم بالشخص الذي تعرفه حتى تشعر بالثقة به وبالمفهوم بأكمله.بعد ذلك سيكون لديك حكم أفضل لاختيار الإطار الذي يلبي احتياجاتك.

نصائح أخرى

أنا أستخدم Unity دون أي مشاكل حقيقية.أعلم أن بعض الأشخاص من نوع ALT.NET يحذرون من Unity ولكني أعتقد حقًا أن هذا يرجع فقط إلى التاريخ الذي يمتلكه فريق MS P&P في كتابة برامج bloatware.الوحدة ليست منتفخة بعد في المنظمة البحرية الدولية وتعمل بشكل جيد.

لقد ألقيت نظرة على Unity Framework، لكنني وجدته "كبيرًا جدًا" قليلًا بالنسبة لاحتياجاتي (لا، لا يمكنني حقًا تحديد ذلك، يبدو أنه يتطلب معرفة أكثر بكثير من الأطر الأخرى التي كنت أستخدمها اللعب مع...كان هذا منذ فترة، لذا من الممكن أن يكون هذا قد تغير مع تطوير/تحسين Unity).

إطار عمل IoC/Dependency حقن الحالي الخاص بي هو نينجيكت.إنه سريع، سريع، وتمكنت من الانتقال من قراءة البرامج التعليمية (حوالي 10 دقائق) إلى استخدامه في مشروع موجود مسبقًا في حوالي ساعتين.

إذا كنت تبحث عن طريقة نظيفة للقيام بحقن التبعية، فإنني أوصي بشدة بمراجعتها.

لقد لعبت مع CompositeWPF (المعروف أيضًا باسم Prism) - خليفة كتلة التطبيق المركب.من تجربتي، تعمل Unity بشكل أفضل بكثير مقارنة بالإصدار السابق من ObjectBuilder.ومع ذلك، فإن الأمر متروك لك لتقييم أطر عمل IoC واختيار الإطار المناسب لاحتياجاتك.

دروس ونماذج الوحدة

الوحدة IoC Screencast

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top