$npx skillfedfor your agent

Java Idioms

Java Idioms covers modern language features and conventions for Java 17+ LTS, emphasizing records for immutable data, sealed classes for type-safe hierarchies, and pattern matching in switch expressions. The skill guides constructor injection, domain-specific exception handling, and testing with JUnit 5 and Mockito, alongside static analysis tooling to enforce code quality before commit.

Java Idioms teaches modern Java 17+ patterns including records, sealed classes, and pattern matching for idiomatic, maintainable code.

AI-generated summary based on this skill's SKILL.md

150 48 MITupdated by irahardianto

Decision gist · record as of 2026-07-17

Java Idioms teaches modern Java 17+ patterns including records, sealed classes, and pattern matching for idiomatic, maintainable code. Java Idioms covers modern language features and conventions for Java 17+ LTS, emphasizing records for immutable data, sealed classes for type-safe hierarchies, and pattern matching in switch expressions. The skill guides constructor injection, domain-specific exception handling, and testing with JUnit 5 and Mockito, alongside static analysis tooling to enforce code quality before commit.

manual: git clone https://github.com/irahardianto/awesome-agv → cp -r awesome-agv/.agents/skills/java-idioms ~/.claude/skills/java-idioms
.agents/skills/java-idioms/SKILL.md · version 0fc0762e

Use it when

  • Java Idioms explains how records eliminate boilerplate for immutable data classes by auto-generating constructors, accessors, equals.
  • Java Idioms covers pattern matching in switch expressions with type patterns, record patterns, and guard conditions.

Verify before relying

Read SKILL.md below before installing (1 file). Open directory: indexed for reading, not audited.

Same gist for agents: .md · .json

Install

irahardianto/awesome-agv/java-idioms · repository language: JavaScript

Open directory. Skills are indexed for reading, not audited. Review a skill's body before installing it.

Frequently asked questions

AI-generated answers based on this skill's SKILL.md and metadata

What are Java 17+ modern coding patterns covered by Java Idioms?

Java Idioms teaches modern language features and conventions for Java 17+ LTS, emphasizing records for immutable data, sealed classes for type-safe hierarchies, and pattern matching in switch expressions. The skill guides you through constructor injection, domain-specific exception handling, and testing practices to write idiomatic Java code aligned with current best practices.

How do Java records and sealed classes improve type safety?

Java Idioms explains how records eliminate boilerplate for immutable data classes by auto-generating constructors, accessors, equals, and hashCode. Sealed classes restrict inheritance to approved subtypes, enabling exhaustive pattern matching in switch expressions. Together, they create type-safe hierarchies that the compiler can verify at compile time, reducing runtime errors.

What pattern matching switch examples does Java Idioms demonstrate?

Java Idioms covers pattern matching in switch expressions with type patterns, record patterns, and guard conditions. Examples show how to match on object types, destructure records directly in case labels, and use guards to refine matches—replacing verbose instanceof chains and casts with cleaner, more expressive switch logic.

How should Java error handling and exception hierarchies be structured?

Java Idioms guides best practices for domain-specific exception hierarchies, emphasizing checked exceptions for recoverable errors and unchecked exceptions for programming faults. The skill teaches constructor injection of error handlers, proper exception wrapping to preserve context, and clean separation of concerns so error handling logic remains testable and maintainable.

What code quality tools and static analysis does Java Idioms cover?

Java Idioms covers static analysis tooling including Spotbugs for bug detection, Checkstyle for code formatting, and SonarQube for comprehensive quality gates. The skill guides setup and configuration to enforce naming conventions, catch common pitfalls before commit, and integrate these tools into your build pipeline for consistent code standards.

How does Java Idioms teach clean, testable code with JUnit 5 and Mockito?

Java Idioms demonstrates JUnit 5 testing patterns including parameterized tests for data-driven scenarios and Mockito for isolating dependencies. The skill emphasizes constructor injection to enable easy mocking, writing focused unit tests, and using TestContainers for integration testing—ensuring your code remains maintainable and your test suite stays fast and reliable.

SKILL.md

Rendered from the published skill. Quoted content, verbatim.

Java Idioms and Patterns

