Apago PDF Enhancer
xix
Preface
Programming is an art. Although traditional art imitates life, programming simulates life.
Every abstract concept in programming, and to a great extent in the eld of computer sci-
ence, has its roots in our daily life. For example, humans and possibly all other living forms
were multiprocessing long before the term entered into computer science lingo. erefore,
any concept in programming can in fact be illustrated through examples from our day-
to-day life. Such an approach not only enables the student to assimilate and internalize
the concept presented in a programming situation but also provides a solid foundation for
the very process of programming, namely, the simulation of the real world. Unfortunately,
textbooks currently on the market do not exploit this fact through examples or meaning-
ful discussions. us, for many students, an abstract concept remains abstract. is is
especially true in the case of object-oriented programming. e “wow moment” one gets
by seeing programming as a simulation of the real-world situation is never realized.
is book on Java programming teaches object-oriented design and programming prin-
ciples in a completely integrated and incremental fashion. is book allows the reader to
experience the world we live in as object-oriented. From the very outset the reader will
realize that everything in this world is an object. Every concept of object-oriented design
is rst illustrated through real-life analogy. Corresponding Java language constructs are
introduced in an integrated fashion to demonstrate the programming required to simulate
the real-world situation. Instead of compartmentalizing all the object-oriented concepts
into one chapter, this book takes an incremental approach.
e pedagogy of this book mirrors the classroom style the author has developed over the
years as a teacher of computer science. In particular, every programming concept is intro-
duced through simple examples followed by short programming examples. Case studies
at the end of each chapter illustrate various design issues as well as the usefulness of many
new concepts encountered in that chapter.
Java has emerged as the primary language for so ware development. From a so ware
engineering perspective, object-oriented design has established itself as the industry stan-
dard. us, more and more teaching institutions are moving toward a CS1 course that
teaches Java programming and object-oriented design principles. A common approach
followed in many textbooks on the market is to introduce object-oriented concepts from
the very beginning and ignore many traditional programming techniques completely. e
objective of this book is to present object-oriented programming and design without com-
promising the training one needs on traditional programming constructs and structures.
CRC_C6547_FM.indd xixCRC_C6547_FM.indd xix 10/16/2008 4:35:43 PM10/16/2008 4:35:43 PM
www.allitebooks.com