Kicking off a series on Effective Java, Third Edition
Introduction to a YouTube series exploring the concepts and best practices from the book 'Effective Java, Third Edition'.
Nicolai Parlog (nipafx) is a Java Developer Advocate at Oracle who shares deep insights on Java through blogs, talks, books, videos, and open-source projects, helping developers learn and grow.
302 articles from this blog
Introduction to a YouTube series exploring the concepts and best practices from the book 'Effective Java, Third Edition'.
Explores the modular architecture of JUnit 5, detailing its Jupiter, Vintage, and Platform sub-projects and the design rationale.
A guide to JUnit 5 basics covering @Test annotation, test lifecycle, assertions, assumptions, and other core features for Java developers.
A guide to using and customizing JUnit 5's @Enabled and @Disabled conditions for conditional test execution.
Explores JUnit 5's dynamic tests feature, which allows creating test cases at runtime from parameters, data sources, or lambdas.
A guide to creating custom extensions using the JUnit 5 extension model for Java testing.
A guide to writing parameterized tests in JUnit 5, covering setup, dependencies, and basic usage with examples.
A guide to setting up JUnit 5 in popular IDEs (IntelliJ, Eclipse) and build tools (Maven, Gradle), including dependencies and test execution.
Explores using Java's 'var' keyword to simulate traits and intersection types, discussing its versatility and limitations.
Explores Java's 'var' type inference for anonymous classes, enabling ad-hoc fields and methods, but warns against production use.
Explores using Java's 'var' keyword to create and work with intersection types, enabling variables to combine multiple interfaces.
A guide to creating Multi-release JARs (MR-JARs) in Java to package code for multiple Java versions in a single artifact.
A hands-on tutorial exploring Java 9's key features, including language changes, new APIs, the module system, and migration tips.
Essential guide for using Maven with Java 9+, covering version requirements, configuration, and multi-JDK builds.
Explores the new 'var' keyword for local-variable type inference in Java 10, covering its usage, limitations, and impact on code readability.
Explores solutions for using JSR 305 annotations like @Nonnull with Java 9's module system, addressing split package conflicts.
A hands-on tutorial on using the Java module system with code-first examples, from Hello World to modularizing an application.
A guide to using Java 9+'s unified logging architecture with the -Xlog option to configure JVM internal messages.
An overview of Java 9 features and resources, including a demo repository showcasing Java 9-16 capabilities and community expert insights.
Explores five key Java command line options (--add-exports, --add-opens, etc.) to overcome migration challenges with the Java module system.