关于我

代码偏好

错误处理

我偏好显式的错误处理,使用 try-catch 和有意义的错误消息。 避免使用泛化错误。为了便于调试,始终记录错误日志。

注释

注释应解释“为什么”,而不是“是什么”。代码本身应该尽量能自解释。 注释应该说明业务逻辑或者不明显的设计决策。

测试

我偏好 TDD(测试驱动开发)。 先写测试,再写实现。 重点关注行为,而不是实现细节。

架构

我偏好模块化、低耦合的设计。 使用依赖注入提升可测试性。 拆分关注点,例如 Controllers、Services、Repositories。

调试偏好

沟通方式

项目组织

我通常会这样组织项目:

project/
  ├── src/
  │   ├── api/
  │   ├── services/
  │   ├── models/
  │   └── utils/
  ├── tests/
  ├── docs/
  └── docker/

工具链