<p><span>This introductory textbook on Java programming is different from others by its emphasis on test-driven development. Writing tests before designing the implementation is incredibly important for debugging purposes and understanding the desired outcome. While testing is often an afterthought
Learning Java: A Test-Driven Approach
β Scribed by Joshua Crotts
- Publisher
- Springer
- Year
- 2024
- Tongue
- English
- Leaves
- 474
- Edition
- 1
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
This introductory textbook on Java programming is different from others by its emphasis on test-driven development. Writing tests before designing the implementation is incredibly important for debugging purposes and understanding the desired outcome. While testing is often an afterthought in other Java textbooks (being placed at the very end or not at all, which is in some ways cruel to withhold such capabilities from the student), this text takes a different, perhaps "functionalβ approach to learning Java: it introduces testing and methods from the start, followed by conditionals, recursion, and loops (on purpose in this very order). It then dives deep into data structures and the Java Collections API, including streams and generics. After this, it pivots to object-oriented programming, exceptions and I/O, searching and sorting, algorithm analysis, and eventually advanced Java/programming topics.
This ordering of topics is well adjusted to prepare students to subsequent upper-level courses in data structure or algorithm design and implementation. The approach is illuminated by numerous code snippets and the studentsβ understanding is consolidated by about 250 exercises covering all topics covered in the book. With this book, readers will not only learn how to program Java, but also acquire a necessary precondition for successfully writing and testing commercial software.
β¦ Table of Contents
Preface
Acknowledgements
Contents
Part I Java Programming and Data Structures
1 Testing and Java Basics
1.1 A First Glimpse at Java
1.2 Strings
1.3 Standard I/O
1.4 Randomness
1.5 Exercises
2 Conditionals, Recursion, and Loops
2.1 Conditionals
2.2 Recursion
2.3 Loops
2.4Exercises
3 Arrays, Collections, and Generics
3.1 Arrays
3.2 Collections
3.3 Iterators
3.4 Streams
3.5 Type Parameters
3.6 Tree-Based Data Structures
3.7 Exercises
Part II Objects, Classes, Exceptions, and I/O
4 Object-Oriented Programming
4.1 Classes
4.2 Object Mutation and Aliasing
4.3 Interfaces
4.4 Inheritance
4.5 Abstract Classes
4.6 Exercises
5 Exceptions and I/O
5.1 Exceptions
5.2 File I/O
5.3 Modern I/O Classes & Methods
5.4 Exercises
Part III Searching, Sorting, and Algorithms
6 Searching and Sorting
6.1 Searching
6.2 Sorting
7 Algorithm Analysis
7.1 Analyzing Algorithms
Part IV Modern Java
8 Modern Java and Advanced Topics
8.1 Verbosity
8.2 Pattern Matching
8.3 Reflection
8.4 Concurrent Programming
8.5 Design Patterns
8.6 API Connectivity
A JUnit Testing
A.1 JUnit
B Binary Search Tree Library
References
Index
β¦ Subjects
Java Programming; Test-Driven Development; Software Testing; Programming Languages; Computer Science; Debugging
π SIMILAR VOLUMES
<div><div style="font-family: 'MS Shell Dlg 2', sans-serif; font-size: 12px;"><br></div><div><div><font face="MS Shell Dlg 2, sans-serif"><span style="font-size: 12px;">Learn how to apply test-driven development (TDD) to machine-learning algorithmsand catch mistakes that could sink your analysis. In
Learn how to apply test-driven development (TDD) to machine-learning algorithms--and catch mistakes that could sink your analysis. In this practical guide, author Matthew Kirk takes you through the principles of TDD and machine learning, and shows you how to apply TDD to several machine-learning alg
Learn how to apply test-driven development (TDD) to machine-learning algorithms--and catch mistakes that could sink your analysis. In this practical guide, author Matthew Kirk takes you through the principles of TDD and machine learning, and shows you how to apply TDD to several machine-learning alg
Learn how to apply test-driven development (TDD) to machine-learning algorithms--and catch mistakes that could sink your analysis. In this practical guide, author Matthew Kirk takes you through the principles of TDD and machine learning, and shows you how to apply TDD to several machine-learning alg
Learn how to apply test-driven development (TDD) to machine-learning algorithms--and catch mistakes that could sink your analysis. In this practical guide, author Matthew Kirk takes you through the principles of TDD and machine learning, and shows you how to apply TDD to several machine-learning alg