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