coding-standard-java
14
总安装量
9
周安装量
#23036
全站排名
安装命令
npx skills add https://github.com/jdubray/puffin --skill coding-standard-java
Agent 安装分布
claude-code
6
antigravity
6
windsurf
5
gemini-cli
5
opencode
4
cursor
4
Skill 文档
Java Coding Standards
When reviewing or generating Java code, follow these rules:
File Naming
- Source files: PascalCase matching the public class name (e.g.,
UserService.java) - One public class per file: File name must match the public class name exactly
- Test files: Class name with
Testsuffix (e.g.,UserServiceTest.java) - Interface files: PascalCase (e.g.,
Comparable.java,UserRepository.java)
Package Naming
- Packages: All lowercase, dot-separated (e.g.,
com.example.service,org.project.utils) - No underscores or hyphens in package names
- Follow reverse domain name convention
Variable Naming
- Local variables: camelCase (e.g.,
userName,isActive,totalCount) - Instance variables: camelCase (e.g.,
userId,createdAt) - Constants: UPPER_SNAKE_CASE with
static final(e.g.,MAX_RETRIES,DEFAULT_TIMEOUT) - Boolean variables: Prefix with
is,has,can,should(e.g.,isEnabled,hasPermission)
Method Naming
- Methods: camelCase, verb or verb phrase (e.g.,
calculateTotal(),getUserById()) - Getters:
getprefix (e.g.,getName(),getId()) - Setters:
setprefix (e.g.,setName(),setId()) - Boolean getters:
isorhasprefix (e.g.,isActive(),hasChildren()) - Factory methods:
create,of,from,valueOf(e.g.,createInstance(),of())
Class/Interface Naming
- Classes: PascalCase, noun or noun phrase (e.g.,
UserService,OrderProcessor) - Interfaces: PascalCase, adjective or noun (e.g.,
Comparable,UserRepository) - Abstract classes: PascalCase, optionally prefix with
Abstract(e.g.,AbstractHandler) - Exception classes: PascalCase with
Exceptionsuffix (e.g.,InvalidInputException) - Enums: PascalCase for type, UPPER_SNAKE_CASE for values
Generics
- Type parameters: Single uppercase letter (e.g.,
T,E,K,V) - Meaningful names: When clarity needed (e.g.,
<Key, Value>)
Organization
- Package statement first
- Import statements (java., javax., third-party, project imports)
- Class declaration with fields, constructors, methods
- Public methods before private methods