Coding and testing are often considered separate areas of expertise. In this comprehensive guide, author and Java expert Scott Oaks takes the approach that anyone who works with Java should be equally…
Shelve Java Performance: The Definitive Guide: Getting the Most Out of Your Code
Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previo…
Shelve Design Patterns: Elements of Reusable Object-Oriented Software
Distributed systems have become more fine-grained in the past 10 years, shifting from code-heavy monolithic applications to smaller, self-contained microservices. But developing these systems brings i…
Shelve Building Microservices: Designing Fine-Grained Systems
Since this Jolt-award winning classic was last updated in 2008 (shortly after Java 6 was released), Java has changed dramatically. The principal enhancement in Java 8 was the addition of functional pr…
"I was fortunate indeed to have worked with a fantastic team on the design and implementation of the concurrency features added to the Java platform in Java 5.0 and Java 6. Now this same team provides…
Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, w…
In this electrifying new addition to Jo Nesbø’s internationally acclaimed series, Harry Hole must confront the darkest demons in his city—and in himself.
More than 300,000 developers have benefited from past editions of UML Distilled . This third edition is the best resource for quick, no-nonsense insights into understanding and using UML 2.0 and prior…
Shelve UML Distilled: A Brief Guide to the Standard Object Modeling Language
Data engineering has grown rapidly in the past decade, leaving many software engineers, data scientists, and analysts looking for a comprehensive view of this practice. With this practical book, you'l…
Shelve Fundamentals of Data Engineering: Plan and Build Robust Data Systems
Building upon the success of best-sellers The Clean Coder and Clean Code, legendary software craftsman Robert C. "Uncle Bob" Martin shows how to bring greater professionalism and discipline to applica…
Foreword by Kent Beck "The authors of this book have led a revolution in the craft of programming by controlling the environment in which software grows.” --Ward Cunningham “At last, a book suffused w…
Shelve Growing Object-Oriented Software, Guided by Tests
Get more out of your legacy systems, more performance, functionality, reliability, and manageability.Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do yo…
As the application of object technology—particularly the Java programming language—has become commonplace, a new problem has emerged to confront the software development community. Significant numbers…
Shelve Refactoring: Improving the Design of Existing Code
"Eric Evans has written a fantastic book on how you can make the design of your software match your mental model of the problem domain you are addressing. "His book is very compatible with XP. It is n…
Shelve Domain-Driven Design: Tackling Complexity in the Heart of Software
Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers …
Shelve The Mythical Man-Month: Essays on Software Engineering
Unit Testing: Principles, Patterns and Practices shows you how to refine your existing unit tests by implementing modern best practices. You’ll learn to spot which tests are performing, which need ref…
Shelve Unit Testing: Principles, Practices, and Patterns
If you’re a programmer new to regular expressions, this easy-to-follow guide is a great place to start. You’ll learn the fundamentals step-by-step with the help of numerous examples, discovering first…
Quite simply, test-driven development is meant to eliminate fear in application development. While some fear is healthy (often viewed as a conscience that tells programmers to "be careful!"), the auth…
Kotlin coroutines revolutionized JVM development, especially on Android and the backend. They let us easily make efficient and reliable multithreading. Its cutting-edge design and features are suited …
Shelve Kotlin Coroutines: Deep Dive (Kotlin for Developers Book 3)