2009-01-28 12 views
8

कौन सा एक बड़े सॉफ्टवेयर के लिए अधिक फायदे प्रदान करता है, फ़ोटोशॉप की तरह कहता है?डी 3 बनाम टीडीडी सर्वोत्तम प्रथाओं

टीडीडी द्वारा भी मेरा मतलब यूनिट परीक्षण नहीं है, क्योंकि आप डी 3 में इकाई परीक्षणों का भी उपयोग कर सकते हैं, ठीक उसी तरह टीडीडी नहीं करता है।

डी 3: डिजाइन प्रेरित विकास

TDD: टेस्ट संचालित विकास

+0

हालांकि मैं तुम मेरे जवाब दिया मैं क्योंकि जाहिरा तौर पर आप इसे DDD से बाहर नहीं किया था आप के बारे में आप क्या मानते हैं कि TDD है और अधिक जानकारी देने के लिए की जरूरत है। –

+3

उन लोगों के लाभ के लिए जो यह नहीं जानते कि इन शब्दकोषों का क्या अर्थ है, कृपया पहचानें। मुझे लगता है कि टीडीडी परीक्षण संचालित डिजाइन है, लेकिन डीडीडी क्या है? Doofus संचालित डिजाइन? (यदि हां, तो मैंने कुछ स्थानों का उपयोग किया है।) –

+4

डीडीडी डोमेन संचालित डिजाइन के लिए खड़ा है। मुझे लगता है कि इसका मतलब क्या है। –

उत्तर

11

मैं भी नहीं लगता है कि वे परस्पर अनन्य मुझे लगता है कि आप TDD का उपयोग कर सकते DDD को पाने के लिए कर रहे हैं है।

103

DDD = डोमेन प्रेरित डिजाइन

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

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

तो आप देखते हैं, वे निश्चित रूप से पारस्परिक रूप से अनन्य नहीं हैं। डीडीडी में जो कुछ भी जानकार है, वह बहुत मुश्किल है जो टीडीडी उत्साही भी है।

+20

डाउनवोट कहा जाता है? गंभीरता से? WTF? –

+0

मैंने सोचा कि आपका जवाब बहुत अच्छा था। वोट दें। –

+0

मैं चुस्त सभ्यता में वरिष्ठ और अच्छी तरह से respeced लोगों को पता है जो परीक्षण संचालित डिजाइन को बढ़ावा दे रहे हैं, ठीक उसी तरह जेई ने इसका वर्णन किया। वे उम्मीद करते हैं कि डिजाइन कार्यान्वयन से जादुई रूप से उभरा। – Jaksa

15

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

कारणों को पहले लिखा जाना चाहिए कारण यह है कि जब किसी समस्या का समाधान माना जाता है (डिज़ाइन किया गया), तो आपको स्वचालित रूप से अपेक्षाएं होती हैं कि समाधान क्या करना चाहिए। किसी भी उम्मीद को एक परीक्षण के रूप में व्यक्त किया जा सकता है, तो उम्मीद को तत्काल दस्तावेज क्यों न करें और इसके साथ ही समाधान को उस लक्ष्य को प्राप्त करने के लिए स्वचालित परीक्षण किया जाए?

+2

के लिए सबकुछ कोड करने के लिए एक तंत्रिका नेटवर्क को प्रशिक्षित करने के समान कुछ भी सही होगा, हालांकि उत्तर के केवल एक आधे हिस्से में, मुझे टीडीडी का यह विवरण पसंद है। +1 – nrodic

0

मेरी राय में जब आप पहले परीक्षण (टीडीडी में) लिखते हैं, तो आप सिस्टम को डिज़ाइन कर रहे हैं। अगर हम पहले परीक्षण नहीं लिख सकते हैं, तो यह दिखाता है कि आवश्यकता में अस्पष्टता है। हम परीक्षण से पहले कहानी लिख सकते हैं और इसे Test As Specification नामक विनिर्देश के रूप में उपयोग कर सकते हैं। परीक्षण पास करने के बाद, हम Test As Document ज्ञात दस्तावेज़ के रूप में परीक्षणों का उपयोग कर सकते हैं। जब नए डेवलपर्स प्रोजेक्ट में जोड़े जाते हैं तो वे सिस्टम व्यवसाय सीखने के लिए इन परीक्षणों का उपयोग कर सकते हैं।

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

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