किसी एप्लिकेशन को डिज़ाइन करते समय पैकेज में संरचना के मानक तरीका नहीं है, अनुभव आमतौर पर यह तय करने में मदद करता है कि हमारे पैकेज के लिए उचित नाम क्या हैं।
एक ही पैकेज में या अलग-अलग में अपने इंटरफेस के पैकेजिंग कार्यान्वयन के बारे में बस इस बारे में सोचें कि जावा स्वयं कैसे संरचित है: आमतौर पर एक कार्यान्वयन वर्ग उसी पैकेज में पैक किया जाता है, जिसका इंटरफ़ेस होता है, लेकिन यह हर समय नहीं होता है।
यदि आप एक ही डीएओ के कई कार्यान्वयन के बारे में थे तो उन्हें .jdbc
, .jpa
या .jdo
उप पैकेज में संरचित होने का अर्थ होगा। यदि आपके पास केवल एक ही कार्यान्वयन होगा, तो आप दोनों विकल्पों को समझने के लिए कुछ तरीकों से समझ लेंगे (एक ही पैकेज या .impl
उप पैकेज)।
ओवर-इंजीनियरिंग के संबंध में मैं आपको यह article की सलाह दूंगा। भले ही आप अपने डीएओ के केवल एक कार्यान्वयन के लिए जा रहे हैं, लेकिन यह समझदारी होगी कि उन्हें एक इंटरफ़ेस और कार्यान्वयन के रूप में परिभाषित किया जाएगा क्योंकि इससे संभावित रूप से आपके डीएओ को अन्य ढांचे के लिए फिर से लिखने में मदद मिलेगी, जबकि कोड का उपयोग किया जाता है वे अपरिवर्तित रहता है।
अंत में यह आम सहमति तक पहुंचने के लिए (या आप और आपके साथियों) पर निर्भर करता है और निर्णय लेता है जो आपके विशिष्ट मामले में अधिक समझ में आता है।
संपादित
एक आवेदन आमतौर पर डीएओ इंटरफ़ेस प्रति एक कार्यान्वयन है और उस पर इंजीनियरिंग बिल्कुल नहीं है, यह सिर्फ मतलब नहीं है जेपीए के लिए और के लिए JDO कार्यान्वित ही डीएओ इंटरफेस के लिए । इंटरफ़ेस/कार्यान्वयन पद्धति का उपयोग कर के उद्देश्यों में से कुछ कम करने के लिए फिर से फैक्टरिंग, आदि नकली वस्तुओं के साधन के द्वारा परीक्षण ..
पुनश्च है: मैं आमतौर पर JDepend पर भरोसा करते हैं अधिकांश के रूप में चक्र से बचने के संकुल में अपने आवेदन कक्षाओं वितरित करने के लिए जैसा मेरे द्वारा किया जा सकता है।
स्रोत
2012-04-02 18:09:43
कोई वैकल्पिक कार्यान्वयन बिल्कुल नहीं? यूनिट टेस्ट मैक्स भी नहीं? –