Authors:
- Helps students to learn software design by discovering the experience of the design process, with a focus on object-oriented design, and by using the Java programming language
- Covers all relevant design topics, including types and interfaces, encapsulation, inheritance, patterns, composition, unit testing, and many more
- Complemented by three sample applications that capture numerous design decisions, as well as a companion website with additional practice problems
Buy it now
Buying options
Tax calculation will be finalised at checkout
Other ways to access
This is a preview of subscription content, log in via an institution to check for access.
Table of contents (9 chapters)
-
Front Matter
-
Back Matter
About this book
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.
Authors and Affiliations
-
School of Computer Science, McGill University, Montreal, Canada
Martin P. Robillard
About the author
Bibliographic Information
Book Title: Introduction to Software Design with Java
Authors: Martin P. Robillard
DOI: https://doi.org/10.1007/978-3-030-24094-3
Publisher: Springer Cham
eBook Packages: Computer Science, Computer Science (R0)
Copyright Information: Springer Nature Switzerland AG 2019
eBook ISBN: 978-3-030-24094-3Published: 12 July 2019
Edition Number: 1
Number of Pages: XII, 297
Number of Illustrations: 100 b/w illustrations
Topics: Software Engineering, Java, Programming Languages, Compilers, Interpreters