这不仅是一种workaround,更是一种对三十年前流行的继承的全面反思。正是因为对继承的副作用认识越来越清楚,所以组合优于继承越来越深入人心,所以rust go等等较新的语言都主动放弃了继承,迫使用户使用组合的方式来复用逻辑。
组合优于继承,是和“高内聚低耦合”大致处于一个级别的“设计思想”。“设计思想”落地细化为“设计原则”,比如SOLID原则等等,然后“设计原则”再细化为具体的“设计模式”。这里面,“设计思想”是处于源头的地位。
【 在 RunningOn 的大作中提到: 】
: 这个听起来和“trait的函数里第一个参数是struct的引用”感觉上差不多,
: 也是一种workaround
--
FROM 123.120.189.*