सॉफ्टवेयर इंजीनियरिंग में वास्तव में एक मॉड्यूल क्या है? [बन्द है]


18

स्टीफन स्कैच के अनुसार, "शास्त्रीय और वस्तु-उन्मुख सॉफ्टवेयर इंजीनियरिंग", अध्याय 6:

एक मॉड्यूल में कोड का एक एकल ब्लॉक होता है जिसे उस तरीके से लागू किया जा सकता है जो एक प्रक्रिया, कार्य या विधि है

यह बहुत अस्पष्ट और व्यापक लगता है। तो क्या कोई इसे स्पष्ट रूप से समझा सकता है और कुछ वास्तविक उदाहरण दिखा सकता है कि मॉड्यूल में आवश्यकता को कैसे तोड़ना है? धन्यवाद।

जवाबों:


16

एक मॉड्यूल,

  • एक विशेष कार्यक्षमता को लागू करने के लिए कोड और डेटा को एन्क्रिप्ट करता है।
  • एक इंटरफ़ेस है जो ग्राहकों को एक समान तरीके से अपनी कार्यक्षमता का उपयोग करने देता है।
  • एक अन्य मॉड्यूल के साथ आसानी से प्लग करने योग्य है जो इसके इंटरफ़ेस की अपेक्षा करता है।
  • आमतौर पर एक ही इकाई में पैक किया जाता है ताकि इसे आसानी से तैनात किया जा सके।

उदाहरण के लिए, dapper.net डेटाबेस एक्सेस को एनकैप्सुलेट करता है। इसकी कार्यक्षमता तक पहुँचने के लिए इसमें एक एपीआई है। यह एक सिंगल फाइल है जिसे एक सोर्स ट्री में बनाया जा सकता है।

मॉड्यूल की अवधारणा मॉड्यूलर प्रोग्रामिंग प्रतिमान से आती है जो इस बात की वकालत करती है कि सॉफ़्टवेयर को अलग-अलग, विनिमेय घटकों से बना होना चाहिए, जिन्हें प्रोग्राम फ़ंक्शन को मॉड्यूल में तोड़कर मॉड्यूल कहा जाता है, जिनमें से प्रत्येक एक फ़ंक्शन को पूरा करता है और इसे पूरा करने के लिए आवश्यक सभी चीजें शामिल हैं।


अगर हमारे पास आवश्यकताओं का एक गुच्छा है तो प्रत्येक आवश्यकता को एक मॉड्यूल के रूप में माना जा सकता है? उदाहरण: आवश्यकता "कर्मचारी जोड़ना" एक मॉड्यूल हो सकता है?
हॉनन

1
नहीं या यह निर्भर करता है। प्रोग्राम फ़ंक्शंस को कोआशिव यूनिट्स में तोड़ दिया जाना चाहिए। यदि आवश्यकताओं को इस तरह से तोड़ा जा सकता है, तो हो सकता है। लेकिन मैंने अभी तक ऐसा कुछ नहीं देखा है। इसके अलावा, "कर्मचारी को जोड़ना" मॉड्यूल के लिए एक उम्मीदवार नहीं होना चाहिए। आमतौर पर मॉड्यूल उच्च स्तरीय संरचनाएं होती हैं जो तार्किक रूप से सुसंगत इकाइयों में कार्यक्रमों को विघटित करती हैं।
TheD

12

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

मेरा उपयोग यह है कि C या यहां तक ​​कि C ++ जैसी भाषा में, एक मॉड्यूल स्रोत फ़ाइल (.c या .cpp) से एक अलग संकलित इकाई को परिभाषित करने से संबंधित है और आमतौर पर एक संबंधित हेडर फ़ाइल (.h)। अन्य भाषाएं विवरण के रूप में मॉड्यूल का उपयोग करती हैं, और भाषा मोडुला -2 ने अपने नाम और उसके दृष्टिकोण में मॉड्यूल के सामने और केंद्र के चारों ओर संरचना बनाई है।

ऐतिहासिक रूप से, मॉड्यूल के कुछ अन्य निहितार्थ हैं, जैसा कि डीएल परनास पेपर में "मॉड्यूल में डिकम्पोजिंग सॉफ्टवेयर में उपयोग किए जाने वाले मानदंड" में वर्णित किया गया था । वह मुख्य रूप से डेटा उन्मुख विघटन के साथ कार्यात्मक अपघटन को बदलने के लाभों पर चर्चा करने से संबंधित है जो कि कला की हमारी वर्तमान स्थिति की ओर एक बड़ा कदम था जो वस्तु उन्मुख अपघटन है।

ऑब्जेक्ट ओरिएंटेड भाषाओं को कक्षाओं के आसपास आयोजित किया जाता है, इसलिए हो सकता है कि शब्द मॉड्यूल कम महत्वपूर्ण हो और उस संदर्भ में कम सटीक हो।


7

एक मॉड्यूल की औपचारिक परिभाषा नहीं है, और एक मॉड्यूल क्या है (या नहीं है) आपकी परियोजना के संदर्भ में काफी हद तक परियोजना की प्रकृति और डिजाइन पर निर्भर करता है।

आम तौर पर एक मॉड्यूल बोलना कोड का एक स्टैंडअलोन टुकड़ा है जो विशिष्ट और कसकर युग्मित कार्यक्षमता प्रदान करता है, मॉड्यूल आपके कोड में तार्किक सीमाओं को परिभाषित और लागू करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.