-----------------------------------------------------------

New Message on BDOTNET

-----------------------------------------------------------
From: bsrazu
Message 3 in Discussion

Hi ,

Encapsulation
Encapsulation is the concept that implementation of an object is independent 
of its interface. Put another way, an application interacts with an object 
through its interface, which consists of its public properties and methods. 
As long as this interface remains constant, the application can continue to 
interact with the component, even if implementation of the interface was 
completely rewritten between versions.

Objects should only interact with other objects through their public methods 
and properties. Thus, objects should contain all of the data they require, 
as well as all of the functionality that works with that data. The internal 
data of an object should never be exposed in the interface; thus, fields 
rarely should be Public (public).

Take a Car example. If a Car object interacts with a Driver object, the Car 
interface might consist of a GoForward method, a GoBackward method, and a 
Stop method. This is all the information that the Driver needs to interact 
with the Car. The Car might contain an Engine object, for example, but the 
Driver doesn�t need to know about the Engine object�all the Driver cares 
about is that the methods can be called and that they return the appropriate 
values. Thus, if one Engine object is exchanged for another, it makes no 
difference to the Driver as long as the interface continues to function 
correctly.




Abstraction

Simply put, an abstraction is a view of an entity that includes only those 
aspects that are relevant for a particular situation. For instance, suppose 
that we want to create a software component that provides services for 
keeping a company's employee information. For this purpose, we begin by 
making a list of the items relevant to our entity (an employee of the 
company). Some of these items are:

FullName
Address
EmployeeID
Salary
IncSalary
DecSalary

Note that we include not only properties of the entities in question, such 
as FullName, but also actions that might be taken with respect to these 
entities, such as IncSalary, to increase an employee's salary. Actions are 
also referred to as methods, operations, or behaviors. We will use the term 
methods, since this term is used by VB.NET.

Of course, we would never think of including an IQ property, since this 
would not be politically correct, not to mention discriminatory and 
therefore possibly illegal. Nor would we include a property called 
HairCount, which gives the number of hairs on the employee's right arm, 
because this information is of absolutely no interest to us, even though it 
is part of every person's being.

In short, we have abstracted the concept of an employee � we have included 
only those properties and methods of employees that are relevant to our 
needs. Once the abstraction is complete, we can proceed to encapsulate these 
properties and methods within a software component.


Bsraju,

www.bsraju.tk

_________________________________________________________________
The bold �n the beautiful! The rich and the famous! 
http://www.msn.co.in/cinema/ Meet them all at one place!


-----------------------------------------------------------

To stop getting this e-mail, or change how often it arrives, go to your E-mail 
Settings.
http://groups.msn.com/bdotnet/_emailsettings.msnw

Need help? If you've forgotten your password, please go to Passport Member Services.
http://groups.msn.com/_passportredir.msnw?ppmprop=help

For other questions or feedback, go to our Contact Us page.
http://groups.msn.com/contact

If you do not want to receive future e-mail from this MSN group, or if you received 
this message by mistake, please click the "Remove" link below. On the pre-addressed 
e-mail message that opens, simply click "Send". Your e-mail address will be deleted 
from this group's mailing list.
mailto:[EMAIL PROTECTED]

Reply via email to