Download a PDF of this article
“Books are the quietest and most constant of friends; they are the most accessible and wisest of counselors, and the most patient of teachers.” Thus spoke the American academic Charles William Eliot (1834–1926), proudly surveying his vast collection of leather-bound Java tutorials, references, cookbooks, and language specifications.
Professor Eliot may not have been the first to stock a well-appointed library with software engineering titles, but certainly many of us have vast collections of programming titles. Why books? Sometimes a web search doesn’t provide the deep information that a developer requires to help master a new language feature. It’s hard to be inspired by an API’s dry reference materials, and even a fabulous magazine article may not offer sufficient context.
That’s where books—whether printed or digital—serve and delight.
To celebrate the release of Java 17, Java Magazine reached out to the book community and asked them to share their list of upcoming Java titles to be published by the end of 2021, more or less. (The following descriptions are provided by the publishers.)
Java Magazine thanks the Oracle Publishers Program for collaborating on this article and compiling the latest Java titles. This program works with participating industry publishers to support the creation of high-quality, Oracle technology–focused books.
Beginning Java 17 Fundamentals: Object-Oriented Programming in Java 17, 3rd Edition (Apress)
By Kishori Sharan and Adam L. Davis
Learn the fundamentals of the Java 17 LTS or Java Standard Edition version 17 Long Term Support release, including basic programming concepts and the object-oriented fundamentals necessary at all levels of Java development. Authors Kishori Sharan and Adam L. Davis walk you through writing your first Java program step-by-step. Armed with that practical experience, you’ll be ready to learn the core of the Java language. Beginning Java 17 Fundamentals provides over 90 diagrams and 240 complete programs to help you learn the topics faster.
While this book teaches you the basics, it also has been revised to include the latest from Java 17 including the following: value types (records), immutable objects with an efficient memory layout; local variable type inference (var); pattern matching, a mechanism for testing and deconstructing values; sealed types, a mechanism for declaring all possible subclasses of a class; multiline text values; and switch expressions.
The book continues with a series of foundation topics, including using data types, working with operators, and writing statements in Java. These basics lead onto the heart of the Java language: object-oriented programming. By learning topics such as classes, objects, interfaces, and inheritance you’ll have a good understanding of Java’s object-oriented model. The final collection of topics takes what you’ve learned and turns you into a real Java programmer.
Java 17 for Absolute Beginners: Learn the Fundamentals of Java Programming, 2nd Edition (Apress)
By Iuliana Cosmina
Write your first code in Java 17 using simple, step-by-step examples that model real-word objects and events, making learning easy. With Java 17 for Absolute Beginners, you’ll be able to pick up the concepts without fuss. It teaches Java development in language anyone can understand, giving you the best possible start. You’ll see clear code descriptions and layout so that you can get your code running as soon as possible. Author Iuliana Cosmina focuses on practical knowledge and getting you up to speed quickly―all the bits and pieces a novice needs to get started programming in Java.
First, you’ll discover what type of language Java is, what it is good for, and how it is executed. With the theory out of the way, you’ll install Java, choose an editor, and write your first simple Java program. Along the way you’ll compile and execute this program so it can run on any platform that supports Java. As part of this tutorial, you’ll see how to write high-quality code by following conventions and respecting well-known programming principles, making your projects more professional and efficient.
Java 17 for Absolute Beginners gives you all you need to start your Java programming journey. No experience necessary. After reading this book, you’ll come away with the basics to get started writing programs in Java.
Java: A Beginner’s Guide, 9th Edition (McGraw Hill)
By Herbert Schildt
Thoroughly updated for Java Platform Standard Edition 17, this hands-on resource shows, step by step, how to get started programming in Java from the very first chapter. Written by Java guru Herbert Schildt, the book starts with the basics, such as how to create, compile, and run a Java program. From there, readers will learn essential Java keywords, syntax, and commands.
Java: A Beginner’s Guide, Ninth Edition covers the basics and touches on advanced features, including multithreaded programming, generics, Lambda expressions, and Swing. Enumeration, modules, and interface methods are also clearly explained. This guide delivers the appropriate mix of theory and practical coding necessary to get you up and running developing Java applications in no time!
By Nirmal Singh and Zack Dawood
The Micronaut open source software is a JVM-based framework, designed to create microservices quickly and easily. This book will help full-stack and Java developers to build modular, high-performing, and reactive microservice-based apps using Micronaut.
You’ll start by building microservices and learning about the core components of Micronaut, such as ahead-of-time compilation, reflection-less dependency injection, and reactive baked-in HTTP clients and servers. Next, you will work on a real-time microservice application and learn how to integrate Micronaut with different kinds of relational and non-relational databases. You’ll also learn how to employ different security mechanisms to safeguard your microservices and integrate microservices using event-driven architecture in the Apache Kafka ecosystem. As you advance, you’ll get to grips with automated testing and popular testing tools.
The book will help you understand how you can easily handle microservice concerns in the Micronaut framework, such as service discovery, API documentation, distributed configuration management, fallbacks, and circuit breakers. Finally, you’ll explore the deployment and maintenance aspects of microservices and get up to speed with the Internet of Things (IoT) using Micronaut.
By the end of this book, you’ll be able to build, test, deploy, and maintain your own microservice apps using Micronaut.
Core Java, Volume 1: Fundamentals, 12th Edition (Pearson)
By Cay Horstmann
For serious programmers, Core Java, Volume I: Fundamentals, Twelfth Edition, is the definitive guide to writing robust, maintainable code. Achieve a deep and practical understanding of the language and API, and its hundreds of realistic examples reveal the most powerful and effective ways to get the job done. In this first of two volumes, Horstmann offers in-depth coverage of fundamental Java and UI programming, including objects, generics, collections, lambda expressions, Swing design, concurrency, and functional programming. If you’re an experienced programmer moving to Java SE 9, 10, 11, or 17 there’s no better source for expert insight, solutions, and code.
By Stephen Chin, Johan Vos, and James Weaver
Build enhanced visual experiences and design and deploy modern, easy-to-maintain, client applications across a variety of platforms. This book will show you how these applications can take advantage of JavaFX’s latest user interface components, 3D technology, and cloud services to create immersive visualizations and allow high-value data manipulation. The Definitive Guide to Modern Java Clients with JavaFX 17 is a professional reference for building Java applications for desktop, mobile, and embedded in the Cloud age. It offers end-to-end coverage of the latest features in JavaFX 17 and Java 17.
Among the many new or updated JavaFX features covered are the FX Robot API, for simulating user interaction; customized step repeat timing for the Spinner control; Marlin FX; the ColorPicker color palette; and the GetCenter method. After reading this book, you will be equipped to upgrade legacy client applications, develop cross-platform applications in Java, and build enhanced desktop and mobile native clients.
By Mikael Olsson
Quickly gain the insight necessary to address a multitude of Java coding challenges using this succinct reference guide, Java 17 Quick Syntax Reference, Third Edition. Short, focused code examples will help you learn and master various existing and new Java source code elements. This edition includes the following additions to Java SE and OpenJDK, through Java 17: Pattern matching for switch and instanceof, Sealed classes and interfaces, Switch expressions, Text block multiline strings, Java module system, Private methods in interfaces, and Type inference for local variables.
You won’t find any technical jargon, bloated samples, drawn out history lessons or witty stories in this book. What you will find is a language reference that is concise, to the point and highly accessible. The book is packed with useful information and is a must-have for any Java programmer.
Java: The Complete Reference, 12th Edition (McGraw Hill)
By Herbert Schildt
Fully updated for Java SE 17, Java: The Complete Reference, 12th Edition, explains how to develop, compile, debug, and run Java programs. Best-selling programming author Herbert Schildt covers the entire Java language, including its syntax, keywords, and fundamental programming principles. You’ll also find information on key portions of the Java API library, such as I/O, the Collections Framework, the stream library, and the concurrency utilities. Swing, JavaBeans, and servlets are examined, and numerous examples demonstrate Java in action. Of course, recent additions to the Java language, such as records, sealed classes, and switch expressions are discussed in detail. Best of all, the book is written in the clear, crisp, uncompromising style that has made Schildt the choice of millions worldwide.
Java SE 11 Programmer I Certification Guide: Covers Exam 1Z0-815 (Manning)
By Mala Gupta
OCP Java SE 11 Programmer I Certification Guide prepares you for the 1Z0-815 with complete and thorough coverage of the exam topics. You’ll explore important Java topics as you systematically learn what’s required to pass. Memorable analogies, fun visual aids, and sample questions make sure your knowledge sticks and is easy to recall when you are sitting for the exam. In its third edition, this book has been proven effective by thousands of now-certified Java developers.
Each chapter starts with a list of exam objectives mapped to section numbers, followed by sample questions and exercises that reinforce key concepts. Complex topics are explained through analogies, visual aids, and comic strips that you can easily remember under exam conditions. Specially designed “Twist in the Tale” exercises help you reevaluate and modify code to answer wild card exam questions you’ve not previously prepared for. You’ll also get the scoop on common exam mistakes and ways to avoid traps and pitfalls. With this book as your study guide, you’ll be ready and confident on test day.
Modernizing Enterprise Java: A Concise Cloud Native Guide for Developers (O’Reilly)
By Markus Eisele and Natale Vinto
While containers, microservices, and distributed systems dominate discussions in the tech world, the majority of applications in use today still run monolithic architectures that follow traditional development processes. This practical book helps developers examine long-established Java-based models and demonstrates how to bring these monolithic applications successfully into the future.
Relying on their years of experience modernizing applications, authors Markus Eisele and Natale Vinto walk you through the steps necessary to update your organization’s Java application. You’ll discover how to dismantle your monolithic application and move to an up-to-date software stack that works across cloud and on-premises installations.
More Java 17: An In-Depth Exploration of the Java Language and Its Features, 3rd Edition (Apress)
By Kishori Sharan and Peter Späth
Work with the essential and advanced features of the Java 17 release. This book covers features such as annotations, reflection, and generics. These topics are then complemented by details of how to use lambda expressions, allowing you to build powerful and efficient Java programs. Furthermore, added to this edition you’ll find topics on network programming, Java RMI, the process API, and custom runtime images. The authors provide a multitude of diagrams and complete programs to help you visualize and better understand the topics covered in this book.
More Java 17, Third Edition starts with a series of chapters on the essential language features provided by Java before moving on to Java module development and packaging, and improved interop with other languages. After reading this book, you’ll have the know-how of a professional Java programmer and be able to tackle most projects with confidence.
By Emily Jiang, Andrew McCright, John Alcorn, David Chan, and Alasdair Nottingham
In this cloud-native era, most applications are deployed in a cloud environment that is public, private, or a combination of both. To ensure that your application performs well in the cloud, you need to build an application that is cloud native. MicroProfile is one of the most popular frameworks for building cloud-native applications and fits well with Kubernetes. As an open standard technology, MicroProfile helps improve application portability across all of MicroProfile’s implementations.
Practical Cloud-Native Java Development with MicroProfile is a comprehensive guide that helps you explore the advanced features and use cases of a variety of Jakarta and MicroProfile specifications. You’ll start by learning how to develop a real-world stock trader application, and then move on to enhancing the application and adding day-2 operation considerations. You’ll gradually advance to packaging and deploying the application. The book demonstrates the complete process of development through to deployment and concludes by showing you how to monitor the application’s performance in the cloud. By the end of this book, you will master MicroProfile’s latest features and be able to build fast and efficient cloud-native applications.
Practical Vaadin: Developing Web Applications in Java (Apress)
By Alejandro Duarte
Implement web applications in Java using the open-source Vaadin framework version 20 and later. This easy-to-follow book covers all the key concepts and steps to become competent with modern versions of Vaadin. The book covers everything from setting up the development environment to implementing advanced features such as Server Push and database connectivity. The book helps you become proficient in the Vaadin framework, prepare for Vaadin certifications, and shows you how to apply the power of the Java programming language in developing applications for the web.
Reactive Systems in Java: Resilient, Event-Driven Architecture with Quarkus (O’Reilly)
By Clement Escoffier and Ken Finnigan
Reactive systems and event-driven architecture are becoming essential to application design—and companies are taking note. Reactive systems ensure applications are responsive, resilient, and elastic no matter what failures, latency, or other errors may be occurring, while event-driven architecture offers a flexible and composable option for distributed systems. This practical resource helps you bring these approaches together using Quarkus, a Java framework that greatly simplifies the work developers must undertake for cloud deployments. This book covers how Quarkus 2.0 reactive features allow the smooth development of reactive systems.
Clement Escoffier and Ken Finnigan show you how to take advantage of event-driven and reactive principles to build more robust distributed systems, reducing latency and increasing throughput, particularly in your microservices and serverless applications. Java developers will also get a foundation in Quarkus, enabling you to create truly Kubernetes-native applications for the cloud.
Spring Boot in Practice (Manning)
By Somnath Musib
Spring Boot in Practice covers dozens of handy Spring Boot development techniques, from basic functions to hidden features you probably didn’t even know existed. Each recipe is built around a real-world problem, complete with a full solution and thoughtful discussion.
You’ll work your way from fundamentals to advanced functionalities as you take deep dives into auto-configuration, security implementation, and even support for reactive application development. Learn how to work with Spring Boot and Kotlin, handling connections for multiple platforms, and how Spring Boot can simplify building microservices and APIs. You’re sure to keep this practical book on hand as a reference as you build your next Spring Boot apps.
Spring in Action, 6th Edition (Manning)
By Craig Walls
A new edition of the classic bestseller! Spring in Action, 6th Edition covers all of the new features of Spring 5.3 and Spring Boot 2.4 along with examples of reactive programming, Spring Security for REST Services, and bringing reactivity to your databases. You’ll also find the latest Spring best practices, including Spring Boot for application setup and configuration.
Spring in Action, 6th Edition guides you through Spring’s core features explained in Craig Walls’ famously clear style. You’ll roll up your sleeves and build a secure database-backed web app step by step. Along the way, you’ll explore reactive programming, microservices, service discovery, RESTful APIs, deployment, and expert best practices. This new edition also covers the RSocket specification for reactive networking between applications and delves deep into essential features of Spring Security. Whether you’re just discovering Spring or leveling up to Spring 5.3, this Manning classic is your ticket!
By Laurențiu Spilcă
Spring Start Here introduces you to Java development with Spring by concentrating on the core concepts you’ll use in every application you build. You’ll learn how to refactor an existing application to Spring, how to use Spring tools to make SQL database requests and REST calls, and how to secure your projects with Spring Security. There’s always more to learn, and this book will make your next steps much easier.
Spring Start Here teaches Java developers how to build applications using Spring framework. Informative graphics, relevant examples, and author Laurențiu Spilcă’s clear and lively writing make it easy to pick up the skills you need. You’ll discover how to plan, write, and test applications. And by concentrating on the most important features, this no-nonsense book gives you a firm foundation for exploring Spring’s rich ecosystem.
By A B Vijay Kumar
GraalVM is a universal virtual machine that allows programmers to compile and run applications written in both JVM and non-JVM languages. It improves the performance and efficiency of applications, making it an ideal companion for cloud-native or microservices-based applications.
This book is a hands-on guide, with step-by-step instructions on how to work with GraalVM. Starting with a quick introduction to the GraalVM architecture and how things work under the hood, you’ll discover the performance benefits of running your Java applications on GraalVM. You’ll then learn how to create native images and understand how AOT (ahead-of-time) can improve application performance significantly. The book covers examples of building polyglot applications that will help you explore the interoperability between languages running on the same VM. You’ll also see how you can use the Truffle framework to implement any language of your choice to run optimally on GraalVM.
By the end of this book, you’ll not only have learned how GraalVM is beneficial in cloud-native and microservices development but also how to leverage its capabilities to create high-performing polyglot applications.
This book is for JVM developers looking to optimize their application’s performance. You’ll also find this book useful if you’re a JVM developer looking to explore options to develop polyglot applications using tools from the Python, R, Ruby, or Node.js ecosystem. A solid understanding of software development concepts and prior experience working with programming languages is necessary to get started.
Alan Zeichick is editor in chief of Java Magazine and editor at large of Oracle’s Content Central group. A former mainframe software developer and technology analyst, Alan has previously been the editor of AI Expert, Network Magazine, Software Development Times, Eclipse Review, and Software Test & Performance. Follow him on Twitter @zeichick.
Previous Post
Next Post