Object-Oriented Software Engineering Patterns

Object-oriented (OO) concepts in software engineering are not new, and let's start this chapter with a brief introduction before we dive into OO design patterns. While you are reading this chapter, look around you; whatever you see is an object: the book, bookshelves, reading lamp, table, chair, and so on. Everything around you can be imagined as an object, and all of them share two primary characteristics, as follows:

  • State
  • Behavior

A reading lamp has off and on as states, and turn on and turn off as behaviors. Objects may also have many states and many behaviors, sometimes even other objects as well.

Object-oriented design (OOD) intends to provide modularity, abstraction (information hiding), code reuse, and pluggable (plug and play) and easy code debug.

Grady Booch defined OOD in his book titled Object Oriented Analysis and Design with Application as follows:

"OOD is a method of design encompassing the process of object-oriented decomposition and a notation for depicting both logical and physical as well as static and dynamic models of the system under design."

This chapter covers the following elements of OOD:

  • Essential and non-essential elements of OOD
  • Primary characteristics of OOD
  • Core principles of OOD
  • Most common design patterns of OOD
  • Cross-reference of OO design patterns
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset