इसलिए, मैं जावा में एक नया प्रोजेक्ट शुरू कर रहा हूं, और स्प्रिंग का उपयोग करने पर विचार कर रहा हूं। मैं वसंत का विचार क्यों कर रहा हूं? क्योंकि बहुत से लोग मुझे बताते हैं कि मुझे स्प्रिंग का उपयोग करना चाहिए! गंभीरता से, किसी भी समय मैंने लोगों को समझाने की कोशिश की है कि वास्तव में वसंत क्या है या यह क्या करता है, वे कभी भी मुझे सीधे जवाब नहीं दे सकते हैं। मैंने स्प्रिंगस सोर्स साइट पर इंट्रो की जाँच की है, और वे या तो वास्तव में जटिल हैं या वास्तव में ट्यूटोरियल-केंद्रित हैं, और उनमें से कोई भी मुझे इस बात का अच्छा विचार नहीं देता है कि मुझे इसका उपयोग क्यों करना चाहिए, या यह कैसे मेरे जीवन को आसान बना देगा। कभी-कभी लोग "निर्भरता इंजेक्शन" शब्द के चारों ओर फेंक देते हैं, जो सिर्फ मुझे और भी भ्रमित करता है, क्योंकि मुझे लगता है कि मुझे इस शब्द का एक अलग समझ है।
वैसे भी, यहाँ मेरी पृष्ठभूमि और मेरे ऐप के बारे में थोड़ा सा है:
कुछ समय के लिए जावा में विकसित हो रहा है, बैक-एंड वेब डेवलपमेंट कर रहा है। हां, मैं एक टन यूनिट टेस्टिंग करता हूं। इसे सुविधाजनक बनाने के लिए, मैं आमतौर पर एक विधि के दो संस्करणों (कम से कम) बनाता हूं: एक जो उदाहरण चर का उपयोग करता है, और एक जो केवल चर का उपयोग करता है जो विधि में पारित हो जाते हैं। इंस्टा वेरिएबल्स का उपयोग करने वाला व्यक्ति दूसरे को कॉल करता है, उदाहरण के वेरिएबल्स की आपूर्ति करता है। जब यूनिट परीक्षण का समय आता है, तो मैं मॉकिटो का उपयोग वस्तुओं को मॉक करने के लिए करता हूं और फिर उस विधि से कॉल करता हूं जो उदाहरण चर का उपयोग नहीं करता है। यह वही है जो मैंने हमेशा "निर्भरता इंजेक्शन" समझा है।
CS परिप्रेक्ष्य से मेरा ऐप बहुत सरल है। लघु परियोजना, 1-2 डेवलपर्स के साथ शुरू करने के लिए। ज्यादातर CRUD- प्रकार के खोज के साथ गुच्छा का संचालन होता है। मूल रूप से Restful वेब सेवाओं का एक गुच्छा, साथ ही एक वेब फ्रंट-एंड और फिर अंततः कुछ मोबाइल क्लाइंट। मैं सीधे HTML / CSS / JS / JQuery में फ्रंट-एंड करने की सोच रहा हूं, इसलिए JSP का उपयोग करने की कोई वास्तविक योजना नहीं है। Webservices को लागू करने के लिए एक ORM और जर्सी के रूप में हाइबरनेट का उपयोग करना।
मैंने पहले से ही कोडिंग शुरू कर दी है, और मैं वास्तव में एक डेमो प्राप्त करने के लिए उत्सुक हूं कि मैं आसपास खरीदारी कर सकता हूं और देख सकता हूं कि क्या कोई निवेश करना चाहता है। तो जाहिर है समय सार का है। मैं समझता हूं कि स्प्रिंग में सीखने की अवस्था काफी है, साथ ही ऐसा लगता है कि यह एक्सएमएल कॉन्फ़िगरेशन के पूरे समूह की आवश्यकता है, जिसे मैं आमतौर पर प्लेग से बचने की कोशिश करता हूं। लेकिन अगर यह मेरे जीवन को आसान बना सकता है और (विशेष रूप से) अगर इसे बनाने से विकास और परीक्षण तेज हो सकते हैं, तो मैं बुलेट को काटने और स्प्रिंग सीखने के लिए तैयार हूं।
तो कृपया। मुझे शिक्षित करो। क्या मुझे स्प्रिंग का उपयोग करना चाहिए? क्यों या क्यों नहीं?