Agent SkillsTaoidle/plan-cascade › java-best-practices

java-best-practices

GitHub

提供Java 17+编码最佳实践,涵盖代码风格、现代特性(Records/Sealed)、错误处理、项目结构及测试规范。用于指导Java代码的编写与审查,提升代码质量与现代性。

builtin-skills/java/SKILL.md Taoidle/plan-cascade

Trigger Scenarios

编写Java代码 审查Java代码 Java 17及以上版本开发

Install

npx skills add Taoidle/plan-cascade --skill java-best-practices -g -y
More Options

Non-standard path

npx skills add https://github.com/Taoidle/plan-cascade/tree/master/builtin-skills/java -g -y

Use without installing

npx skills use Taoidle/plan-cascade@java-best-practices

指定 Agent (Claude Code)

npx skills add Taoidle/plan-cascade --skill java-best-practices -a claude-code -g -y

安装 repo 全部 skill

npx skills add Taoidle/plan-cascade --all -g -y

预览 repo 内 skill

npx skills add Taoidle/plan-cascade --list

SKILL.md

Frontmatter
{
    "name": "java-best-practices",
    "license": "MIT",
    "metadata": {
        "author": "plan-cascade",
        "version": "1.0.0"
    },
    "description": "Java coding best practices. Use when writing or reviewing Java code (17+). Covers modern features, error handling, and patterns."
}

Java Best Practices (17+)

Code Style

Rule Guideline
Formatter google-java-format
Analysis SpotBugs, Error Prone
Naming Clear, no abbreviations

Modern Features

Feature Usage
Records Immutable data carriers
Sealed classes Restricted hierarchies
Pattern matching instanceof with binding
var Local type inference
public record User(String id, String name) {}

if (obj instanceof String s && !s.isEmpty()) { process(s); }

public sealed interface Result<T> permits Success, Failure {}
record Success<T>(T value) implements Result<T> {}
record Failure<T>(Exception error) implements Result<T> {}

Error Handling

Rule Guideline
Specific exceptions Not bare Exception
Try-with-resources For AutoCloseable
try (var reader = new BufferedReader(new FileReader(path))) {
    return reader.lines().toList();
} catch (IOException e) {
    throw new ConfigException("Failed: " + path, e);
}

Project Structure

src/main/java/com/example/{domain,service}/
src/test/java/
pom.xml or build.gradle

Common Patterns

Pattern Usage
Optional Null-safe returns
Stream API Functional collections
Builder Complex construction
public Optional<User> findById(String id) {
    return Optional.ofNullable(users.get(id));
}

Anti-Patterns

Avoid Use Instead
Returning null Optional<T>
Mutable data Records
instanceof chains Pattern matching

Testing (JUnit 5 + AssertJ)

@Test void shouldProcess() {
    var service = new Service(mockRepo);
    var result = service.process(input);
    assertThat(result.status()).isEqualTo(SUCCESS);
}

Version History

  • 5223f82 Current 2026-07-19 09:26

Same Skill Collection

builtin-skills/go/SKILL.md
builtin-skills/python/SKILL.md
builtin-skills/typescript/SKILL.md
skills/hybrid-ralph/SKILL.md
skills/mega-plan/SKILL.md
skills/planning-with-files/SKILL.md

Metadata

Files
0
Version
5223f82
Hash
d79ec798
Indexed
2026-07-19 09:26

Home - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-21 04:23
浙ICP备14020137号-1 $Map of visitor$