मैं विभिन्न लेखों से गुजर चुका हूं, लेकिन मुझे अभी भी पता नहीं है कि क्यों उदाहरण का उपयोग नहीं किया जाना चाहिए। कृपया मुझे अपने विचारों को जानें।हमें उदाहरण का उपयोग कब करना चाहिए और
उत्तर
मुझे खराब डिज़ाइन पर संकेतों का उदाहरण उपयोग करने की आवश्यकता मिलती है। यह एक निश्चित संकेत है कि एक बड़ा, जटिल स्विच-स्टाइल निर्माण का पालन करेगा। अधिकांश बार जब मैं इसे इस्तेमाल करता हूं, तो हमें उदाहरण के बजाय बहुरूपता का उपयोग करना चाहिए। रणनीति पैटर्न देखें। (relevant examples of use)
एकमात्र बार मुझे लगता है कि मुझे इसका उपयोग करने की आवश्यकता है जब equals(Object o)
लागू किया जाता है।
जब आप वस्तु को पारित करते हैं तो आपको इसका उपयोग करने की आवश्यकता नहीं है। यदि कोई अस्पष्टता शामिल है (जैसे एक ही इंटरफेस को लागू करने वाले दो वर्गों की तरह) तो आगे बढ़ने से पहले instanceof
का उपयोग करने की सलाह दी जाती है।
आधार प्रकार से व्युत्पन्न प्रकार तक कास्टिंग एक बुरी चीज है। यदि आप इस तरह से instandof का उपयोग करते हैं, तो इसे खराब डिजाइन माना जाता है क्योंकि बनाए रखने और पढ़ने के लिए मुश्किल है। http://www.javapractices.com/topic/TopicAction.do?Id=31 देखें।
बराबर के लिए instanceof
का उपयोग() क्योंकि आपके पास object
है जो आपका प्रकार होना चाहिए, यह अच्छा अभ्यास है।
एक अच्छा उपयोग-मामला RandomAccess जैसे मार्कर इंटरफेस की जांच करेगा।
ऑब्जेक्ट के बराबर विधि को ओवरराइड करते समय उदाहरण का उपयोग करना आवश्यक है, क्योंकि दो वस्तुएं अलग-अलग प्रकार के समान नहीं हो सकती हैं। मैं शायद ही कभी किसी अन्य परिस्थिति में आ गया हूं जहां उदाहरण आवश्यक है - शायद अगर डाउनकास्टिंग की आवश्यकता है लेकिन क्लासकास्ट अपवाद फेंक दिया जा सकता है।
- 1. हमें कक्षा का उपयोग कब करना चाहिए और जब हमें
- 2. हमें FSharpFunc.Adapt का उपयोग कब करना चाहिए?
- 3. एसपीएल बनाम ऐरे: हमें एसपीएल का उपयोग कब करना चाहिए और हमें PHP में ऐरे का उपयोग कब करना चाहिए?
- 4. हमें निजी या संरक्षित का उपयोग कब करना चाहिए?
- 5. हमें सी # में चेक ऑपरेटर का उपयोग कब करना चाहिए?
- 6. हमें EntityManagerFactory को कब बंद करना चाहिए?
- 7. उद्देश्य-सी में, मुझे कक्षा विधियों का उपयोग कब करना चाहिए और मुझे उदाहरण विधियों का उपयोग कब करना चाहिए?
- 8. आपको जेसीआर का उपयोग कब करना चाहिए और आपको जेपीए/आरडीबीएमएस का उपयोग कब करना चाहिए?
- 9. सी # मुझे सूची का उपयोग कब करना चाहिए और मुझे सरणीसूची का उपयोग कब करना चाहिए?
- 10. एमवीसी: हमें "नियंत्रक" की आवश्यकता क्यों है, या हमें इस पैटर्न का उपयोग कब करना चाहिए?
- 11. हमें आईआईएस में डब्ल्यूसीएफ सेवा कब होस्ट करनी चाहिए और हमें विंडोज़ सेवा में कब होस्ट करना चाहिए?
- 12. मुझे सेफफोर्स का उपयोग कब करना चाहिए?
- 13. मुझे _aligned_malloc() का उपयोग कब करना चाहिए?
- 14. हमें सी # में निहित और स्पष्ट ऑपरेटरों का उपयोग कब करना चाहिए?
- 15. मुझे CompiledQuery का उपयोग कब करना चाहिए?
- 16. मुझे ConcurrentSkipListMap का उपयोग कब करना चाहिए?
- 17. मुझे GC.SuppressFinalize() का उपयोग कब करना चाहिए?
- 18. मुझे पैरामीटर का उपयोग कब करना चाहिए?
- 19. मुझे std_logic_vector का उपयोग कब करना चाहिए और मुझे अन्य डेटा प्रकारों का उपयोग कब करना चाहिए?
- 20. मुझे अपाचे कॉमन्स 'Validate.isTrue का उपयोग कब करना चाहिए, और मुझे केवल' assert 'कीवर्ड का उपयोग कब करना चाहिए?
- 21. हमें Serializable इंटरफ़ेस को कब कार्यान्वित करना चाहिए?
- 22. मुझे पेरर ("...") और fprintf (stderr, "...") का उपयोग कब करना चाहिए?
- 23. आपको IENumerable और GetEnumerator का उपयोग कब करना चाहिए?
- 24. मुझे remove_reference और add_reference का उपयोग कब करना चाहिए?
- 25. क्या हमें उपयोगकर्ता कहानियों में व्यक्तित्व का उपयोग करना चाहिए?
- 26. हमें क्यों जारी करना चाहिए?
- 27. आपको रेल ऐप में रीस्टफुल कंट्रोलर का उपयोग कब करना चाहिए, और आपको कब नहीं चाहिए?
- 28. हमें एक डिफ़ॉल्ट कन्स्ट्रक्टर कब चाहिए?
- 29. हमें सी # में बाहरी उपनाम कीवर्ड का उपयोग कब करना चाहिए?
- 30. हमें एक अनियमित स्थिर अंतिम चर का उपयोग कब करना चाहिए?
असल में, यह निर्धारित करना है कि किसी ज्ञात मानदंड (उदाहरण के लिए प्रकार) के अनुसार क्या किया जाना चाहिए, लेकिन बहुरूपता का उपयोग करके अलग-अलग कोड शाखाओं पर अज्ञात प्रकारों को प्रेषित करने के लिए, पैटर्न का उपयोग [विज़िटर] (http: // en .wikipedia.org/विकी/विज़िटर_पटरर्न) –
आईएमओ उदाहरण पॉलीमोर्फिज्म से बेहतर है विशेष मामले स्थितियों जहां एक विधि केवल एक उप-वर्ग में समझ में आता है, और अभिभावक वर्ग और/या अन्य उप-वर्गों को स्टब विधियों को लागू करने के लिए मजबूर किया जाएगा जो अर्थहीन हैं उनके संदर्भ में। फिर भी, किसी को विरासत विधि से विशेष-केस विधि को कॉल करने का प्रयास करना चाहिए, लेकिन यदि यह बोझिल है तो उदाहरण का उपयोग करके पूरी तरह से उचित है। –