2010-06-05 10 views
21

मुझे पता है कि रिलेशनल डेटाबेस सेट-थ्योरी पर आधारित हैं, कार्यात्मक प्रोग्रामिंग लैम्ब्डा कैलकुस पर आधारित है, तर्क प्रोग्रामिंग तर्क (निश्चित रूप से :)) पर आधारित है, और अब जब मैं इसके बारे में सोचता हूं; मुझे यकीन नहीं है कि क्या अनिवार्य और सामान्य प्रोग्रामिंग गणित की किसी भी विशेष शाखा पर आधारित है।क्या ओओपी गणित की किसी भी शाखा पर आधारित है?

+0

मैंने सुना है कि यह इमारतों की वास्तुकला से आया है :) – hgulyan

+1

@hgulyan, नहीं, यह [डिजाइन पैटर्न] (http://en.wikipedia.org/wiki/Design_pattern) है। ओओपी इन भविष्यवाणी करता है। –

+0

@ पीटर टोरोक, आप सही हैं :) – hgulyan

उत्तर

25

ओओपी किसी सख्त औपचारिकता से उत्पन्न नहीं होता है, लेकिन यह वास्तव में औपचारिकता है। उस औपचारिकता को सही तरीके से परिभाषित करने के कई प्रयास थे। सबसे उल्लेखनीय काम लुका कार्डेली द्वारा किया जाता है: http://lucacardelli.name/indexPapers.html (पूरी "वस्तुओं" अनुभाग देखें)

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

तो, सबसे सामान्य गणितीय आधारों के लिए सचमुच सबकुछ के लिए आपको टर्म रीराइटिंग सिस्टम में खोदने की आवश्यकता होगी।

चावल विश्वविद्यालय में अब्देल गवाड़ का हालिया काम हाल ही में एक काम है। वह मुख्यधारा ओओपी (उदाहरण के लिए, जावा, सी #, सी ++, स्कैला, एक्स 10, आदि) का गणितीय मॉडल बनाता है जिसे एनओयूपी कहा जाता है। यहाँ अपनी पीएचडी थीसिस के लिए एक लिंक http://scholarship.rice.edu/handle/1911/70199

3

OOP अपने मूल है सिमुला-67 और स्मालटाक-80 के बजाय किसी भी गणितीय सिद्धांत या रीतिवाद की तरह प्रोग्रामिंग भाषाओं में। लेकिन मुझे लगता है कि आप कह सकते हैं कि ओओपी की वस्तु, वर्ग और विरासत अवधारणा पर आधारित श्रेणियों और वर्गीकरण के बेवकूफ या सामान्य ज्ञान प्रणाली के आधार पर हैं; जैसे लिनिअस द्वारा विकसित टैक्सोनोमीज़।

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