|
|
|
|
LEADER |
04074nam a2200469 4500 |
001 |
978-3-030-24094-3 |
003 |
DE-He213 |
005 |
20191026152405.0 |
007 |
cr nn 008mamaa |
008 |
190712s2019 gw | s |||| 0|eng d |
020 |
|
|
|a 9783030240943
|9 978-3-030-24094-3
|
024 |
7 |
|
|a 10.1007/978-3-030-24094-3
|2 doi
|
040 |
|
|
|d GrThAP
|
050 |
|
4 |
|a QA76.758
|
072 |
|
7 |
|a UMZ
|2 bicssc
|
072 |
|
7 |
|a COM051230
|2 bisacsh
|
072 |
|
7 |
|a UMZ
|2 thema
|
082 |
0 |
4 |
|a 005.1
|2 23
|
100 |
1 |
|
|a Robillard, Martin P.
|e author.
|4 aut
|4 http://id.loc.gov/vocabulary/relators/aut
|
245 |
1 |
0 |
|a Introduction to Software Design with Java
|h [electronic resource] /
|c by Martin P. Robillard.
|
250 |
|
|
|a 1st ed. 2019.
|
264 |
|
1 |
|a Cham :
|b Springer International Publishing :
|b Imprint: Springer,
|c 2019.
|
300 |
|
|
|a XII, 297 p. 100 illus.
|b online resource.
|
336 |
|
|
|a text
|b txt
|2 rdacontent
|
337 |
|
|
|a computer
|b c
|2 rdamedia
|
338 |
|
|
|a online resource
|b cr
|2 rdacarrier
|
347 |
|
|
|a text file
|b PDF
|2 rda
|
505 |
0 |
|
|a Introduction -- Encapsulation -- Types and Interfaces -- Object State -- Unit Testing -- Composition -- Inheritance -- Inversion of Control -- Functional Design.
|
520 |
|
|
|a 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.
|
650 |
|
0 |
|a Software engineering.
|
650 |
|
0 |
|a Java (Computer program language).
|
650 |
|
0 |
|a Programming languages (Electronic computers).
|
650 |
1 |
4 |
|a Software Engineering.
|0 http://scigraph.springernature.com/things/product-market-codes/I14029
|
650 |
2 |
4 |
|a Java.
|0 http://scigraph.springernature.com/things/product-market-codes/I29070
|
650 |
2 |
4 |
|a Programming Languages, Compilers, Interpreters.
|0 http://scigraph.springernature.com/things/product-market-codes/I14037
|
710 |
2 |
|
|a SpringerLink (Online service)
|
773 |
0 |
|
|t Springer eBooks
|
776 |
0 |
8 |
|i Printed edition:
|z 9783030240936
|
776 |
0 |
8 |
|i Printed edition:
|z 9783030240950
|
856 |
4 |
0 |
|u https://doi.org/10.1007/978-3-030-24094-3
|z Full Text via HEAL-Link
|
912 |
|
|
|a ZDB-2-SCS
|
950 |
|
|
|a Computer Science (Springer-11645)
|