आप अपने द्वारा निर्भर किए जा रहे डिपेंडेंसी इंजेक्शन फ्रेमवर्क की अपनी सूची में स्प्रिंग को शामिल करना चाह सकते हैं। यहां आपके सवालों के जवाब दिए गए हैं:
ढांचे के लिए युग्मन
पिको - पिको सेटर इंजेक्शन को हतोत्साहित करता है, लेकिन इसके अलावा, आपकी कक्षाओं को पिको के बारे में जानने की आवश्यकता नहीं है। यह केवल वायरिंग है जिसे जानना आवश्यक है (सभी DI फ्रेमवर्क के लिए सही)।
Guice - Guice अब मानक JSR 330 एनोटेशन का समर्थन करता है , इसलिए अब आपको अपने कोड में Guice के विशिष्ट एनोटेशन की आवश्यकता नहीं है। स्प्रिंग इन मानक एनोटेशन का भी समर्थन करता है। यह तर्क कि Guice लोग उपयोग करते हैं, एक Guice एनोटेशन प्रोसेसर के बिना चल रहा है, इनका प्रभाव नहीं होना चाहिए यदि आप एक अलग फ्रेमवर्क का उपयोग करने का निर्णय लेते हैं।
स्प्रिंग - स्प्रिंग का उद्देश्य है कि आप अपने कोड में स्प्रिंग फ्रेमवर्क के किसी भी उल्लेख से बचने की अनुमति दें। क्योंकि उनके पास बहुत से अन्य सहायक / उपयोगिताएँ आदि हैं, हालांकि प्रलोभन स्प्रिंग कोड पर निर्भर करने के लिए बहुत मजबूत है, हालांकि।
प्रदर्शन
पिको - मैं पिको की गति विशेषताओं से बहुत परिचित नहीं हूं
Guice - Guice को तेजी से डिजाइन किया गया था और संदर्भ में वर्णित तुलना में कुछ संख्याएँ हैं। निश्चित रूप से अगर गति एक प्राथमिक विचार है तो या तो Guice या हाथ से वायरिंग का उपयोग किया जाना चाहिए
वसंत - वसंत धीमा हो सकता है। इसे तेजी से बनाने के लिए काम किया गया है और JavaConfig लाइब्रेरी का उपयोग करके चीजों को गति देना चाहिए।
उपयोग में आसानी
पिको - कॉन्फ़िगर करने के लिए सरल। पिको आपके लिए कुछ ऑटोवेयर निर्णय ले सकता है। यह स्पष्ट नहीं है कि यह बहुत बड़ी परियोजनाओं को कैसे मापता है।
गाइड - कॉन्फ़िगर करने के लिए सरल है, आप बस एनोटेशन जोड़ते हैं और एंब्रॉइडमूल से विरासत में चीजों को एक साथ बांधते हैं। कॉन्फ़िगरेशन के रूप में बड़ी परियोजनाओं के लिए अच्छी तरह से तराजू एक न्यूनतम के लिए रखा गया है।
वसंत - सापेक्ष रूप से कॉन्फ़िगर करना आसान है लेकिन अधिकांश उदाहरण कॉन्फ़िगरेशन के लिए विधि के रूप में स्प्रिंग एक्सएमएल का उपयोग करते हैं। स्प्रिंग एक्सएमएल फाइलें समय के साथ बहुत बड़ी और जटिल हो सकती हैं और लोड होने में समय लेती हैं। इसे दूर करने के लिए स्प्रिंग और हैंड क्रैंक्ड डिपेंडेंसी इंजेक्शन के मिश्रण का उपयोग करने पर विचार करें।
सामुदायिक आकार
पिको - छोटा
गिटार - मध्यम
वसंत - बड़ा
अनुभव
पिको - मुझे पिको के साथ बहुत अनुभव नहीं है, लेकिन यह व्यापक रूप से उपयोग की जाने वाली रूपरेखा नहीं है, इसलिए यह संसाधनों को खोजने में कठिन होगा।
Guice - Guice एक लोकप्रिय ढाँचा है और इसकी गति पर ध्यान देने का स्वागत है जब आपको एक बड़ी परियोजना मिली है जिसे आप विकास में पुनः आरंभ कर रहे हैं। मुझे कॉन्फ़िगरेशन की वितरित प्रकृति के बारे में चिंता है, अर्थात यह देखना आसान नहीं है कि हमारे पूरे आवेदन को एक साथ कैसे रखा जाए। यह इस संबंध में AOP जैसा है।
वसंत - वसंत आमतौर पर मेरी डिफ़ॉल्ट पसंद है। उस ने कहा, एक्सएमएल बोझिल हो सकता है और परिणामस्वरूप मंदी परेशान कर सकता है। मैं अक्सर हाथ से तैयार की गई निर्भरता इंजेक्शन और वसंत के संयोजन का उपयोग करके समाप्त होता हूं। जब आपको वास्तव में XML आधारित कॉन्फ़िगरेशन की आवश्यकता होती है, तो स्प्रिंग XML काफी अच्छा होता है। स्प्रिंग ने अन्य रूपरेखाओं को अधिक निर्भरता इंजेक्शन के अनुकूल बनाने में बहुत प्रयास किया जो उपयोगी हो सकता है क्योंकि वे ऐसा करते समय अक्सर सर्वोत्तम अभ्यास का उपयोग करते हैं (जेएमएस, ओआरएम, ओएक्सएम, एमवीसी आदि)।
संदर्भ