oop - wwe - ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग क्या है




पहलू ओरिएंटेड प्रोग्रामिंग बनाम ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग (4)

एओपी इस अवधारणा से निपटने वाला एक नया प्रोग्रामिंग प्रतिमान है। एक पहलू एक सॉफ्टवेयर इकाई है जो एप्लिकेशन के एक विशिष्ट गैर-कार्यात्मक हिस्से को कार्यान्वित करती है।

मुझे लगता है कि यह लेख आस्पेक्ट ओरिएंटेड प्रोग्रामिंग से शुरू करने के लिए एक अच्छी जगह है: http://www.jaftalks.com/wp/index.php/introduction-to-aspect-oriented-programming/

https://code.i-harness.com

यहां और पूरी दुनिया में अधिकांश डेवलपर्स की तरह, मैं कई वर्षों तक ऑब्जेक्ट उन्मुख प्रोग्रामिंग (ओओपी) तकनीकों का उपयोग कर सॉफ्टवेयर सिस्टम विकसित कर रहा हूं। तो जब मैंने पढ़ा कि पहलू उन्मुख प्रोग्रामिंग (एओपी) पारंपरिक ओओपी पूरी तरह से या सीधे हल नहीं करता है, तो कई समस्याओं को संबोधित करता है, मैं रोकता हूं और सोचता हूं, क्या यह वास्तविक है?

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

क्या किसी के पास जवाब है?


ओओपी और एओपी पारस्परिक रूप से अनन्य नहीं हैं। एओपी ओओपी के लिए अच्छा जोड़ा जा सकता है। एओपी इस मानक कोड के साथ विधि कोड को छेड़छाड़ किए बिना विधियों के लिए लॉगिंग, प्रदर्शन ट्रैकिंग इत्यादि जैसे मानक कोड जोड़ने के लिए विशेष रूप से आसान है।


पहलू उन्मुख पोग्रामिंग लॉगिंग, सुरक्षा जैसे क्रॉस-कटिंग चिंताओं को लागू करने का एक अच्छा तरीका प्रदान करता है। ये क्रॉस-कटिंग कॉन्सर्स तर्क के टुकड़े हैं जिन्हें कई स्थानों पर लागू किया जाना चाहिए लेकिन वास्तव में व्यापार तर्क के साथ कुछ भी नहीं है।

आपको ओओपी के प्रतिस्थापन के रूप में एओपी नहीं देखना चाहिए, एक अच्छा ऐड-ऑन के रूप में, जो आपके कोड को अधिक स्वच्छ, ढीले-युग्मित और व्यावसायिक तर्क पर केंद्रित करता है। तो एओपी लागू करके आप 2 प्रमुख लाभ प्राप्त करेंगे:

  1. प्रत्येक चिंता के लिए तर्क अब एक ही स्थान पर है, क्योंकि कोड कोड पर बिखरे हुए होने के विपरीत।

  2. कक्षाएं क्लीनर हैं क्योंकि उनमें केवल अपनी प्राथमिक चिंता (या मूल कार्यक्षमता) के लिए कोड होता है और माध्यमिक चिंताओं को पहलुओं में स्थानांतरित कर दिया गया है।


मुझे लगता है कि इस सवाल का कोई सामान्य जवाब नहीं है लेकिन ध्यान देने योग्य एक बात यह है कि एओपी ओओपी को प्रतिस्थापित नहीं करता है, लेकिन कुछ अपघटन सुविधाओं को जोड़ता है जो प्रमुख रचना ( 1 ) (या क्रॉसकटिंग चिंताओं) के तथाकथित अत्याचार को संबोधित करते हैं।

यह निश्चित रूप से कुछ मामलों में मदद करता है जब तक कि आप एक विशिष्ट परियोजना के लिए उपयोग करने के लिए उपकरण और भाषाओं के नियंत्रण में हों, लेकिन पहलुओं के संपर्क के संबंध में जटिलता का एक नया स्तर भी जोड़ता है और AJDT जैसे अतिरिक्त उपकरणों की AJDT को अभी भी समझने के लिए आपका कार्यक्रम

ग्रेगोर किज़ेलेस ने एक बार Google टेक टॉक पर एओपी पर एक दिलचस्प प्रारंभिक बात की जो मैं अनुशंसा करता हूं: आस्पेक्ट ओरिएंटेड प्रोग्रामिंग: मॉड्यूलरिटी में रेडिकल रिसर्च





paradigms