2009-12-07 22 views
16

मेरे पास एक व्यवसाय परत है जिसमें कुछ व्यावसायिक वस्तुएं/पीओसीओ/संस्थाएं/जो कुछ भी है। मेरे पास डेटा पहुंच के लिए कुछ भंडार भी हैं। इस बिंदु तक, मैं सीधे अपनी UI परत से रिपॉजिटरीज़ तक पहुंच रहा हूं। मैं एक ऐसे बिंदु पर हूं जहां मुझे वास्तव में कुछ और कक्षाओं की आवश्यकता है जो सीधे सीआरयूडी नहीं हैं, इसलिए मैं कुछ व्यावसायिक तर्क वर्ग बनाने जा रहा हूं जो तर्क करेंगे, और सीआरयूडी, और रिपॉजिटरीज तक पहुंचा नहीं जाएगा यूआई अब और (जो शायद शुरुआत से किया जाना चाहिए)।बिजनेस लॉजिक क्लासेस नामकरण

मुझे इन कक्षाओं को क्या कहना चाहिए? केवल एक चीज जिसे मैं सोच सकता हूं सेवा कक्षाएं हैं, लेकिन मेरे पास इस एप्लिकेशन में वास्तविक डब्ल्यूसीएफ सेवाएं हैं, जिससे यह भ्रमित हो जाएगी। डब्ल्यूसीएफ सेवाएं भी इन कक्षाओं का उपयोग कर रही हैं, इसलिए सेवा सेवा का उपयोग करने वाली सेवा होने से अजीब और भ्रमित लगता है।

उत्तर

11

मैं "सेवा" नामकरण सम्मेलन का भी उपयोग करता हूं। यह सच है कि "सेवा" उद्योग में बहुत अधिक अधिभारित शब्द बन गई है, लेकिन यह सबसे अधिक समझ में आता है। कोड की समीक्षा करने वाले डेवलपर एक डब्ल्यूसीएफ सेवा बनाम एप्लिकेशन/डोमेन सेवा के बीच अंतर निर्धारित करने में सक्षम होना चाहिए, और डब्ल्यूसीएफ सेवा कॉल करते समय अन्य सेवा कक्षाएं भ्रमित लग सकती हैं, मुझे लगता है कि आप पाएंगे कि यह नहीं है। सेवा का विचार यह है कि यह कोड है जो एक फ़ंक्शन करता है, और अन्य कोड द्वारा उपयोग के लिए उपलब्ध है। यह एक आंतरिक सेवा हो सकती है, या यह बाहरी रूप से http या जो कुछ भी हो सकती है, वह हो सकती है। लेकिन कोड क्या करता है इसका विचार समान है।

3

अपने 'सेवाओं' डोमेन वस्तुओं की एक नंबर का उपयोग कर व्यापार तर्क orchestrating रहे हैं, तो आप की संभावना Facade Pattern लागू कर रहे हैं - तो शायद आप उन्हें इस प्रत्यय के साथ नाम कर सकते हैं, जैसे OrderManagementFacade

+0

यह पैटर्न मेरे लिए नया है, लेकिन मुझे यह पसंद है। यह "सेवा" के विपरीत बहुत वर्णनात्मक है। –

+0

यह वर्णनात्मक है जब कोई डोमेन ऑब्जेक्ट नहीं है और ये "सेवाएं" तर्क स्वयं को निष्पादित करती हैं। – Vakho

3

अपने विवरण, उससे लगता है डब्ल्यूसीएफ कक्षाएं वास्तव में एक सेवा होस्ट सेवा लागू कर रही हैं। मैं आमतौर पर ऐसे "वर्गहोस्ट" प्रत्यय वाले वर्गों का नाम देता हूं। यह उन्हें वास्तविक सेवा कक्षाओं से अच्छी तरह से अलग करता है।

तो, उदाहरण के लिए, आपके पास "ग्राहक सेवा" नामक कक्षा में आपका व्यावसायिक तर्क होगा और संबंधित डब्ल्यूसीएफ कक्षा का नाम "ग्राहक सेवाहोस्ट" रखा जाएगा।