Introduction to software design with Java / Martin P. Robillard.
2019
QA76.73.J38 R63 2019
Linked e-resources
Linked Resource
Online Access
Concurrent users
Unlimited
Authorized users
Authorized users
Document Delivery Supplied
Can lend chapters, not whole ebooks
Details
Title
Introduction to software design with Java / Martin P. Robillard.
ISBN
9783030240943 (electronic book)
3030240940 (electronic book)
3030240932
9783030240936
3030240940 (electronic book)
3030240932
9783030240936
Published
Cham, Switzerland : Springer, [2019]
Language
English
Description
1 online resource
Other Standard Identifiers
10.1007/978-3-030-24
Call Number
QA76.73.J38 R63 2019
Dewey Decimal Classification
005.1/17
Summary
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 books 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 gr asp of the language, such as would be taught in an introductory programming course.
Bibliography, etc. Note
Includes bibliographical references and index.
Access Note
Access limited to authorized users.
Source of Description
Description based on online resource; title from digital title page (viewed on August 23, 2019).
Available in Other Form
Print version: 9783030240936
Linked Resources
Online Access
Record Appears in
Online Resources > Ebooks
All Resources
All Resources
Table of Contents
Introduction
Encapsulation
Types and Interfaces
Object State
Unit Testing
Composition
Inheritance
Inversion of Control
Functional Design.
Encapsulation
Types and Interfaces
Object State
Unit Testing
Composition
Inheritance
Inversion of Control
Functional Design.