ओओपी में किसी वस्तु की स्थिति की परिभाषा


11

मुझे ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (एक पेपर के लिए) में "ऑब्जेक्ट की स्थिति" की संक्षिप्त परिभाषा की आवश्यकता है।

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

मैं अनिश्चित हूं, लेकिन मेरा सबसे अच्छा अनुमान कुछ इस तरह है: वस्तु की अवस्था वस्तु के उदाहरण चर की स्थिति से परिभाषित होती है।

मैं किसी वस्तु की स्थिति और / या विषय पर संदर्भ के लिए खोज कर रहा हूं।

(btw, क्या मैं इस अवधारणा को "ऑब्जेक्ट स्टेट" कह सकता हूं या क्या यह असामान्य है?)


मुझे लगता है कि यहां अस्पष्टता के लिए जगह है, इसलिए आपको अपने पेपर में बताया जाना चाहिए कि 'राज्य' का मतलब क्या है? यदि आप ऐसा नहीं कर सकते, तो शायद आप अपना पेपर जारी करने की स्थिति में नहीं थे।
PJTraill

जवाबों:


9

आप किताब करने के लिए एक बार देख ले सकते हैं (और का हवाला देते हैं) "वस्तु उन्मुख विश्लेषण और डिजाइन" जी बूच द्वारा :

... एक वस्तु एक इकाई है जिसमें राज्य, व्यवहार और पहचान होती है। समान वस्तुओं की संरचना और व्यवहार उनके सामान्य वर्ग में परिभाषित किए गए हैं। शब्द उदाहरण और वस्तु विनिमेय हैं।

हम उन वर्गों में अधिक विस्तार से राज्य, व्यवहार और पहचान की अवधारणाओं पर विचार करेंगे। ...

और एक संपूर्ण उपधारा है जो राज्य की अवधारणा का वर्णन करती है :

... इस उदाहरण से, हम निम्न स्तर की परिभाषा बना सकते हैं।

एक वस्तु की स्थिति वस्तु के सभी (आमतौर पर स्थिर) गुणों के साथ-साथ इन गुणों में से प्रत्येक के वर्तमान (आमतौर पर गतिशील) मूल्यों को शामिल करती है ...


4
फजी, हमेशा की तरह। बूथ का शायद यह कहने का मतलब है: एक राज्य उन चरों के मानों का एक कार्य है।
रीस्टोरियरपोस्ट

3

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


2

शब्द ' राज्य ' का उपयोग विभिन्न इंद्रियों में किया जा सकता है, जो सभी एक सटीक परिभाषा के लिए भी अतिसंवेदनशील नहीं हो सकते हैं। इसलिए यह महत्वपूर्ण था कि आप अपने पेपर में एक परिभाषा को शामिल करें, यह स्पष्ट करने के लिए कि आप इस शब्द का उपयोग कैसे कर रहे थे। निम्नलिखित में मैं किसी वस्तु की स्थिति की एक अनूठी परिभाषा नहीं प्रस्तुत करता, बल्कि इसके बारे में सोचने के कई तरीकों को स्केच करने की कोशिश करता हूं, जो विभिन्न संदर्भों में उचित हो सकता है।

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

ओओपी में किसी वस्तु की स्थिति को परिभाषित करने में कठिनाई का एक हिस्सा यह है कि जब हम किसी विशेष भाषा में मॉडलिंग करते हैं, तो वह भाषा अक्सर हमें ऑब्जेक्ट विशेषताओं को अलग करने की अनुमति नहीं देती है, जो कि वैचारिक रूप से दूसरों से समान इकाई का हिस्सा हैं। उदाहरण के लिए, एक लिंक की गई सूची में Carकई Link-objects शामिल होंगे, जिनमें अगले (और शायद पिछले) के संकेत होते हैं, Linkहालांकि वैचारिक रूप से सूची एक ही वस्तु है; लिंक में भी एम्बेड किया जा सकता हैCar-objects या उन्हें संकेत मिलता है, लेकिन इस मामले में लिंक की गई वस्तुएं सूची के भाग के बजाय वैचारिक रूप से अलग होती हैं; हाल के परिवर्तनों की एक सूची में, कभी-कभी, परिवर्तन केवल सूची में मौजूद हो सकते हैं और इसे इसका हिस्सा माना जा सकता है। इन विभिन्न मामलों में हमें यह तय करना होगा कि क्या हम जुड़े हुए ऑब्जेक्ट को शामिल करने के लिए किसी एक वस्तु की स्थिति पर विचार करते हैं। इसके अलावा, एक के Carलिए एक लिंक हो सकता है Registering_Authority- हम शायद कार की स्थिति को बदलने के लिए नहीं मानते हैं जब इसके पंजीकरण प्राधिकारी अपनी वेबसाइट के URL को बदलते हैं। जब तक कार्यान्वयन भाषा हमें विभिन्न प्रकार के लिंक को भेद करने की अनुमति नहीं देती है, तब तक अकेले भाषा के संदर्भ में किसी वस्तु की स्थिति की सामान्य परिभाषा बनाना संभव नहीं होगा।

