121-java-object-oriented-design
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseJava Object-Oriented Design Guidelines
Java面向对象设计指南
Review and improve Java code using comprehensive object-oriented design guidelines and refactoring practices.
What is covered in this Skill?
- Fundamental design principles (SOLID, DRY, YAGNI)
- Class and interface design: composition over inheritance, immutability, accessibility minimization, accessor methods
- Core OOP concepts: encapsulation, inheritance, polymorphism
- Object creation patterns: static factory methods, Builder, Singleton, dependency injection, avoiding unnecessary objects
- OOD code smells: God Class, Feature Envy, Inappropriate Intimacy, Refused Bequest, Shotgun Surgery, Data Clumps
- Method design: parameter validation, defensive copies, careful signatures, empty collections over nulls, Optional usage
- Exception handling: checked vs. runtime exceptions, standard exceptions, failure-capture messages, no silent ignoring
Scope: The reference is organized by examples (good/bad code patterns) for each core area. Apply recommendations based on applicable examples.
使用全面的面向对象设计指南和重构实践来审查和改进Java代码。
本技能涵盖哪些内容?
- 基础设计原则(SOLID、DRY、YAGNI)
- 类与接口设计:组合优于继承、不可变性、最小化可访问性、访问器方法
- 核心OOP概念:封装、继承、多态
- 对象创建模式:静态工厂方法、Builder、单例、依赖注入、避免不必要的对象
- OOD代码异味:上帝类(God Class)、特性依恋(Feature Envy)、不当亲密(Inappropriate Intimacy)、被拒绝的遗赠(Refused Bequest)、霰弹式修改(Shotgun Surgery)、数据泥团(Data Clumps)
- 方法设计:参数验证、防御性拷贝、严谨的方法签名、返回空集合而非null、Optional的使用
- 异常处理:受检异常vs运行时异常、标准异常、捕获失败信息、不静默忽略异常
范围:参考资料按每个核心领域的示例(好/坏代码模式)组织。请根据适用的示例应用建议。
Constraints
约束条件
Before applying any OOD changes, ensure the project compiles. If compilation fails, stop immediately — do not proceed until resolved. After applying improvements, run full verification.
- MANDATORY: Run or
./mvnw compilebefore applying any changemvn compile - SAFETY: If compilation fails, stop immediately and do not proceed — compilation failure is a blocking condition
- VERIFY: Run or
./mvnw clean verifyafter applying improvementsmvn clean verify - BEFORE APPLYING: Read the reference for detailed examples, good/bad patterns, and constraints
在应用任何OOD变更前,确保项目可编译。如果编译失败,请立即停止——问题解决前不要继续。应用改进后,运行完整验证。
- 强制要求:在应用任何变更前运行或
./mvnw compilemvn compile - 安全要求:如果编译失败,立即停止且不要继续——编译失败是阻塞性条件
- 验证:应用改进后运行或
./mvnw clean verifymvn clean verify - 应用前:阅读参考资料以获取详细示例、好/坏模式及约束条件
When to use this skill
何时使用本技能
- Review Java code for object-oriented design
- Refactor Java code for object-oriented design
- Improve Java code for object-oriented design
- Fix OOP concept misuse in Java code
- Identify and resolve code smells in Java code
- Improve object creation patterns in Java code
- Improve method design in Java code
- Improve exception handling in Java code
- 审查Java代码的面向对象设计
- 重构Java代码以优化面向对象设计
- 改进Java代码的面向对象设计质量
- 修复Java代码中的OOP概念误用问题
- 识别并解决Java代码中的代码异味
- 改进Java代码中的对象创建模式
- 改进Java代码中的方法设计
- 改进Java代码中的异常处理
Reference
参考资料
For detailed guidance, examples, and constraints, see references/121-java-object-oriented-design.md.
如需详细指导、示例和约束条件,请查看references/121-java-object-oriented-design.md。