2009-04-21 11 views
6

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

हम डेस्कटॉप सीआरयूडी अनुप्रयोगों (सी ++, सी #, या जावा में) विकसित करते हैं जो सीधे ओडीबीसी कनेक्शन के माध्यम से ओरेकल डेटाबेस को हिट करते हैं। हम मूल रूप से एसयूएल कथन और पैचवर्क कोड के साथ जीयूआई से भरे हुए हैं। हमें डेटाबेस की सीधी पहुंच को रोकने और उपयोगकर्ता मशीनों पर ओरेकल क्लाइंट की आवश्यकता को हटाने के लिए सेवा-उन्मुख एन-स्तरीय आर्किटेक्चर की ओर बढ़ने के लिए कहा गया है।

क्या डब्ल्यूसीएफ मार्ग है जिस पर हमें आगे बढ़ना चाहिए? हमने कुछ एन-स्तरीय एप्लिकेशन वॉकथ्रू (जैसे this one) किए हैं और वे लागू करने में आसान लगते हैं, लेकिन हम समझने के लिए पर्याप्त नहीं जानते कि क्या हम सही तकनीकों पर विचार कर रहे हैं। .NET जेनरेट किए गए टाइपसेट डेटासेट का उपयोग करना हमें महीने/साल के काम को बचाने के लिए एक अच्छा स्टॉपगैप जैसा लगता है (जैसा कि कई परियोजनाओं के लिए जमीन से नई व्यावसायिक वस्तुओं को बनाने के विरोध में)। क्या यह डिब्बाबंद दृष्टिकोण पहले चरण के लिए व्यवहार्य है?

+1

सभी से इनपुट के लिए धन्यवाद। ऐसा लगता है कि हम पूरी तरह से अवधारणा के साथ आगे बढ़ सकते हैं। चूंकि इतने सारे उत्तरों ने एक ही चीज़ को प्रतिबिंबित किया, इसलिए मैं पहले के साथ गया। – BikeMrown

उत्तर

4

मैंने हाल ही में कुछ वेब अनुप्रयोगों में अपने डेटा लेयर के लिए डब्ल्यूसीएफ सेवाओं का उपयोग करना शुरू कर दिया है और मुझे कहना होगा कि यह शुरुआत (पहले सप्ताह या तो) में निराशाजनक है, लेकिन कोड तैनात होने के बाद यह पूरी तरह से लायक है।

आपको पहले इसे एक छोटे से मौजूदा ऐप के साथ आज़माएं, या शायद यह सुनिश्चित करने के लिए अवधारणा का प्रमाण होना चाहिए कि यह आपकी आवश्यकताओं के अनुरूप होगा।

पर्यावरण के विवरण से आप में हैं, मुझे यकीन है कि आप लगभग तुरंत लाभ का एहसास करेंगे।

+0

क्या आप कृपया http://stackoverflow.com/questions/9498962/contract-first-soa-designing-business-domain-wcf का उत्तर दे सकते हैं? – Lijo

2

पिछली कंपनी जिसने मैंने ऊपर वर्णित लगभग सटीक कारण के लिए डब्ल्यूसीएफ चुना है। डब्ल्यूसीएफ के लिए बहुत सारे अच्छे दस्तावेज और किताबें हैं, जो काम करने के लिए अपेक्षाकृत आसान है, और डब्ल्यूसीएफ कई विन्यास विकल्पों का समर्थन करता है।

कुछ सिरदर्द हो सकते हैं जब आप डब्ल्यूसीएफ को उस तरीके से काम करने की कोशिश करना शुरू कर देते हैं जो विशेष रूप से बॉक्स से बाहर नहीं बनाया गया है। ये आमतौर पर विन्यास मुद्दे हैं। लेकिन इस तरह की साइटें या IDesign आपकी मदद कर सकती हैं।

+0

महान वेबसाइट जो मैंने अभी तक नहीं देखी थी, धन्यवाद! – BikeMrown

+0

क्या आप कृपया http://stackoverflow.com/questions/9498962/contract-first-soa-designing-business-domain-wcf का उत्तर दे सकते हैं? – Lijo

2

सबसे पहले, मैं निश्चित रूप से (जोर देने के लिए खेद) बार जब आप अपने काम से काम वस्तुओं बनाने बनाम टाइप किया DataSet के का उपयोग कर बचा सकते हैं के बारे में चिंता नहीं होगी। आमतौर पर ऐसा नहीं होता है जहां आप अपना अधिकांश विकास समय व्यतीत करेंगे। मैं खुद को व्यावसायिक वस्तुओं का उपयोग करना पसंद करता हूं।

आपकी स्थिति में मैं पहले सबूत-अवधारणा को कार्यान्वित करना चाहता हूं। वह जो आपके सामने आने वाले सभी मुद्दों को संबोधित करता है। इस सबूत-अवधारणा को क्लाइंट से शुरू होने, डेटाबेस से डेटा पुनर्प्राप्त करने और उसे क्लाइंट पर लौटने के लिए एक संपूर्ण उपयोग केस लागू करना चाहिए। जारी रखने से पहले आपको अपने कार्यान्वयन के बारे में आत्मविश्वास महसूस करना चाहिए।

फिर प्रौद्योगिकी की पसंद के बारे में। डब्ल्यूसीएफ निश्चित रूप से आपके क्लाइंट अनुप्रयोगों और सेवा परत के बीच संचार के लिए एक अच्छा विकल्प है। मुझे लगता है कि आपके दोनों क्लाइंट के साथ-साथ आपकी सेवा परत सी # अनुप्रयोग बन जाएगी? इससे चीजों को बहुत आसान बना दिया जाता है क्योंकि विभिन्न प्लेटफार्मों के बीच अंतःक्रियाशीलता (उदाहरण के लिए जावा/सी #) अभी भी मामूली नहीं है हालांकि इसे ज्यादातर मामलों में काम करना चाहिए।

+0

हां, क्लाइंट और सेवा परत दोनों ही विशेष रूप से सी # पर जा रहे हैं। मैं व्यापार वस्तुओं के बारे में आपका मुद्दा देखता हूं। मैंने अभी सोचा है कि टाइप किए गए डेटासेट्स हमारे कुछ डेवलपर्स के लिए संक्रमण को थोड़ा कम चुनौती दे सकते हैं क्योंकि वे ऑब्जेक्ट डिज़ाइन के बारे में अधिक जानेंगे। – BikeMrown

+0

मैं इस बात से सहमत नहीं हूं कि टाइप किए गए डेटासेट आपको ऑब्जेक्ट उन्मुख डिज़ाइन के बारे में अधिक बताते हैं, बल्कि इसके विपरीत। वे डेटा रीडर के चारों ओर एक पतली परत हैं और दृश्यों के पीछे बहुत कुछ चलते हैं जिससे वे काम करते हैं। एक बार जब आप उनका उपयोग करना शुरू कर देते हैं तो वास्तव में पारदर्शी तकनीक नहीं होती है और काफी जटिल होती है। –

+0

मेरी टिप्पणी भ्रामक हो सकती है। मैं आपके साथ टाइप किए गए डेटासेट और विवाद विरोधी के बारे में सहमत हूं। मेरा मतलब था कि टाइपेड डेटासेट्स को अपनी परियोजना को आगे बढ़ाने के लिए स्टॉपगैप के रूप में, व्यावसायिक वस्तुओं के लिए सीखने का अनुभव नहीं है। आपका मुद्दा मुझे आश्चर्यचकित करता है अगर यह केवल तकनीक की अपारदर्शी/जटिल प्रकृति के कारण उन्हें भ्रमित करेगा। – BikeMrown

2

.NET 3.5 SP1 के संयोजन के साथ एंटीटी फ्रेमवर्क (जैसा कि पहले से ही इसके लिए उपलब्ध कुछ ओरेकल प्रदाता उपलब्ध हैं) पर एक नज़र डालें जो आपके ईएफ जेनरेटेड क्लास के अंतर्निहित डब्ल्यूसीएफ क्रमबद्धता को सक्षम बनाता है।

यहाँ एक अच्छा ब्लॉग आरंभ करने के लिए है: http://blogs.msdn.com/dsimmons

2

CSLA अपने एन टीयर डेस्कटॉप क्षुधा के लिए बिल्कुल उपयुक्त हो सकता है। यह डब्ल्यूसीएफ का समर्थन करता है, एक बड़ा देव समुदाय है, और अच्छी तरह से प्रलेखित है। यह बहुत ऑब्जेक्ट उन्मुख है।

+0

बहुत दिलचस्प! मैं अभी तक सीएसएलए में नहीं आया था और यह काफी आशाजनक दिखता है। पारितोषिक के लिए धन्यवाद। – BikeMrown

+0

सीएसएलए का एक अच्छा पहलू यह है कि आप कॉन्फ़िगरेशन, डब्ल्यूसीएफ, या कस्टम प्रोटोकॉल का उपयोग केवल कॉन्फ़िगरेशन को बदलकर चुन सकते हैं, न कि आपका कोड। कुछ सालों में माइक्रोसॉफ्ट के पास अभी तक एक और पसंदीदा संचार ढांचा हो सकता है। सीएसएलए आपके ऐप को इससे कुछ इन्सुलेशन दे सकता है। –

+0

क्या आप कृपया http://stackoverflow.com/questions/9498962/contract-first-soa-designing-business-domain-wcf का उत्तर दे सकते हैं? – Lijo

संबंधित मुद्दे