- Table View
- List View
Java: Boost your application’s performance with the new features of Java 9
by Mayur RamgirOptimize the powerful techniques of Java 9 to boost your application's performanceKey Features Tackle all kinds of performance-related issues and streamline your development Dive into the new features of Java 9 Implement highly efficient and reliable codes with the help of new APIs of Java Embedded with assessments that will help you revise the concepts you have learned in this bookBook DescriptionJava 9 which is one of the most popular application development languages. The latest released version Java 9 comes with a host of new features and new APIs with lots of ready to use components to build efficient and scalable applications. Streams, parallel and asynchronous processing, multithreading, JSON support, reactive programming, and microservices comprise the hallmark of modern programming and are now fully integrated into the JDK. This book focuses on providing quick, practical solutions to enhance your application's performance. You will explore the new features, APIs, and various tools added in Java 9 that help to speed up the development process. You will learn about jshell, Ahead-of-Time (AOT) compilation, and the basic threads related topics including sizing and synchronization. You will also explore various strategies for building microservices including container-less, self-contained, and in-container. This book is ideal for developers who would like to build reliable and high-performance applications with Java. This book is embedded with useful assessments that will help you revise the concepts you have learned in this book.What you will learn Familiarize with modular development and its impact on performance Learn various string-related performance improvements, including compact string and modify string concatenation Explore various underlying compiler improvements, such as tiered attribution and Ahead-of-Time (AOT) compilation Learn security manager improvements Understand enhancements in graphics rasterizers Use of command-line tools to speed up application development Learn how to implement multithreading and reactive programming Build microservices in Java 9 Implement APIs to improve application codeWho this book is forThis book is targeted at developers who would like to build reliable and high-performance applications with Java.
Java: Data Science Made Easy
by Richard M. Reese Jennifer L. Reese Alexey GrigorevData collection, processing, analysis, and more About This Book • Your entry ticket to the world of data science with the stability and power of Java • Explore, analyse, and visualize your data effectively using easy-to-follow examples • A highly practical course covering a broad set of topics - from the basics of Machine Learning to Deep Learning and Big Data frameworks. Who This Book Is For This course is meant for Java developers who are comfortable developing applications in Java, and now want to enter the world of data science or wish to build intelligent applications. Aspiring data scientists with some understanding of the Java programming language will also find this book to be very helpful. If you are willing to build efficient data science applications and bring them in the enterprise environment without changing your existing Java stack, this book is for you! What You Will Learn • Understand the key concepts of data science • Explore the data science ecosystem available in Java • Work with the Java APIs and techniques used to perform efficient data analysis • Find out how to approach different machine learning problems with Java • Process unstructured information such as natural language text or images, and create your own searc • Learn how to build deep neural networks with DeepLearning4j • Build data science applications that scale and process large amounts of data • Deploy data science models to production and evaluate their performance In Detail Data science is concerned with extracting knowledge and insights from a wide variety of data sources to analyse patterns or predict future behaviour. It draws from a wide array of disciplines including statistics, computer science, mathematics, machine learning, and data mining. In this course, we cover the basic as well as advanced data science concepts and how they are implemented using the popular Java tools and libraries.The course starts with an introduction of data science, followed by the basic data science tasks of data collection, data cleaning, data analysis, and data visualization. This is followed by a discussion of statistical techniques and more advanced topics including machine learning, neural networks, and deep learning. You will examine the major categories of data analysis including text, visual, and audio data, followed by a discussion of resources that support parallel implementation. Throughout this course, the chapters will illustrate a challenging data science problem, and then go on to present a comprehensive, Java-based solution to tackle that problem. You will cover a wide range of topics – from classification and regression, to dimensionality reduction and clustering, deep learning and working with Big Data. Finally, you will see the different ways to deploy the model and evaluate it in production settings. By the end of this course, you will be up and running with various facets of data science using Java, in no time at all. This course contains premium content from two of our recently published popular titles: • Java for Data Science • Mastering Java for Data Science Style and approach This course follows a tutorial approach, providing examples of each of the concepts covered. With a step-by-step instructional style, this book covers various facets of data science and will get you up and running quickly.
Java: An Introduction to Problem Solving and Programming (Seventh Edition)
by Walter SavitchAn introduction to programming using the Java computer programming language.
Java: Unearthing the Excellence in Java
by Jim WaldoWhat if you could condense Java down to its very best features and build better applications with that simpler version? In this book, veteran Sun Labs engineer Jim Waldo reveals which parts of Java are most useful, and why those features make Java among the best programming languages available.Every language eventually builds up crud, Java included. The core language has become increasingly large and complex, and the libraries associated with it have grown even more. Learn how to take advantage of Java's best features by working with an example application throughout the book. You may not like some of the features Jim Waldo considers good, but they'll actually help you write better code.Learn how the type system and packages help you build large-scale softwareUse exceptions to make code more reliable and easier to maintainManage memory automatically with garbage collectionDiscover how the JVM provides portability, security, and nearly bug-free codeUse Javadoc to embed documentation within the codeTake advantage of reusable data structures in the collections libraryUse Java RMI to move code and data in a distributed networkLearn how Java concurrency constructs let you exploit multicore processors
Java: Der Sprachkurs für Einsteiger und Individualisten (Für Dummies Ser.)
by Arnold V. WillemerJava programmieren lernen auf die etwas andere Art: Wenn Sie sich eine verständliche Einführung wünschen, liegen Sie mit diesem Buch genau richtig, es kann aber noch viel mehr! Witzige Beispiele, knifflige Aufgaben und unzählige schräge Anekdoten von Programmier-Original Arnold Willemer sorgen dafür, dass Sie gar nicht anders können, als Java zu lernen. Von der ersten Schleife über die Datenbank-Entwicklung bis zu Ihrer eigenen Android-App werden Sie alles lernen, was Sie brauchen - und haben auch noch Spaß dabei!
Java 11 Cookbook: A definitive guide to learning the key concepts of modern application development, 2nd Edition
by Mohamed Sanaulla Nick SamoylovSolutions for modular, functional, reactive, GUI, network, and multithreaded programmingKey FeaturesExplore the latest features of Java 11 to implement efficient and reliable codeDevelop memory-efficient applications, understanding new garbage collection in Java 11Create restful webservices and microservices with Spring boot 2 and DockerBook DescriptionFor more than three decades, Java has been on the forefront of developing robust software that has helped versatile businesses meet their requirements. Being one of the most widely used programming languages in history, it’s imperative for Java developers to discover effective ways of using it in order to take full advantage of the power of the latest Java features. Java 11 Cookbook offers a range of software development solutions with simple and straightforward Java 11 code examples to help you build a modern software system.Starting with the installation of Java, each recipe addresses various problem by explaining the solution and offering insights into how it works. You’ll explore the new features added to Java 11 that will make your application modular, secure, and fast. The book contains recipes on functional programming, GUI programming, concurrent programming, and database programming in Java. You’ll also be taken through the new features introduced in JDK 18.3 and 18.9.By the end of this book, you’ll be equipped with the skills required to write robust, scalable, and optimal Java code effectively.What you will learnSet up JDK and understand what's new in the JDK 11 installationImplement object-oriented designs using classes and interfacesManage operating system processesCreate a modular application with clear dependenciesBuild graphical user interfaces using JavaFXUse the new HTTP Client APIExplore the new diagnostic features in Java 11Discover how to use the new JShell REPL toolWho this book is forThe book is for intermediate-to-advanced Java programmers who want to make their applications fast, secure, and scalable.
Java 11 Quick Start: Learn about Project Amber and the latest developments in the Java language and platform
by Mala GuptaExecutives and Solutions Architects responsible for technology selection or Java migration decisions. Computer science grads curious to learn about the latest and upcoming Java features. Java developers who are using Java 8 or older and now migrating their solutions to the new Java release.
Java 13 Revealed: For Early Adoption and Migration
by Kishori SharanExplore the new Java programming language features and APIs introduced in Java 10 through Java 13. Java 13 Revealed is for experienced Java programmers looking to migrate to Java 13. Author Kishori Sharan begins by covering how to use local variable type inference to improve readability of your code and time-based release versioning of the Java platform to understand the Java release strategy. This book provides extensive coverage of the new HTTP Client APIs, which were introduced in Java 9 as a preview and was made a standard feature in Java 11. New Java features such as launching a single-file source code program and new switch syntax are discussed in detail. What You Will Learn Use local variable type inference to declare local variables using the var restricted type name introduced in Java 10 Take advantage of application class data sharing among JVMs for faster application startup Create HTTP requests, responses, and web sockets with the new HTTP Client APIs Run a single-file Java source code program using the java command without compiling it Apply the new switch statement and expressions to write compact and less error-prone code Work with text blocks in Java code About new APIs, deprecated APIs, and deprecated tools Who This Book Is For Java developers who want to update their Java skills from Java 9 to Java 13.
Java 17 for Absolute Beginners: Learn the Fundamentals of Java Programming
by Iuliana CosminaWrite 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 such as IntelliJ IDEA, 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. What You Will Learn Get started with Java 17 from scratch Use data types, operators, and the stream API Install and use the IntelliJ IDEA and the Gradle build tool Exchange data using the new JSON APIs Play with images using multi-resolution APIs Implement the publish-subscribe architecture Who This Book Is For Those who are new to programming and who want to start with Java.
Java 17 Quick Syntax Reference: A Pocket Guide to the Java SE Language, APIs, and Library
by Mikael OlssonQuickly 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.What You Will LearnRun a Java file with a single commandLearn what a switch expression is and how to use itUse pattern matchingCode with Java modulesCreate text blocks to handle multiline stringsLearn what sealed classes are and how to use these and moreWho This Book Is ForThose with prior experience with Java who want a quick and handy reference.
Java 17 Recipes: A Problem-Solution Approach
by Josh Juneau Luciano ManelliQuickly find solutions to dozens of common programming problems encountered while building Java applications, with recipes presented in the popular problem-solution format. Look up the programming problem that you want to resolve. Read the solution. Apply the solution directly in your own code. Problem solved!Java 17 Recipes is updated to reflect changes in specification and implementation since the Java 9 edition of this book. Java 17 is the next long-term support release (LTS) of the core Java Standard Edition (SE) version 17 which also includes some of the features from previous short term support (STS) releases of Java 16 and previous versions. This new edition covers of some of the newest features, APIs, and more such as pattern matching for switch, Restore Always-Strict-Floating-Point-Semantics, enhanced pseudo-random number generators, the vector API, sealed classes, and enhancements in the use of String. Source code for all recipes is available in a dedicated GitHub repository. This must-have reference belongs in your library.What You Will Learn Look up solutions to everyday problems involving Java SE 17 LTS and other recent releasesDevelop Java SE applications using the latest in Java SE technologyIncorporate Java major features introduced in versions 17, 16, and 15 into your code Who This Book Is For Programmers and developers with some prior Java experience.
Java 2 Database Programming for Dummies
by Jim KeoghJava 2 Database Programming For Dummies shows you how to design, develop, and interact with a database using the Java programming language. This is the perfect book for those who know the basics of Java programming but have little or no experience creating and accessing a database in Java. The companion CD contains the source code for all the code fragments and examples in the book plus powerful tools, applets, drivers, and utilities.
Java 23 for Absolute Beginners: Learn the Fundamentals of Java Programming
by Iuliana CosminaWrite your first code in Java 23 using simple, step-by-step examples that model real-word objects and events, making learning easy. With this book you will be able to pick up core programming concepts without fuss and write efficient Java code in no time. Clear code descriptions and layout ensure you 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. In this edition, you will discover how Java has changed since version 17, and how to design and write code using the most recently introduced Java features such as new collection methods, virtual threads, pattern and record matching in switch expressions, structured concurrency tasks, unnamed classes and instance methods, and many more. This book is a complete Java guide, covering the following topics: setting up a development environment, programming concepts and well-known programming principles, writing Java code following industry-specific design patterns and coding conventions, executing it, debugging, testing, documenting it and even using specialized tools such as IntelliJ IDEA for writing Java code, Maven for building, JUnit Jupiter for testing, and in-memory and Docker-hosted databases or data storage. After reading this book, you’ll have all the necessary skills and knowledge to pass an interview for a starting Java development position. What You Will Learn Set up a Java development environment Use the Java language to write high-quality code Understand fundamental programming concepts and algorithms Use virtual threads, records, and other Java renown features Debug, test, and document Java code Improve performance by customizing the Garbage Collector Who This Book Is For Those who are new to programming and want to learn Java and use it to build efficient solutions
Java 2D Graphics
by Jonathan KnudsenJava 2D Graphics describes the 2D API from top to bottom, demonstrating how to set line styles and pattern fills as well as more advanced techniques of image processing and font handling. You'll see how to create and manipulate the three types of graphics objects: shapes, text, and images. Other topics include image data storage, color management, font glyphs, and printing.
Java 7 Concurrency Cookbook
by Javier Fernandez"Java 7 Concurrency Cookbook" is a practical Cookbook packed with real-world solutions. Intermediate-advanced level Java developers will learn from task-based recipes to use Java's concurrent API to program thread safe solutions.If you are a Java developer who wants to take your knowledge of concurrent programming and multithreading further, as well as discover the new concurrency features of Java 7, then "Java 7 Concurrency Cookbook" is for you.
Java 7 JAX-WS Web Services
by Deepak VohraThis book takes a practical approach for building JAX WS web services with Java 7. Plenty of sample code and screenshots are used to help you apply these concepts in a real-world scenario. This book is targeted at developers who want to create web services with Java 7. If you use NetBeans-Glassfish for Java EE development you would be interested in how the new wsimport clientjar option may be leveraged to simplify web service development.
Java 7 New Features Cookbook
by Richard M. Reese Jennifer L. ReeseEach recipe comprises step-by-step instructions followed by an analysis of what was done in each task and other useful information. The book is designed so that you can read it chapter by chapter, or look at the list of recipes and refer to them in no particular order. Each example comes with its expected output to make your learning even easier. This book is designed to bring those who are familiar with Java up-to-speed on the new features found in Java 7.
Java 7 Pocket Guide: Instant Help for Java Programmers
by Robert Liguori Patricia LiguoriWhen you need quick answers for developing or debugging Java programs, this pocket guide provides a handy reference to the standard features of the Java programming language and its platform. You’ll find helpful programming examples, tables, figures, and lists, as well as supplemental information about topics including the Java Scripting API, third-party tools, and the basics of the Unified Modeling Language (UML).Updated for new features through Java SE 7, this little book is an ideal companion, whether you’re in the office, in the lab, or on the road.Quickly find Java language details, such as naming conventions, fundamental types, and object-oriented programming elementsGet details on the Java SE 7 platform, including development basics, memory management, concurrency, and genericsBrowse through basic information on NIO 2.0, the G1 Garbage Collector, and Project Coin (JSR-334) featuresGet supplemental references to development, CM, and test tools; libraries; IDEs; and Java-related scripting languagesFind information to help you prepare for the Oracle Certified Associate Java SE 7 Programmer I exam
Java 8 Lambdas: Pragmatic Functional Programming
by Richard WarburtonIf you’re a developer with core Java SE skills, this hands-on book takes you through the language changes in Java 8 triggered by the addition of lambda expressions. You’ll learn through code examples, exercises, and fluid explanations how these anonymous functions will help you write simple, clean, library-level code that solves business problems.Lambda expressions are a fairly simple change to Java, and the first part of the book shows you how to use them properly. Later chapters show you how lambda functions help you improve performance with parallelism, write simpler concurrent code, and model your domain more accurately, including building better DSLs.Use exercises in each chapter to help you master lambda expressions in Java 8 quicklyExplore streams, advanced collections, and other Java 8 library improvementsLeverage multicore CPUs and improve performance with data parallelismUse techniques to “lambdify” your existing codebase or library codeLearn practical solutions for lambda expression unit testing and debuggingImplement SOLID principles of object-oriented programming with lambdasWrite concurrent applications that efficiently perform message passing and non-blocking I/O
Java 8. Leksykon kieszonkowy
by Robert Liguori Patricia Liguori??Java jest dzi? j?zykiem, który programi?ci wybieraj? najcz??ciej, gdy maj? przed sob? skomplikowany projekt, wymagaj?cy najwy?szej wydajno?ci, jako?ci, bezpiecze?stwa oraz integracji z innymi systemami. Rozwijany od blisko dwudziestolecia, j?zyk ten doczeka? si? wersji oznaczonej numerem 8. Ta edycja zosta?a wzbogacona o wiele nowo?ci, m.in. o d?ugo oczekiwane wyra?enia lambda. Je?eli szukasz por?cznej ksi??ki, do której mo?esz si?gn?? w przypadku w?tpliwo?ci, to trafi?e? na doskona?? pozycj?!Ta publikacja nale?y do popularnej serii „Leksykon kieszonkowy” i mo?esz mie? j? zawsze przy sobie. W ?rodku znajdziesz konwencje nazw oraz podstawowe elementy j?zyka. W kolejnych rozdzia?ach zdob?dziesz wiedz? na temat typów prostych oraz programowania zorientowanego obiektowo. Ponadto zawarto tu przyst?pne omówienie wyra?e? lambda, wspó?bie?no?ci oraz zasad dost?pu do plików i sieci. Java posiada rozbudowany mechanizm obs?ugi sytuacji wyj?tkowych, który równie? zosta? omówiony w tym podr?czniku. Ksi??ka ta jest obowi?zkow? pozycj? na pó?ce ka?dego programisty j?zyka Javy — je?li chce on mie? zawsze pod r?k? wiarygodne ?ród?o informacji na temat tego j?zyka.Dzi?ki tej ksi??ce:- poznasz elementy i sk?adni? j?zyka Java- zrozumiesz zasad? dzia?ania wyra?e? lambda- wykorzystasz nowe metody dost?pu do plików- zaznajomisz si? z nowo?ciami w Javie 8- b?dziesz mie? zawsze pod r?k? solidne ?ród?o wiedzyTwój przewodnik po j?zyku Java!
Java 9: Master advanced Java features and implement them to build amazing projects
by Dr Edward Lavieri Peter Verhas Jason LeeMastering advanced features of Java and implement them to build amazing projectsKey Features Take advantage of Java's new modularity features to write real-world applications that solve a variety of problems Explore the major concepts introduced with Java 9, including modular programming, HTTP 2.0, API changes, and more Get to grips with tools, techniques and best practices to enhance application developmentBook DescriptionJava 9 and its new features add to the richness of the language; Java is one of the languages most used by developers to build robust software applications. Java 9 comes with a special emphasis on modularity with its integration with Jigsaw. This course is your one-stop guide to mastering the language.You'll be provided with an overview and explanation of the new features introduced in Java 9 and the importance of the new APIs and enhancements. Some new features of Java 9 are ground-breaking; if you are an experienced programmer, you will be able to make your enterprise applications leaner by learning these new features. You'll be provided with practical guidance in applying your newly acquired knowledge of Java 9 and further information on future developments of the Java platform. This course will improve your productivity, making your applications faster. Next, you'll go on to implement everything you've learned by building 10 cool projects. You will learn to build an email filter that separates spam messages from all your inboxes, a social media aggregator app that will help you efficiently track various feeds, and a microservice for a client/server note application, to name just a few.By the end of this course, you will be well acquainted with Java 9 features and able to build your own applications and projects.This Learning Path contains the best content from the following two recently published Packt products:•Mastering Java 9•Java 9 Programming BlueprintsWhat you will learn Package Java applications as modules using the Java Platform Module System Implement process management in Java using the all-new process handling API Integrate your applications with third-party services in the cloud Interact with mail servers, using JavaMail to build an application that filters spam messages Use JavaFX to build rich GUI-based applications, which are an essential element of application development Leverage the possibilities provided by the newly introduced Java shell Test your application's effectiveness with the JVM harness See how Java 9 provides support for the HTTP 2.0 standardWho this book is forThis learning path is for Java developers who are looking to move a level up and learn how to build robust applications in the latest version of Java.
Java 9 Concurrency Cookbook - Second Edition
by Javier Fernandez GonzalezMaster the art of fast, effective Java development with the power of concurrent and parallel programming About This Book • Get detailed coverage of important recipes on multi-threading and parallel programming • This book takes a close look at the Java 9 APIs and their impact on concurrency • See practical examples on thread safety, high-performance classes, safe sharing, and a whole lot more Who This Book Is For The book is for Java developers and programmers at an intermediate to advanced level. It will be especially useful for developers who want to take advantage of task-based recipes using Java 9's concurrent API to program thread-safe solutions. What You Will Learn • Find out to manage the basic components of the Java Concurrency API • Use synchronization mechanisms to avoid data race conditions and other problems of concurrent applications • Separate the thread management from the rest of the application with the Executor framework • Solve problems using a parallelized version of the divide and conquer paradigm with the Fork / Join framework • Process massive data sets in an optimized way using streams and reactive streams • See which data structures we can use in concurrent applications and how to use them • Practice efficient techniques to test concurrent applications • Get to know tips and tricks to design concurrent applications In Detail Writing concurrent and parallel programming applications is an integral skill for any Java programmer. Java 9 comes with a host of fantastic features, including significant performance improvements and new APIs. This book will take you through all the new APIs, showing you how to build parallel and multi-threaded applications. The book covers all the elements of the Java Concurrency API, with essential recipes that will help you take advantage of the exciting new capabilities. You will learn how to use parallel and reactive streams to process massive data sets. Next, you will move on to create streams and use all their intermediate and terminal operations to process big collections of data in a parallel and functional way. Further, you'll discover a whole range of recipes for almost everything, such as thread management, synchronization, executors, parallel and reactive streams, and many more. At the end of the book, you will learn how to obtain information about the status of some of the most useful components of the Java Concurrency API and how to test concurrent applications using different tools. Style and approach This recipe-based book will allow you to explore the exciting capabilities of concurrency in Java. After reading this book, you will be able to comfortably build parallel applications in Java 9.
Java 9 Cookbook
by Mohamed Sanaulla Nick SamoylovA definitive guide to learning the key concepts of modern application development in Java About This Book • Learn the latest features of Java 9 • Extend your Java knowledge and take your application to new levels by making it fast, secure, and scalable • Delve into the intricacies of Modular programming in Java 9 Who This Book Is For The book is for intermediate to advanced Java programmers who want to make their applications fast, secure, and scalable. What You Will Learn • Set up JDK and know the differences in the JDK 9 installation • Implement OO designs using classes and interfaces • Manage operating system processes • Understand the new modular JDK and modular programming • Create a modular application with clear dependencies • Build graphical user interfaces using JavaFX • Use the new HTTP Client API • Learn about the new diagnostic features in Java 9 • See how to use the new jShell REPL tool • Execute ES6-compliant JavaScript code from your Java applications In Detail Java is an object-oriented programming language. It is one of the most widely accepted languages because of its design and programming features, particularly in its promise that you can write a program once and run it anywhere. This cookbook offers a range of software development examples in simple and straightforward Java 9 code, providing step-by-step resources and time-saving methods to help you solve data problems efficiently. Starting with the installation of Java, each recipe addresses a specific problem, with a discussion that explains the solution and offers insight into how it works. We cover major concepts such as Project Jigsaw and various tools that will enable you to modularize your applications. You will learn new features in the form of recipes that will make your applications modular, secure, and fast. Style and approach Each recipe in this book contains a series of complete instructions to perform a core task, plus an explanation of the purpose behind it. Similar methods or further refinements are included with each recipe to provide comprehensive guidance.
Java 9 Data Structures and Algorithms
by Debasish Ray ChawdhuriGain a deep understanding of the complexity of data structures and algorithms and discover the right way to write more efficient code About This Book • This book provides complete coverage of reactive and functional data structures • Based on the latest version of Java 9, this book illustrates the impact of new features on data structures • Gain exposure to important concepts such as Big-O Notation and Dynamic Programming Who This Book Is For This book is for Java developers who want to learn about data structures and algorithms. Basic knowledge of Java is assumed. What You Will Learn • Understand the fundamentals of algorithms, data structures, and measurement of complexity • Find out what general purpose data structures are, including arrays, linked lists, double ended linked lists, and circular lists • Get a grasp on the basics of abstract data types—stack, queue, and double ended queue • See how to use recursive functions and immutability while understanding and in terms of recursion • Handle reactive programming and its related data structures • Use binary search, sorting, and efficient sorting—quicksort and merge sort • Work with the important concept of trees and list all nodes of the tree, traversal of tree, search trees, and balanced search trees • Apply advanced general purpose data structures, priority queue-based sorting, and random access immutable linked lists • Gain a better understanding of the concept of graphs, directed and undirected graphs, undirected trees, and much more In Detail Java 9 Data Structures and Algorithms covers classical, functional, and reactive data structures, giving you the ability to understand computational complexity, solve problems, and write efficient code. This book is based on the Zero Bug Bounce milestone of Java 9. We start off with the basics of algorithms and data structures, helping you understand the fundamentals and measure complexity. From here, we introduce you to concepts such as arrays, linked lists, as well as abstract data types such as stacks and queues. Next, we'll take you through the basics of functional programming while making sure you get used to thinking recursively. We provide plenty of examples along the way to help you understand each concept. You will get the also get a clear picture of reactive programming, binary searches, sorting, search trees, undirected graphs, and a whole lot more! Style and approach This book will teach you about all the major algorithms in a step-by-step manner. Special notes on the Big-O Notation and its impact on algorithms will give you fresh insights.
Java 9 Dependency Injection: Write loosely coupled code with Spring 5 and Guice
by Nilang Patel Krunal PatelCreate clean code with Dependency Injection principlesKey FeaturesUse DI to make your code loosely coupled to manage and test your applications easily on Spring 5 and Google GuiceLearn the best practices and methodologies to implement DIWrite more maintainable Java code by decoupling your objects from their implementationsBook DescriptionDependency Injection (DI) is a design pattern that allows us to remove the hard-coded dependencies and make our application loosely coupled, extendable, and maintainable. We can implement DI to move the dependency resolution from compile-time to runtime. This book will be your one stop guide to write loosely coupled code using the latest features of Java 9 with frameworks such as Spring 5 and Google Guice. We begin by explaining what DI is and teaching you about IoC containers. Then you’ll learn about object compositions and their role in DI. You’ll find out how to build a modular application and learn how to use DI to focus your efforts on the business logic unique to your application and let the framework handle the infrastructure work to put it all together. Moving on, you’ll gain knowledge of Java 9’s new features and modular framework and how DI works in Java 9. Next, we’ll explore Spring and Guice, the popular frameworks for DI. You’ll see how to define injection keys and configure them at the framework-specific level. After that, you’ll find out about the different types of scopes available in both popular frameworks. You’ll see how to manage dependency of cross-cutting concerns while writing applications through aspect-oriented programming.Towards the end, you’ll learn to integrate any third-party library in your DI-enabled application and explore common pitfalls and recommendations to build a solid application with the help of best practices, patterns, and anti-patterns in DI. What you will learnUnderstand the benefits of DI and fo from a tightly coupled design to a cleaner design organized around dependencies See Java 9’s new features and modular frameworkSet up Guice and Spring in an application so that it can be used for DIWrite integration tests for DI applicationsUse scopes to handle complex application scenariosIntegrate any third-party library in your DI-enabled applicationImplement Aspect-Oriented Programming to handle common cross-cutting concerns such as logging, authentication, and transactions Understand IoC patterns and anti-patterns in DI Who this book is forThis book is for Java developers who would like to implement DI in their application. Prior knowledge of the Spring and Guice frameworks and Java programming is assumed.