![]() |
Building Object Applications That WorkYour Step-By-Step Handbook for Developing Robust Systems Using Object TechnologyCambridge University Press/SIGS Books, 1997 ISBN#: 0521-64826-2 |
![]() |
Building Object Applications starts exactly where The Object Primer 1st Edition left off -- At OO design. Like The Object Primer it is written in everyday language that you can understand, covering leading-edge topics that are pertinent to real-world developers. While OO is often used to develop complex systems, OO itself does not need to be complicated. Like The Object Primer this book is written from the point of view of a developer, somebody who has lived through the difficulty of learning this exciting new approach to creating applications.
Building Object Applications That Work is divided into
five parts:
Part 1 -- Introduction
Building Object Applications starts where The Object Primer left off -- At
OO design. Well, actually it starts with a review of, and a few
improvements to, The Object Primer.
To keep things simple I purposely left out a few things in the
first volume, specifically class methods and class attributes.
These two concepts are just too darn confusing for OO beginners,
so I skipped them until this book. Besides, I wanted to make sure
there was enough new stuff in the first chapter to make it worth
your while to read it. I also transition from the Ambler Notation
presented in The Object Primer
to the Unified Modeling
Language (UML), which is quickly
becoming the industry standard.
Part 2 -- Object-Oriented Analysis, Design, and Architecture
In the second chapter well discuss several diagramming
techniques that we didnt cover in the first book.
Well also learn some really good tips and techniques to
make your diagrams look better, as well as how to convert back
and forth between the class modeling
notations of the leading OO methodologies. One of the
main benefits of this chapter is that you get a really solid
understanding of how OO analysis and OO design techniques fit
together.
Chapter 3 introduces us to an OO class
type architecture. Well propose a four level
architecture that actually has five and maybe even six levels,
but whos counting? We then get into OO patterns in chapter
4. Youve heard a lot about them, youve seen the huge
tomes, now its time to actually find out about what this
stuff is really all about. Because the proof is always in the
pudding, but never in the jelly for some reason, well look
at several patterns that are being used in live applications
today.
In chapter 5 well delve into distributed
OO architectures -- Because the client/server
(C/S) architecture is currently the dominant approach
to systems development, I figured wed better show you how
to design for C/S. Well discuss the seven steps for
creating an OOC/S design. C/S
can be very complex, and experience has shown that OO is the
surest way to guarantee success in a C/S environment. Well
also discuss how OOCS leads to distributed objects, an
architecture that is quickly catching on and that is most likely
in your future.
Part 3 -- Object-Oriented Construction
Chapter 6 covers object-oriented
metrics that you can use to both estimate the size of
a project and to evaluate how well you are doing. The important
thing about metrics for developers are the design and coding
implications that they make. Understanding the basis for metrics
will help you to improve your development skills.
Were going to spend a fair bit of time talking about OO
languages and OO construction issues in chapters 6 and 7, so all
you programmers out there might want to skip immediately to that
chapter. Although there are a fair number of OO programming
languages, we concentrate on Smalltalk,
C++, Java,
and ObjectCOBOL in chapter 6.
In chapter 6 we also discuss many of the issues surrounding electronic commerce, so you should
find it interesting. We cover a lot of programming
tips as well as code documentation
tips in chapter 8, so I think that youll really
like it.
Chapter 9 covers user interface design
not only because its important, but because Im really
getting tired of using programs with interfaces that are hard to
use. I begin by arguing that just because you use a GUI it
isnt necessarily OO. Well see designs for both a
standard GUI interface for the bank and an OOUI
(OO user interface) for it and when you see the
difference youll be astounded. You'll also learn a lot
about prototyping and screen
design in this chapter.
As saving objects is a reasonably common thing to do, were
going to cover this topic in detail in chapter 10. Relational
technology are the reality out there, not object databases, so
for most of the chapter Ill assume youre trying to
store your objects into a relational DB. Unfortunately, this is
easier said than done. Were going to discuss issues like OO normalization, converting objects to relational records,
inheritance issues, and design issues when using a relational DB
to store objects. The chapter ends with a discussion of both object/relational and object databases,
what theyre all about and where theyre going. Bottom
line is that object databases are an important topic that must be
covered.
Chapter 11 discusses wrapping,
which is a technique for getting a few more miles out of your legacy applications. If the legacy
applications were horses we would have shot them long ago, but
unfortunately weve made a huge investment in them that
wed prefer not to lose.
Part 4 -- Object-Oriented Testing
Until now, OO testing
hasnt been well covered by the mainstream OO methodologies,
and thats a problem that we want to address. Users really
like it when their application works, so its not a bad idea
to test your application before you release it. The bad news is
that traditional testing techniques dont always work for OO
applications. The good news is that chapter 12 describes the full lifecycle object-oriented testing (FLOOT)
approach which presents a multitude of effective OO
testing techniques.
Part 5 Conclusion
This section is basically a quick wrap-up of the material
covered in the book as well as some of my thoughts regarding how
to successfully overcome the
object-oriented learning curve.
Visual Glossary
One of the strengths of Building Object Applications That
Work is that it comes with a fairly robust
glossary that includes both pictures and text
descriptions of them. Not only are you given the definition of a
term, you often also are shown the modeling notation for that
term as well.
For the most part this book is geared towards designers, programmers, and testers. Analysts will find this material useful for filling out their knowledge of OO, but probably wont find it directly applicable to their daily jobs. Project managers of OO development teams should definitely read this book to gain a better understanding of what their people are doing.
By reading Building Object Applications you will gain a thorough understanding of how the entire object-oriented development process works. Furthermore you will gain a detailed understanding of all phases of OO development in a coherent and consistent manner.
Amazon US:
Amazon UK:
Other:
1. William
Sheridan's online review.
2. Gary
Evan's online review.
3. Jacques Surveyor's review in the May 1998 issue of Software
Development Magazine:
"The title seems loquacious, but Scott
Ambler's book delivers exactly what it promises -- a robust look
into building object applications. This is no small feat given
the wide range of object-oriented development. Ambler's
willingness to depart from a UML-only viewpoint and to advocate
practical techniques like CRC modeling or data modeling provides
a bridge from classic CASE methods to object-oriented design. It
also has the strong feel of practical object-oriented application
building experience. Its common thrust is an elaboration of
theory into usable practices for developing robust
object-oriented systems."
4. Terrence Thomas has this to say about the book:
"Every now and then in life you stumble across a piece
of gold which helps in the never ending quest for knowledge. Your
book is one such piece of gold. As a recent graduate of
Youngstown State with a BS in computer science, I found myself
searching for a deeper understanding of the potential for object
oriented technology. Your book is one of the most informative
clearly written books on the subject that I have come
across."
I'm really interested in finding out about reviews posted
online, or supporting anyone writing a review for a journal or
magazine.
I actively work with clients around the world to improve their information technology (IT) practices as both a mentor/coach and trainer. A full description of what I do, and how to contact me, can be found here.
![]() |
Copyright
© 1997-2007
Scott W. Ambler Last updated: March 31, 2007 |
![]() |