আমি স্প্রিংয়ের সঠিক ব্যবহার কী হবে তা বোঝার চেষ্টা করছি। সিনট্যাক্টিকালি নয়, তবে এর উদ্দেশ্য অনুসারে। যদি কেউ স্প্রিং ব্যবহার করে, তবে স্প্রিং কোডটি সমস্ত শিমের ইনস্ট্যান্টেশন কোডটি প্রতিস্থাপন করবে? শিমটি তাত্ক্ষণিকভাবে ব্যবহার করার জন্য বা কখন স্প্রিং ব্যবহার করবেন না?
নীচের কোড নমুনা হতে পারে আমার দ্বিধা বুঝতে আপনার সহায়তা করবে:
List<ClassA> caList = new ArrayList<ClassA>();
for (String name : nameList) {
ClassA ca = new ClassA();
ca.setName(name);
caList.add(ca);
}
যদি আমি বসন্তটি কনফিগার করি তবে এটি এমন কিছু হয়ে যায়:
List<ClassA> caList = new ArrayList<ClassA>();
for (String name : nameList) {
ClassA ca = (ClassA)SomeContext.getBean(BeanLookupConstants.CLASS_A);
ca.setName(name);
caList.add(ca);
}
আমি ব্যক্তিগতভাবে মনে করি এখানে স্প্রিং ব্যবহার করা একটি অপ্রয়োজনীয় ওভারহেড, কারণ
- কোড পড়ার / বুঝতে সহজ।
- নির্ভরতা ইনজেকশনটির পক্ষে এটি সত্যিই ভাল জায়গা নয় কারণ আমি আশা করছি না যে একাধিক / বৈচিত্র্যময় বাস্তবায়ন
ClassA
হবে, আমি পরবর্তী সময়ে স্প্রিং কনফিগারেশন ব্যবহার করে প্রতিস্থাপনের স্বাধীনতা চাই।
আমি কি ঠিক ভাবছি? যদি না হয় তবে আমি কোথায় ভুল করছি?