我已经看到参数against inheritance,我已经看到了反对arguments,但我很好奇大型代码库的其他维护者实际上在现实生活中做了什么.恐惧是夸张吗?你是从具体的班级继承还是继承怀疑论者呢?我特别感兴趣的是那些在C工作的人的听力.
解决方法 不是C人(在c#,java和ruby中有大型企业系统的专业经验),但这里是我的2美分这不是黑白的事情.
继承的问题是引入紧耦合.更糟糕的是,耦合通常是封装状态.超级类的变化可能会产生波纹效应,降低继承层次,创造微妙而难以预测的错误.
接口隔离完全避开这些问题,因为它不会以同样的方式破坏封装.
关于继承的好处是,有时候你有一个对象模型真的是一样的东西,只是一个很小的变化或增加.只要这种变化非常清楚,范围不广泛,而不是额外的约束(参见circle-ellipse问题),代码重用将胜过紧耦合.
我根据经验,坚持继承遗产,而不是法律.
总结以上是内存溢出为你收集整理的c – 具体类的继承是否邪恶?全部内容,希望文章能够帮你解决c – 具体类的继承是否邪恶?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)