COURSE INTRODUCTION
Java remains one of the most widely used and versatile programming languages, essential for building scalable, maintainable applications. With its strong ecosystem, powerful libraries, and constant evolution, Java continues to be a top choice for enterprise-level development. This course will dive into the tools, libraries, and features that make Java development efficient and modern, enabling you to build high-quality software.
COURSE OBJECTIVE
Participants will develop a strong understanding of advanced Java libraries and tools, including Java 23 features, project management with Apache Maven, and modern testing practices. They will gain expertise in using advanced collections, optimizing logging, and managing concurrency, empowering them to build scalable and maintainable applications with the latest Java capabilities.
TARGET AUDIENCE
- Developers who have a foundational understanding of Java
- Developers experienced in other programming languages who want to dive deeper into Java’s ecosystem and features
- Expirienced developer aiming to improve their Java development workflow by learning essential libraries, tools, and Java 23 features
- Developers who have some experience with Java and want to expand their knowledge with advanced tools, libraries, and modern programming techniques
COURSE AGENDA
Duration:
5 days
Day 1:
- Overview оf Java’s ecosystem: Language, JVM, libraries, and tools.
- Introduction tо Apache Maven for build and project management.
Day 2:
- In-depth study оf testing types; introduction tо JUnit 5.
- Exploring mocking tools with a focus оn Mockito.
Day 3:
- Advanced logging techniques with Log4J2.
- Exploring new features іn Java 23, including lambda expressions and Optional.
Day 4:
- Time management іn Java with java.util.Date and java.time API.
- Utilization оf Google Guava for enhanced collections, caching, and utilities.
Day 5:
- Concurrent programming: Thread safety, thread-safe wrappers, and concurrent utilities.
- Introduction tо streams and parallel streams for efficient data processing.