' बाहरी ' या ' कार्यात्मक ' राज्य को 'कैसे व्यवहार करता है' के रूप में परिभाषित किया जा सकता है, उदा। यह इनवोकेशन विधि या उपयोगकर्ता इंटरफ़ेस पर कैसे प्रतिक्रिया करता है। किसी ऑब्जेक्ट के लिए एक वर्ग उदाहरण के रूप में यह परिभाषा उस प्रकार पर निर्भर करती है जिस पर ऑब्जेक्ट को संबंधित के रूप में देखा जाता है: ए Circle, रंग के रूप में देखा जाता हैColoured_Circleदिखाई नहीं देता है, और इसलिए अपने राज्य के लिए अप्रासंगिक है। इसके साथ एक कठिनाई यह है कि 'यह कैसे प्रतिक्रिया करता है' को दिए गए मूल्यों के संदर्भ में परिभाषित करने की आवश्यकता हो सकती है, और ये 'मूल्य' अन्य वस्तुओं के राज्य हो सकते हैं। इसे औपचारिक रूप से कहने का एक तरीका यह है कि किसी वस्तु की दो अवस्थाएँ समान होती हैं यदि भविष्य में किसी सिस्टम के सभी संभावित निष्पादन निष्पादित होते हैं, जिसमें इनपुट से लेकर सिस्टम तक उसी मैपिंग में परिणामित होता है। इस एनक्लोजिंग सिस्टम को एक स्व-निहित प्रणाली होने की आवश्यकता हो सकती है, जो इसके पर्यावरण से स्वतंत्र निष्पादन में सक्षम है; दूसरी ओर, कोई व्यक्ति इसे स्वयं प्रश्न के रूप में छोटा होने की अनुमति दे सकता है। किसी भी मामले में, एक गणितीय दृष्टिकोण तब एक राज्य को एक समतुल्यता वर्ग के रूप में परिभाषित करना है

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


यह उस वस्तु स्थिति के बारे में सबसे उपयोगी उत्तर है जो मुझे मिली है। ऑनलाइन एक पीडीएफ दस्तावेज़ है और वह ज्यादातर यही है। विशेष रूप से प्रतिनिधित्व (आंतरिक स्थिति) के बारे में हिस्सा। यह मेरी आंखों को खोलता है और मुझे वस्तु के बारे में अलग तरह से बात करता है।
मिरोस्लाव ट्रिनीक

1

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

Def 3: किसी वस्तु के जीवनचक्र में एक चरण जो उस वस्तु की स्थिति की पहचान करता है।

Def 5: किसी वस्तु के जीवन के दौरान एक स्थिति या स्थिति जिसके दौरान वह कुछ स्थिति को संतुष्ट करता है, कुछ गतिविधि करता है, या किसी घटना की प्रतीक्षा करता है।

Def 8: एक वस्तु की विशेषता जो उसके सार्वजनिक और निजी डेटा सदस्यों में प्रकट होती है, और इसे दो श्रेणियों में विभाजित किया जा सकता है: आवश्यक राज्य और गैर-आवश्यक राज्य।

Def 9: एक व्यापार राज्य मशीन में, कई असतत व्यक्तिगत चरणों में से एक है जो एक व्यवसाय लेनदेन की रचना करने के लिए व्यवस्थित किया जाता है।

Def 10: एक ऐसी स्थिति जिसमें सर्किट एक उपयुक्त पल्स के आवेदन तक रहता है।

वेबस्टर का न्यू वर्ल्ड कॉलेज डिक्शनरी 'राज्य' को परिभाषित करता है:

किसी निश्चित समय पर किसी व्यक्ति या चीज़ को चिह्नित करने वाली परिस्थितियों या विशेषताओं का एक सेट; होने का तरीका या रूप: स्थिति

इन सभी का सामान्य भाजक समय है। समय बढ़ने के साथ राज्य बदलता है। यह चर की प्रकृति है। अगर किसी से पूछा जाए, "आपकी वर्तमान स्थिति क्या है?" आप आज कह सकते हैं कि आप शादीशुदा हैं और कल आप सिंगल हो सकते हैं।

इन सभी परिभाषाओं को ध्यान में रखते हुए, कोई भी व्यक्ति यह बता सकता है कि 'स्टेट' वह तरीका है, जो किसी विशेष बिंदु पर किसी विशेषता के मूल्यों द्वारा निर्धारित समय में मौजूद होता है, अर्थात यह गुण / चर है।

मुझे नहीं लगता कि इससे कोई सरल हो जाता है।


यह कुछ वोटों के लायक है, क्योंकि यह अन्य उत्तरों की तुलना में अस्पष्टता को स्पष्ट करने की क्षमता बनाता है।
PJTraill

मेरी पिछली टिप्पणी को फिर से शुरू करें: मैंने तब से अस्पष्टता का वर्णन करने के लिए अपने स्वयं के उत्तर को और अधिक स्पष्ट रूप से जोड़ा है ।
PJTraill

0

ऑब्जेक्ट-ओरिएंटेड सिस्टम "ऑब्जेक्ट" की अवधारणा का उपयोग करके कोड और डेटा की शर्तों को एकीकृत करता है। किसी ऑब्जेक्ट में स्थिति (डेटा) और व्यवहार (कोड) होता है। इसलिए, ऑब्जेक्ट की अवस्थाएं उस ऑब्जेक्ट के अंदर इंस्टेंस (चर) होती हैं, जिसमें डेटा होता है।


यह सच है, लेकिन यह मौजूदा उत्तरों में बहुत कुछ जोड़ने के लिए नहीं है।
डेविड रिचेर्बी

1
शायद यह किसी के लिए समझना आसान होगा :)
सैयद मेहरान हुसैन

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