当两个项目共享相同方法代码,是否应创建独立项目以消除冗余?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1434个文字,预计阅读时间需要6分钟。
在两个项目中发现仅有一个方法存在相同代码时,应考虑是否需要单独建立一个项目来消除重复代码。最近遇到的一个类似问题,有两种解决方案。这两种方案在数据层上存在一定的联系,简单来说就是B项目。
当2个项目中出现了只有一个方法的相同代码时,要不要单独建一个项目来消除重复代码最近碰到一个这样的问题,有两个Solution,它们之间在数据层上有一定的联系,简单说就是B项目为A项目提供录入数据的功能,功能上它们两个各有分工,代码暂时也没有耦合,但都出现了一个验证某数据的要求,这个算法是相同的。我的第一反应是肯定要独立出一个Project,单独有一个类,里面有这个验证方法。然后2个Solution分别引入此Project。但我讲出这个想法,团队最后予以否定,说是如果有更多相同的类似验证数据的代码可以重用时再这样做,现在不是最佳时机(可以理解为可重用的太少了,等再多一点再做,或者是如果现在做会拖慢进度之类的)。
这反应出我一个特点,就是对代码质量的要求很苛刻。在生活中也可以体现出来,头上有个灯坏了,一闪一闪的,有些人可以永远忍受,我就不行,即使它闪的不是很厉害,我也受不了,我很奇怪为什么别人都能受得了。
绝对不允许有重复代码是敏捷开发中重要的原则,团队中也有人学了敏捷开发,可为何不站出来支持我呢?在讨论中出现了另外一个问题,假如2个项目中重用此代码,应该用ClassLibrary还是用WebService,下面我一并列出我的观点:
1. 首先一定要重用可以重用的代码。因为重复代码是维护的大敌,当不重用时,如果算法有某些修改,那么我们不得不同时改2个地方,即使算法没有修改,但是实现这个算法的代码自身有缺陷,那么也要同时改2个地方。
本文共计1434个文字,预计阅读时间需要6分钟。
在两个项目中发现仅有一个方法存在相同代码时,应考虑是否需要单独建立一个项目来消除重复代码。最近遇到的一个类似问题,有两种解决方案。这两种方案在数据层上存在一定的联系,简单来说就是B项目。
当2个项目中出现了只有一个方法的相同代码时,要不要单独建一个项目来消除重复代码最近碰到一个这样的问题,有两个Solution,它们之间在数据层上有一定的联系,简单说就是B项目为A项目提供录入数据的功能,功能上它们两个各有分工,代码暂时也没有耦合,但都出现了一个验证某数据的要求,这个算法是相同的。我的第一反应是肯定要独立出一个Project,单独有一个类,里面有这个验证方法。然后2个Solution分别引入此Project。但我讲出这个想法,团队最后予以否定,说是如果有更多相同的类似验证数据的代码可以重用时再这样做,现在不是最佳时机(可以理解为可重用的太少了,等再多一点再做,或者是如果现在做会拖慢进度之类的)。
这反应出我一个特点,就是对代码质量的要求很苛刻。在生活中也可以体现出来,头上有个灯坏了,一闪一闪的,有些人可以永远忍受,我就不行,即使它闪的不是很厉害,我也受不了,我很奇怪为什么别人都能受得了。
绝对不允许有重复代码是敏捷开发中重要的原则,团队中也有人学了敏捷开发,可为何不站出来支持我呢?在讨论中出现了另外一个问题,假如2个项目中重用此代码,应该用ClassLibrary还是用WebService,下面我一并列出我的观点:
1. 首先一定要重用可以重用的代码。因为重复代码是维护的大敌,当不重用时,如果算法有某些修改,那么我们不得不同时改2个地方,即使算法没有修改,但是实现这个算法的代码自身有缺陷,那么也要同时改2个地方。

