liskov-substitution पर टैग किए गए जवाब

ऑब्जेक्ट-ओरिएंटेड डिज़ाइन में लिस्कोव प्रतिस्थापन सिद्धांत के बारे में प्रश्नों के लिए।

10
क्या यह लिस्कोव प्रतिस्थापन सिद्धांत का उल्लंघन है?
मान लें कि हमारे पास टास्क संस्थाओं की एक सूची है, और एक ProjectTaskउप प्रकार है। टास्क को कभी भी बंद किया जा सकता है, सिवाय इसके ProjectTasksकि स्टार्ट होने की स्थिति के बाद वे बंद नहीं हो सकते। यूआई को यह सुनिश्चित करना चाहिए कि प्रारंभ को बंद करने …

8
एलएसपी बनाम ओसीपी / लिस्कोव प्रतिस्थापन वीएस ओपन क्लोज
मैं OOP के ठोस सिद्धांतों को समझने की कोशिश कर रहा हूं और मैं इस निष्कर्ष पर पहुंचा हूं कि एलएसपी और ओसीपी में कुछ समानताएं हैं (यदि अधिक कहने के लिए नहीं)। खुला / बंद सिद्धांत बताता है कि "सॉफ्टवेयर इकाइयां (कक्षाएं, मॉड्यूल, फ़ंक्शन, आदि) विस्तार के लिए खुली …

3
उपवर्ग और उप-प्रकार के बीच क्या अंतर है?
लिस्कोव सबस्टीट्यूशन प्रिंसिपल के बारे में इस सवाल का सबसे ज्यादा रेट किया गया उत्तर , शब्द उप-प्रकार और उप - वर्ग के बीच अंतर करने के लिए दर्द पैदा करता है । यह इस बात को भी स्पष्ट करता है कि कुछ भाषाएं दोनों को भ्रमित करती हैं, जबकि …

14
क्या कोई भाषा या डिज़ाइन पैटर्न है जो एक वर्ग पदानुक्रम में वस्तु व्यवहार या गुणों के * निष्कासन * की अनुमति देता है?
पारंपरिक वर्ग पदानुक्रमों की एक प्रसिद्ध कमी यह है कि वास्तविक दुनिया की मॉडलिंग की बात आती है तो वे बुरे हैं। एक उदाहरण के रूप में, कक्षाओं के साथ जानवरों की प्रजातियों का प्रतिनिधित्व करने की कोशिश कर रहा है। ऐसा करते समय वास्तव में कई समस्याएं होती हैं, …

9
यदि लिस्कोव प्रतिस्थापन सिद्धांत का उल्लंघन किया जाता है तो क्या गलत हो सकता है?
मैं Liskov प्रतिस्थापन सिद्धांत के संभावित उल्लंघन पर इस अत्यधिक मतदान प्रश्न का पालन कर रहा था । मुझे पता है कि लिसकोव प्रतिस्थापन सिद्धांत क्या है, लेकिन मेरे दिमाग में अभी भी स्पष्ट नहीं है कि क्या गलत हो सकता है अगर मैं एक डेवलपर के रूप में ऑब्जेक्ट-ओरिएंटेड …

