Browse Source

添加 'w4/反思与继承组合的讨论'

main
YuWeixia 3 weeks ago
parent
commit
d371b89e3b
  1. 30
      w4/反思与继承组合的讨论

30
w4/反思与继承组合的讨论

@ -0,0 +1,30 @@
继承
优点:代码复用、多态支持、符合“is-a”关系。
缺点:紧耦合、灵活性受限、可能破坏封装。
组合
优点:松耦合、动态替换行为、易于测试。
缺点:代码量增多、不易直观体现类型层次。
在本场景中的选择
本实验采用继承,因为:
所有图形共享“计算面积”这一核心行为,且未来扩展新图形只需继承 Shape,无需修改已有代码。
继承方案简洁直观,充分利用了多态,便于统一处理。
若未来行为变化频繁(如面积算法需动态切换),则可重构为组合模式。当前场景下继承更合适。
实验反思与总结
多态的价值:通过 ShapeUtil.printArea(Shape shape) 一行代码即可处理所有图形,避免了重复代码,提高了可维护性。
抽象类的合理使用:将公共行为提升到抽象类,子类只关注自身实现,符合单一职责原则。
设计取舍:在简单场景中继承的简洁性优于组合,但需警惕未来耦合;若需求复杂化,应及时重构。
AI 工具助力:Trae 的 AI 辅助功能显著提升了开发效率,尤其在代码生成、文档撰写和理论分析方面,但核心设计仍需人工判断。
通过本次实验,加深了对面向对象三大特性(封装、继承、多态)的理解,并初步掌握了利用 AI 工具辅助编程的方法。
Loading…
Cancel
Save