Purchase Solution

Data Structures and Algorithms

Not what you're looking for?

Ask Custom Question

Understanding object-oriented methodologies is often difficult. You already understand that
object-oriented analysis and design emulates the way human beings tend to think and
conceptualize problems in the everyday world. With a little practice, object-oriented
programming will become second nature to you.
As an example, consider a typical house in which there are several bedrooms, a kitchen, and
a laundry room?each with a distinct function. You sleep in the bedroom, you wash clothes in
the laundry room, and you cook in the kitchen. Each room encapsulates all the items needed
to complete the necessary tasks.
You do not have an oven in the laundry room or a washing machine in the kitchen. However,
when you do the laundry, you do not just add clothes to the washer and wait in the laundry
room; once the machine has started, you may go into the kitchen and start cooking dinner.
But how do you know when to go back to check the laundry? When the washer buzzer
sounds, a message is sent to alert you to go back into the laundry room to put in a new load.
While you are folding clothes in the laundry room, the oven timer may ring to inform you that
the meat loaf is done.
What you have is a set of well-defined components: Each provides a single service to
communicate with the other components using simple messages when something needs to
be done. If you consider a kitchen, you see it is also composed of several, smaller
components, including the oven, refrigerator, and microwave. Top-level objects are
composed of smaller components that do the actual work. This perspective is a very natural
way of looking at our world, and one with which we are all familiar. We do the same thing in
object-oriented programming:
?Identify components that perform a distinct service
?Encapsulate all the items in the component necessary to get the job done
?Identify the messages that need to be provided to the other components
Although the details can be quite complex, these details are the basic principles of objectoriented
programming.

?Consider the microwave oven in your kitchen, using the object-oriented thinking
described above.
?Create a table with the following four column headings: Top-Level Objects,
Communicates With, Incoming Messages, and Outgoing Messages.
o Identity the top-level objects of the microwave.
o Explain some of the graphical user interfaces (GUIs) and communications messages
that occur during the operation of a microwave.
?Describe some of the advantages of having a componentized system. For example,
What happens if the microwave breaks?

Purchase this Solution

Solution Summary

This solution of 404 words identifies the components of a microwave oven, refrigerator, washing machine and discusses the conditions of the graphical user interface and communications.

Purchase this Solution


Free BrainMass Quizzes
Basic UNIX commands

Use this quiz to check your knowledge of a few common UNIX commands. The quiz covers some of the most essential UNIX commands and their basic usage. If you can pass this quiz then you are clearly on your way to becoming an effective UNIX command line user.

C# variables and classes

This quiz contains questions about C# classes and variables.

Basic Computer Terms

We use many basic terms like bit, pixel in our usual conversations about computers. Are we aware of what these mean? This little quiz is an attempt towards discovering that.

Basic Networking Questions

This quiz consists of some basic networking questions.

Word 2010: Tables

Have you never worked with Tables in Word 2010? Maybe it has been a while since you have used a Table in Word and you need to brush up on your skills. Several keywords and popular options are discussed as you go through this quiz.