Encapsulation, Business Objects, Data Objects, Components and Classes

Encapsulation

Encapsulation एक ऐसी प्रक्रिया है, जो हमें हमारे Application के किसी Specific Part को एक Well-Designed Black-Box की तरह Architecture करने की सुविधा देता है। जिससे कि हमारे Application का प्रत्‍येक हिस्सा एक अलग Component की तरह Represent होता है, जो कि एक Well Defined Interface Provide करता है और हमें केवल उस Interface के माध्‍यम से उस Component की Functionalities को उपयोग में लेना होता है, जबकि उस Functionality को वह Component किस तरह से Provide कर रहा है, ये बात हमारे लिए पूरी तरह से Hidden रहती है साथ ही हमें इस बात को जानने की जरूरत भी नहीं होती।

उदाहरण के लिए कोई Component Parameter के रूप में एक UserID या ProductID Accept कर सकता है और Return Value के रूप में Specified UserID अथवा ProductID वाले User या Product की पूरी Information Return कर सकता है, जबकि Component द्वारा ये काम Internally कैसे किया जा रहा है, इस बात से एक Component User के रूप में हमें कोई मतलब नहीं होता।

क्‍योंकि हम जिस Component को Use कर रहे हैं, वह एक Encapsulated Unit की तरह है, जिसके लिए Well Defined Interface को Use करते हुए हम हमारी जरूरतों को पूरा कर लेते हैं, लेकिन Internally वह Component हमारी जरूरतों को कैसे पूरा कर रहा है, इस बात से हमें कोई मतलब नहीं होता।

Business Objects

Business Objects सामान्‍यत: हमारे Application के Second Layer के Part होते हैं, जो कि हमारे Data Source व Frontend के बीच Exist होते हैं। इन Components को Business Objects इसलिए कहते हैं क्‍योंकि इनके द्वारा हम हमारे Business से सम्बंधित Rules को अपने Application पर Enforce करते है।

उदाहरण के लिए यदि हम किसी Item को Specify किए बिना Purchase Order Submit करने की कोशिश करें, तो हम Practically अपने Underlying Business में ऐसा नहीं कर सकते। इसीलिए ये प्रक्रिया हमारे Application के लिए भी Valid नहीं होनी चाहिए और यदि हम बिना Item Specify किए कोई Purchase Order Submit करना चाहें, तो एक Appropriate Business Object द्वारा इस Operation को Refuse करने के लिए एक Exception Throw होना चाहिए।

Data Objects

Data Objects सामान्‍यत: Data के Package होते हैं जिन्हें हम Webpage व Business Objects के बीच Information को Send करने के लिए Use करते हैं।

उदाहरण के लिए हम Employee नाम की एक Data Class Create कर सकते हैं जो कि किसी Employees Table के किसी एक Employee की Information को Return करता है, जिसमें FirstName, LastNameDateOfBirth नाम की Properties हों।

किसी Data Object में हमेंशा Underlying Table में Store होने वाले विभिन्न Fields से Associated Properties तो होते हैं, लेकिन इनमें कोई Method नहीं होता जो कि इन Properties को Access व Manipulate कर सके, क्‍योंकि Data को Access व Manipulate करने के लिए Middle-Tier में Business Objects Create किए जाते हैं।

Components and Classes

तकनीकी रूप से Component वास्तव में एक या अधिक Classes का समूह होता है, जिसमें अन्‍य .NET Types जैसे कि Classes, Structures, Enumerations आदि Exist हो सकते हैं।

उदाहरण के लिए Microsoft का System.Web.dll एक Single लेकिन बहुत ही बडा Component है जो हमें वे सभी Namespaces Provide करता है, जिनके नाम की शुरूआत System.Web से होती है।

अभी तक हमने जितने भी Examples Create किए हैं, उनमें मूल रूप से कुछ Specific Type की Classes को ही Use किया है। जहां System.Web.Page एक ऐसी Class है, जिसे प्रत्‍येक Webpage Inherit करता है और इसमें Mostly Event Handling Procedures Contained होते हैं। जबकि Component Classes में सामान्‍यत: किसी प्रकार के User Interface Logic Included नहीं होते और सामान्‍यत: इन्हें किसी Specific Existing Class से Inherit भी नहीं किया जाता।


Special Discount Offer

खरीदिए एक से ज्‍यादा EBooks, और पाईए ₹100 से ₹1200 तक का Extra Cash Discount

Discount Coupon Codes