关于“重复”的一段交流
AB
今天听到一朋友说,"面向对象也好 面向结构也罢,主要是减少代码冗余就可以了,不用太在乎面向对象"
STST
是的,但是减少冗余不是凭空就能做到的,除了复制粘贴,还有隐藏比较深的冗余
设计模式 就是提高可重用性的,没有高度的可重用性,是不可能减少荣誉的
因为这个世界上做"任何两件事",总是有相似或者相同的部分,这部分不提取出来,就是冗余
ST
相似提取不出来可以理解为不同吗
相同提不出来是冗余
相似不算吧 本来就是不同的东西
STST
相似的部分的内部必定有相同的部分,不然如何相似?
开发,维护成本,这是一厢情愿的,重复是和维护成反比的
YR
其实觉的没必要非得提取出来,首先把项目做完,开发,维护成本最低就好了
ST
就好想明明两个方法10条语句8条是一样的 但是两条不同
ST
真他妈操蛋 这种情况
STST
呵呵,换个角度去思考
说明你的这两个方法都太大了,导致了交叉
职责不单一
YR
我没干过什么大项目,反正很多都是做完了就做完了,维护也有限的
STST
也不需要大项目,只要不是开发完就扔的项目,都有这个问题
ST
但是有时候真的很难区分出来了 现在想不到例子 但我找到了再发出来大家讨论
STST
你这种情况我非常面熟,以前我也经常为此烦躁
这种重复不是复制粘贴那么简单的重复,而是更深层次语义上的重复
ST
好深奥 我想想
STST
解决这种重复需要去分解设计它
浮沙之上勿筑高台