हमें मूल रूप से स्टार्ट-अप समय पर व्यवहार को समायोजित करने में सक्षम होना चाहिए, हमारे आवेदन के अंदर विभिन्न कारखानों द्वारा उत्पादित वांछित कक्षाएं प्रदान करके ("नए" ऑपरेटर की कठोर बाध्यकारी से बचने के लिए)।क्या स्टैंड स्टैंड अकेले कार्यक्रम में निर्भरता इंजेक्शन की अनुमति देने के लिए एक साधारण ढांचा है?
मुझे पता है कि यह कई बड़े ढांचे द्वारा प्रदान किया जाता है, लेकिन मैं बिना किसी विशाल जावा एप्लिकेशन द्वारा आसानी से उपयोग किया जा रहा था।
कोई सुझाव?
संपादित करें: यह मेरा अनुभव है कि परिपक्वता (और जटिल भी) के हिस्से के रूप में ढांचे बड़े हो जाते हैं। मुझे प्रमुख रिफैक्टरिंग (तकनीकी ऋण) के हिस्से के रूप में विरासत आवेदन के लिए पुन: प्रयोज्य होने की आवश्यकता है, इसलिए उपयोग की गई पुस्तकालयों की सादगी आवश्यक है। मुझे अपने आवेदन में कुछ कोडिंग करने की कोई बात नहीं है, लेकिन यह होना चाहिए कि क्या हो रहा है। एओपी के पास सामान से बाहर निकलने की प्रवृत्ति है, और इससे एप्लिकेशन को बनाए रखने में कठिनाई हो सकती है।
संपादित करें: अब हम उस बिंदु पर पहुंच गए हैं जहां हमें वास्तव में निर्णय लेने की आवश्यकता है। आवेदन शायद दशकों तक जीवित रहेगा, इसलिए हमें एक ढांचे के साथ एक उलटा निर्णय लेने की जरूरत है जिसे उम्मीद के लिए लंबे समय तक बनाए रखा जाएगा। मुझे वास्तव में गुइस के साथ उपलब्ध स्थिर प्रकार की जांच पसंद है, लेकिन यह नहीं कि एनोटेशन वसंत में बाहरी होने की बजाय गुइस को स्पष्ट रूप से बांधते हैं। मुझे यह भी पसंद है कि वसंत के विपरीत गुइस का उपयोग करते समय यह कोड अधिक संक्षिप्त प्रतीत होता है। हमें कुछ ऐसी चीज चाहिए जो मजबूत और सहायक हो। हमें इस समय सिर्फ डीआई से ज्यादा की आवश्यकता नहीं है। क्या कोई ऐसा उपयोग मामला है जो निश्चित कहता है कि इनमें से किसी एक के लिए जाना है?
संपादित 2011-07-27: अंतिम निर्णय कोड में JSR-330 एपीआई का उपयोग करने, और एक प्रति परियोजना के आधार पर चुनते हैं स्प्रिंग, Guice या वेल्ड उपयोग करने के लिए किया गया था। स्टैंडअलोन अनुप्रयोगों के लिए जीआईएस-330 कार्यान्वयन के रूप में अब तक गुइस ने अच्छी तरह से काम किया है।
मैं अपने क्लाइंट अनुप्रयोग तारों के लिए वसंत का उपयोग करें। – pjp
हमने अभी के लिए गुइस के लिए निर्णय लिया है, और फिर इसके एक से अधिक कार्यान्वयन होने पर जेएसआर-330 में माइग्रेट करें। –