高内聚低耦合是Java工程可维护、可扩展、安全可靠的核心实践:高内聚指类职责单一、逻辑内聚;低耦合靠接口编程与依赖注入实现模块解耦;封装与分层架构是其落地保障。
因为高内聚低耦合直接决定代码能不能长期维护、容易扩展、安全可靠。它不是理论空话,而是Java工程每天都在面对的真实问题。
一个类只做一件事,并且把相关逻辑全包圆,这就是高内聚。比如订单校验、价格计算、折扣应用这些动作,都该集中在OrderProcessor里,而不是散落在用户服务、库存服务甚至Controller里。
applyDiscount(),不影响验证或总价计算两个类之间依赖越少、接口越简单,改动就越安全。Java里最典型的低耦合实践,就是面向接口编程 + 依赖注入。
new PayPalGateway(),而是接收PaymentGateway接口PaymentService一行代码把字段设为private,只暴露必要的public方法,不是为了“防着别人”,而是为了划定责任边界。
Student类把age设为私有,用setAge()加校验逻辑,外部就无法赋值-5或999
校验、存哪、是否同步到缓存setAge()签名不变,所有调用点完全无感包结构不是随便建的,它是低耦合的物理体现。常见合理分层:
controller:只处理HTTP协议、参数校验、返回格式,不碰业务逻辑service:专注领域流程,调用多个repository但不关心SQL怎么写repository:只和数据库打交道,不涉及订单状态流转等业务判断model和dto分开:避免数据库实体直接透传到前端,防止敏感字段泄露基本上就这些。不复杂,但容易忽略。