2009-06-22 4 views

उत्तर

7

मैं कहूंगा कि उत्तर इस बात पर निर्भर करता है कि आप किससे पूछते हैं।

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

मेरे लिए एक मॉड्यूल एक नियोक्ता स्रोत कोड बंडल होगा जो एक सामान्य उद्देश्य साझा करता है, लेकिन सिस्टम में कोई महत्वपूर्ण भूमिका नहीं करता है (जिसका अर्थ यह है कि इसे बदलने के लिए सिस्टम के समग्र आर्किटेक्चर में बदलाव की आवश्यकता नहीं होगी) । एक उदाहरण एक वेब सेवा में एक JSON serializer होगा।

4

मॉड्यूल सॉफ़्टवेयर को नई कार्यक्षमता देने की क्षमताओं हैं।

घटक तत्वों

0

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

+0

यह सही नहीं है। घटक और मॉड्यूल बिल्कुल वही चीज़ नहीं हैं। हालांकि, अक्सर गलत तरीके से इस्तेमाल किया जाता है। – iCrus

2

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

शब्द मॉड्यूल पिछले कुछ वर्षों में पक्षपात से बाहर हो गया है। मॉड्यूल एक अधिक सामान्य शब्द है, लेकिन कुछ भाषाओं में यह एक कीवर्ड है, यानी मॉडुला 2. वीबी.नेट में मॉड्यूल कीवर्ड है, लेकिन यह स्थिर सदस्यों के साथ एक साधारण वर्ग है, और मेरी समझ यह है कि अधिकांश वीबी प्रोग्रामर उपयोग करना पसंद करते हैं क्लास कीवर्ड

1

घटक: ब्लैक-बॉक्स मॉड्यूल।

लेकिन वास्तव में कोई महत्वपूर्ण अंतर नहीं है। यहाँ गहरे अर्थ की तलाश करने की कोशिश मत करो।

6

सामान्य शब्दों में,

  • एक घटक तत्वों की एक अपेक्षाकृत पतले कणों का समूहीकरण है समाधान में किसी विशेष सेवा की सेवा है।
  • एक मॉड्यूल courser अनाज है और सॉफ़्टवेयर द्वारा प्रदान की गई एक या अधिक संबंधित सेवाओं के समूह के रूप में कार्य करता है।

एक मॉड्यूल कई सेवाओं के लिए अपनी सेवाओं को प्रदान करने के लिए उपयोग करेगा, जबकि एक घटक कुछ हद तक कक्षाओं और अन्य घटकों से बनाया जा सकता है।

किसी भी मामले में इसका व्यक्तिपरक और आवेदन के पैमाने पर निर्भर करता है। एक छोटे से आवेदन के लिए एक कार्यक्रम (एक मॉड्यूल) और कई घटकों की संभावना है। मध्यम आकार के आवेदन में कई मॉड्यूल और कई घटक हो सकते हैं। एक बड़े आवेदन में आप उप-प्रणाली शब्द पेश करना चाहेंगे जो मॉड्यूल की तुलना में अधिक courser अनाज है!

+4

दिलचस्प - मेरे अनुभव में परिभाषाएं बिल्कुल विपरीत हैं। उदाहरण के लिए, सॉफ्टवेयर विकास मानकों "मॉड्यूल परीक्षण" के साथ एक दूसरे के साथ "मॉड्यूल परीक्षण" का उपयोग करते हैं। – JeffP

1

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

मॉड्यूल प्रोग्रामिंग भाषा स्तर पर परिभाषित किया गया है (कहें, 5 कक्षाओं के सेट में कुछ कार्यक्षमता प्रदान करने वाला मॉड्यूल शामिल है)। कोड के उस संग्रह द्वारा प्रदान की गई कार्यक्षमता के अनुसार उन्हें स्रोत कोड स्तर पर परिभाषित किया जाता है। (उदाहरण: डेटाबेस के साथ बातचीत के लिए जिम्मेदार आपके आवेदन में दृढ़ता वर्ग)।

ध्यान दें कि, मॉड्यूल भी एक प्रकार का घटक है (वर्गीकरण के साथ जा रहा है और घटक के साथ "is-a" एसोसिएशन साझा करता है)।

संदर्भ: लेन बास, सॉफ्टवेयर आर्क। अभ्यास में और Dr. Timothy Lethbridge lecture

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