0%

Book Description

Master Java 5.0 and TDD Together: Build More Robust, Professional Software

Master Java 5.0, object-oriented design, and Test-Driven Development (TDD) by learning them together. Agile Java weaves all three into a single coherent approach to building professional, robust software systems. Jeff Langr shows exactly how Java and TDD integrate throughout the entire development lifecycle, helping you leverage today's fastest, most efficient development techniques from the very outset.

Langr writes for every programmer, even those with little or no experience with Java, object-oriented development, or agile methods. He shows how to translate oral requirements into practical tests, and then how to use those tests to create reliable, high-performance Java code that solves real problems. Agile Java doesn't just teach the core features of the Java language: it presents coded test examples for each of them. This TDD-centered approach doesn't just lead to better code: it provides powerful feedback that will help you learn Java far more rapidly. The use of TDD as a learning mechanism is a landmark departure from conventional teaching techniques.

  • Presents an expert overview of TDD and agile programming techniques from the Java developer's perspective

  • Brings together practical best practices for Java, TDD, and OO design

  • Walks through setting up Java 5.0 and writing your first program

  • Covers all the basics, including strings, packages, and more

  • Simplifies object-oriented concepts, including classes, interfaces, polymorphism, and inheritance

  • Contains detailed chapters on exceptions and logging, math, I/O, reflection, multithreading, and Swing

  • Offers seamlessly-integrated explanations of Java 5.0's key innovations, from generics to annotations

  • Shows how TDD impacts system design, and vice versa

  • Complements any agile or traditional methodology, including Extreme Programming (XP)

© Copyright Pearson Education. All rights reserved.

Table of Contents

  1. Title Page
  2. Copyright Page
  3. Contents
  4. Praise for Agile Java
  5. Robert C. Martin Series
  6. About the Author
  7. Foreword
  8. Acknowledgments
  9. Introduction
  10. An Agile Overview
  11. Setting Up
  12. Lesson 1. Getting Started
  13. Lesson 2. Java Basics
  14. Lesson 3. Strings and Packages
  15. Lesson 4. Class Methods and Fields
  16. Lesson 5. Interfaces and Polymorphism
  17. Lesson 6. Inheritance
  18. Lesson 7. Legacy Elements
  19. Lesson 8. Exceptions and Logging
  20. Lesson 9. Maps and Equality
  21. Lesson 10. Mathematics
  22. Lesson 11. IO
  23. Lesson 12. Reflection and Other Advanced Topics
  24. Lesson 13. Multithreading
  25. Lesson 14. Generics
  26. Lesson 15. Assertions and Annotations
  27. Additional Lesson I: Swing, Part 1
  28. Additional Lesson II: Swing, Part 2
  29. Additional Lesson III: Java Miscellany
  30. Appendix A. An Agile Java Glossary
  31. Appendix B. Java Operator Precedence Rules
  32. Appendix C. Getting Started with IDEA
  33. Agile Java References
  34. Index
18.118.23.147