INTRODUCTION TO SOFTWARE DESIGN WITH JAVA
3,329.26₹ 4,161.57₹
Hurry up! Offer ends in:
- Author: MARTIN P. ROBILLARD
- ISBN: 9783030240936
- Availability: In Stock
Buy INTRODUCTION TO SOFTWARE DESIGN WITH JAVA | Technical Books, science books
This textbook provides an in-depth introduction to software
design, with a focus on object-oriented design, and using the Java programming
language. Its goal is to help readers learn software design by discovering the
experience of the design process. To this end, a narrative is used that
introduces each element of design know-how in context, and explores alternative
solutions in that context. The narrative is supported by hundreds of code
fragments and design diagrams.
The first chapter is a general introduction to
software design. The subsequent chapters cover design concepts and techniques,
which are presented as a continuous narrative anchored in specific design
problems. The design concepts and techniques covered include effective use of
types and interfaces, encapsulation, composition, inheritance, design patterns,
unit testing, and many more. A major emphasis is placed on coding and
experimentation as a necessary complement to reading the text. To support this
aspect of the learning process, a companion website with practice problems is
provided, and three sample applications that capture numerous design decisions
are included. Guidance on these sample applications is provided in a section
called “Code Exploration” at the end of each chapter. Although the Java
language is used as a means of conveying design-related ideas, the book’s main
goal is to address concepts and techniques that are applicable in a host of
technologies.
This book is intended for readers who have a
minimum of programming experience and want to move from writing small programs
and scripts to tackling the development of larger systems. This audience
naturally includes students in university-level computer science and software
engineering programs. As the prerequisites to specific computing concepts are
kept to a minimum, the content is also accessible to programmers without a
primary training in computing. In a similar vein, understanding the code
fragments requires only a minimal grasp of the language, such as would be
taught in an introductory programming course.