Java rewards clarity, type safety, and robust ecosystem tooling. Modern Java (17+ LTS) favors records, sealed classes, and pattern matching. Idiomatic Java = clean, readable, framework-aware.

> Scope: Java coding idioms. Test naming: .agents/rules/testing-strategy.md. Logging: @.agents/skills/logging-implementation/SKILL.md.

Modern Java Features (17+ LTS)

  1. Records for immutable data carriers: ```java // ✅ Concise, immutable, auto-generated equals/hashCode/toString public record CreateTaskRequest(String title, Priority priority) {}

// ❌ Verbose boilerplate POJO public class CreateTaskRequest { / getters, setters, equals, hashCode... / } ```

  1. Sealed classes for constrained hierarchies: java public sealed interface TaskResult permits Success, Failure, Pending {} public record Success(Task task) implements TaskResult {} public record Failure(String reason) implements TaskResult {} public record Pending(String taskId) implements TaskResult {}

  2. Pattern matching with switch: ```java return switch (result) { case Success(var task) ->

(truncated - see the full file via the links below)

File tree — 1 file
.agents/skills/java-idioms/SKILL.md

Let your AI agent find skills like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 56,283 agent skills by what they can do, searchable in plain language.

wish › “Learn modern Java idioms and best practices for Java 17+ LTS”

Give your agent the search over MCP, or paste the wish link into any chat. No install? Search from any chat →

Related skills

Php Idioms
by irahardianto · irahardianto/awesome-agv

This skill covers idiomatic PHP 8.x development, emphasizing strict typing, immutable data structures via readonly classes and enums, and domain-driven error handling. Learn named arguments, match expressions, constructor injection, and PSR-12 naming conventions alongside static analysis tools like PHPStan and Psalm.

MITupdated Jul 2026
★ 150repo stars
Spring Boot Idioms
by irahardianto · irahardianto/awesome-agv

Learn idiomatic Spring Boot 3.x patterns grounded in auto-configuration, constructor injection, and actuator-driven observability. Covers dependency injection best practices, Spring Data JPA query methods and projections, REST controller design with DTOs, and structured logging for production readiness. Includes testing patterns for integration and controller slices.

MITupdated Jul 2026
★ 150repo stars
Dotnet Idioms
by irahardianto · irahardianto/awesome-agv

Learn idiomatic .NET 8+ development through minimal APIs, dependency injection, and async-first patterns. Covers Entity Framework Core configuration, middleware design, and testing with xUnit. Build clean, performant, cloud-native applications aligned with modern .NET best practices.

MITupdated Jul 2026
★ 150repo stars
Csharp Idioms
by irahardianto · irahardianto/awesome-agv

Learn idiomatic C# patterns that leverage type safety, LINQ expressiveness, and async-first design. This skill covers modern features like nullable reference types, records, and pattern matching, plus practical guidance on error handling, dependency injection, and testing with xUnit.

MITupdated Jul 2026
★ 150repo stars
Kotlin Idioms
by irahardianto · irahardianto/awesome-agv

This skill covers core Kotlin idioms that make code safer and more expressive. Learn null-safety techniques, sealed hierarchies for type-safe results, structured concurrency with coroutines, and naming conventions. Includes practical examples and tooling guidance for formatting and static analysis.

MITupdated Jul 2026
★ 150repo stars
Cpp Idioms
by irahardianto · irahardianto/awesome-agv

Cpp Idioms teaches you how to write safe, efficient C++ code using modern language features and proven design patterns. Learn RAII principles, smart pointer ownership models, move semantics, and error handling with std::expected—all grounded in C++17/20/23 standards. The skill covers interfaces, dependency injection, testing strategies, and anti-patterns to avoid, with practical code examples and tooling guidance.

MITupdated Jul 2026
★ 150repo stars

More skills Elixir Idioms (MIT) · ruby (MIT) · angular-idioms (MIT) · ruby-patterns (MIT) · Laravel Idioms (MIT)

Tags
modern-java-syntaxtype-safety-patternsimmutable-data-structurescompile-time-verificationdependency-injection-patternsexception-designtest-automation-frameworksstatic-analysis-toolscode-quality-enforcementconcurrent-programming