5
क्या विशेष मामलों में कमियां लिस्कॉव प्रतिस्थापन सिद्धांत का उल्लंघन करती हैं?
मान लें कि मेरे पास एक इंटरफ़ेस FooInterfaceहै जिसमें निम्नलिखित हस्ताक्षर हैं: interface FooInterface { public function doSomething(SomethingInterface something); } और एक ठोस वर्ग ConcreteFooजो उस इंटरफ़ेस को लागू करता है: class ConcreteFoo implements FooInterface { public function doSomething(SomethingInterface something) { } } ConcreteFoo::doSomething()अगर कुछ विशेष प्रकार की SomethingInterfaceवस्तु (यह …

3
पूर्वनिर्धारण को मजबूत करना और पोस्टकंडिशन को कमजोर करना लिस्कॉव प्रतिस्थापन सिद्धांत का उल्लंघन करता है?
मैंने पढ़ा कि लिस्कोव के प्रतिस्थापन सिद्धांत का उल्लंघन किया गया है: Preconditions मजबूत कर रहे हैं, या पोस्टकंडिशन कमजोर हो गए हैं लेकिन मैं पूरी तरह से अभी तक नहीं मिलता है कि ये दो बिंदु लिस्कोव प्रतिस्थापन सिद्धांत का उल्लंघन कैसे करेंगे। क्या कोई एक उदाहरण के साथ …

3
क्या "आयत से वर्ग वारिस" विरोधाभास का कोई विशिष्ट नाम है?
OOP की एक निश्चित विफलता को वर्ग वर्ग के साथ दिखाया गया है जो आयत से विरासत में मिला है, जहाँ तार्किक रूप से वर्ग आयत की एक विशेषता है और इसलिए इसे इनहेरिट करना चाहिए, लेकिन जब आप स्क्वायर की लंबाई या चौड़ाई को बदलने का प्रयास करते हैं …

3
क्या राज्य पैटर्न लिस्कोव प्रतिस्थापन सिद्धांत का उल्लंघन करता है?
यह छवि लागू डोमेन-संचालित डिज़ाइन और पैटर्न से ली गई है : C # और .NET में उदाहरणों के साथ यह स्टेट पैटर्न के लिए वर्ग आरेख है जहां SalesOrderइसके जीवन काल के दौरान विभिन्न राज्य हो सकते हैं। विभिन्न राज्यों के बीच केवल कुछ बदलाव की अनुमति है। अब …

1
क्या Liskov प्रतिस्थापन सिद्धांत एक इंटरफ़ेस को लागू करने वाली कक्षाओं पर भी लागू होता है?
एलएसपी बताता है कि कक्षाओं को उनके आधार वर्गों के लिए प्रतिस्थापित किया जाना चाहिए, जिसका अर्थ है कि व्युत्पन्न और आधार कक्षाएं शब्दार्थ के बराबर होनी चाहिए। लेकिन क्या एलएसपी एक इंटरफ़ेस लागू करने वाली कक्षाओं पर भी लागू होता है? दूसरे शब्दों में, यदि किसी वर्ग द्वारा कार्यान्वित …

2
वास्तविक दुनिया - लिस्कोव प्रतिस्थापन सिद्धांत
बैकग्राउंड: मैं एक मैसेजिंग फ्रेमवर्क विकसित कर रहा हूं। यह ढांचा अनुमति देगा: सेवा बस पर संदेश भेजना संदेश बस में कतारों की सदस्यता लेना संदेश बस में विषयों की सदस्यता लेना हम वर्तमान में RabbitMQ का उपयोग कर रहे हैं, लेकिन मुझे पता है कि हम निकट भविष्य में …

6
प्रदर्शन में परिवर्तन लिस्कोव प्रतिस्थापन सिद्धांत का उल्लंघन करते हैं?
कहो मेरे पास: interface Thing { GetThing(); } class FastThing : Thing { public int GetThing() { return 1; } } class SlowThing : Thing { public int GetThing() { return GetThingFromDatabase(); } } क्या यह लिस्कोव प्रतिस्थापन सिद्धांत का उल्लंघन है?

1
वंशानुक्रम पदानुक्रम में लिस्कोव प्रतिस्थापन सिद्धांत को कैसे सत्यापित किया जाए?
इस उत्तर से प्रेरित : Liskov प्रतिस्थापन सिद्धांत की आवश्यकता है कि उपसर्गों को एक उपप्रकार में मजबूत नहीं किया जा सकता है। उपसंहार को उपप्रकार में कमजोर नहीं किया जा सकता है। सुपरपाइप के हमलावर को एक उपप्रकार में संरक्षित किया जाना चाहिए। इतिहास की बाधा ("इतिहास का नियम")। …

2
लिंकलेडिस्ट का विस्तार। लिस्कोव प्रतिस्थापन सिद्धांत का उल्लंघन?
Add_first (), add_last (), add_after (), remove_first (), remove_last () और remove () जैसे फ़ंक्शन के साथ एक क्लास लिंक्डलिस्ट मौजूद है अब एक वर्ग स्टैक है जो कार्यात्मकता प्रदान करता है जैसे कि पुश (), पॉप (), झांकना () या शीर्ष (), और इन विधियों को लागू करने के …

6
क्या रिश्ते को उलट कर सर्कल-एलिप्से समस्या हल की जा सकती है?
Circleविस्तारितEllipse होने से लिस्कोव पदार्थ सिद्धांत टूट जाता है , क्योंकि यह एक पोस्टकंडिशन को संशोधित करता है: अर्थात्, आप एक्स और वाई को स्वतंत्र रूप से एक दीर्घवृत्त खींचने के लिए सेट कर सकते हैं, लेकिन एक्स को हमेशा हलकों के लिए वाई के बराबर होना चाहिए। लेकिन क्या …

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