Advanced Java with Java 8
Advanced Java with Java 8
The Advanced Java™ with Java 8 Training Course provides you with advanced skills for programming in the Java language.
This course delves into functional programming, asynchronous programming, and other modern paradigms for getting the full power of the JVM and multiprocessor, multicore hardware. We will explore and explain the major new features of Java 8 and how they support high-performance servers and concurrent programming while avoiding some of the near-fatal problems of manual thread management and synchronization.
Although this course focuses on "pure" Java APIs via Java 8, the principles and patterns apply to many modern programming languages and libraries. In particular, while many large enterprises have yet to adopt Java 8, the same patterns and concepts can be implemented via Java 6+ compatible libraries like Google's Guava, which has wide enterprise acceptance.
You should take Advanced Java Training course if you are interested in learning more about the Java programming language in order to learn advanced programming techniques and concepts.
Upon successful completion of the course you will be able to:
- Select and use functions as units of application design in addition to classes/methods
- Choose appropriate data structures including Java 8 Stream-Lists and immutable collections
- Create highly concurrent code without creating threads and synchronizing state access
- Work with client and server sockets, and write your own basic HTTP servers and clients
- Identify and deploy proven patterns to solve complex Java problems
You should take Advanced Java Training course if you are interested in learning more about the Java programming language in order to learn advanced programming techniques and concepts. Be prepared to participate and ask questions in class, as well as dive in and complete a variety of small labs (which can be done collaboratively with other class members).
Boundaries of the Java Class Paradigm
- Interface statics and defaults
- java.util.stream package
- Functional interfaces and Lambdas
- Algorithm design with Java 8 Streams
Network I/O and Multicore Computing, and Concurrency
- Threading and concurrency evolution
- Multithreaded servers
- Non-blocking servers
Building Safe Parallel Programs Combining Classes and Functions
- Async programming
- Promises and CompletableFuture
His experience includes work with banks on early neural-net fraud detection, streaming analytics, cluster management code, and web apps, as well as development and teaching at a variety of companies in the travel, and entertainment industries. In addition to Big Data projects, Adam has built web sites, GUI applications, office productivity software, mobile apps... and even a service-based integration to a 1960s-vintage mainframe for one of the world's largest airlines.
Adam focuses on designing and coding systems in a way that yields predictable results, leverages best practices and high-productivity tools, minimizes excess code, and is fun to do. He has spoken at tech conferences, written articles and skill assessments, and produced an open source tool for software development. To learn more about Adam, visit his LinkedIn profile.