28得票4回答
使用CTE还是不使用CTE

我长期使用SQL2000,没有接触过通用表达式。 我在这里(#4025380)和这里(#4018793)中提供的答案与常规做法不同,因为它们没有使用通用表达式。 我知道对于递归操作,通用表达式非常方便,而且有一些查询可以大大简化代码,但是在什么情况下使用通用表达式就显得有些无谓了呢?与子查...

28得票19回答
为正则表达式设计一种替代(流畅?)界面的方法

我是一名有用的助手,可以为您翻译以下内容: 我刚刚看到了一个巨大的Java正则表达式,这让我对正则表达式的可维护性产生了一些思考。我相信,除了一些厉害的Perl程序员外,大多数人都会认为正则表达式很难维护。 我在思考如何解决这种情况。到目前为止,我最有希望的想法是使用流畅接口。举个例子,...

25得票10回答
我们的代码很烂,而我又没有能力去改善它。求救!

我们的代码很烂。实际上,让我澄清一下。我们旧的代码很烂。它很难调试,并且充满了很少有人了解或甚至记得的抽象概念。就在昨天,我花了一个小时在我已经工作了一年多的某个区域进行调试,并发现自己想:“哇,这真的很痛苦。”这不是任何人的错——我相信最初所有东西都很完美合理。最糟糕的部分通常是它只是能够正...

23得票8回答
什么因素使Perl代码易于维护?

我已经使用Perl写了几年的代码,它是我文本处理的首选语言(我处理的许多遗传/基因组问题都可以轻松转化为文本处理问题)。Perl作为一种语言可以非常宽容,你可以用Perl编写非常糟糕但功能正常的代码。就在前几天,我的朋友说他把Perl称为“只能写不能读”的语言:写一次,理解一次,完成后不要尝试...

22得票4回答
废弃代码。IoC 来拯救

在有关IoC容器有用性的问题中,获胜的提交者提到,使用IoC容器可以实现以下代码:public class UglyCustomer : INotifyPropertyChanged { private string _firstName; public string Firs...

22得票7回答
速度比较 - 解释型语言中的过程式编程 vs. 面向对象编程

在解释性编程语言,如PHP和JavaScript中,采用面向对象方法与过程式方法相比有什么影响? 具体来说,当创建Web应用并在过程式方法和面向对象方法之间选择时,我要考虑的是一份清单,以优化速度和可维护性。如果您知道任何探讨此问题的文章,引用的研究和测试案例也将有所帮助。 归根结底: 在...

20得票5回答
维护应用程序的免费和专业版本

我想为Android创建我的应用程序的PRO版本,想知道如何构建我的存储库。 目前我有主干和功能分支。 我想把专业版放在另一个分支中,但也许还有更好的方法? 比如,也许我应该创建两个分支 - 一个免费版本,另一个专业版? 专业版将具有附加功能,并且不会显示广告,因此例如,我不想在专业版中包...

19得票4回答
Angular指令 - 元素或属性?

我是一个团队的成员,与大约6名UI开发人员一起工作,他们的技能水平参差不齐,几乎没有Angular经验。许多人都是承包商,对代码库的经验很少。该应用程序拥有非常花哨(复杂)的用户界面,并支持IE8+(希望很快支持IE9+)。 我们将使用指令来创建花哨的UI元素,所有这些指令都以“ipwr”为...

19得票9回答
如何自我记录由模板库类调用的回调函数?

我有一个User::func()(回调)函数,会被一个模板类(Library<T>)调用。 在开发的第一轮中,每个人都知道func()只为这个单一目的服务。 几个月后,大多数成员忘记了func()是干什么的。 经过一些重构,func()有时会被某些程序员删除。 起初,我认为这根...

18得票9回答
设置/拆除会影响测试可维护性吗?

这似乎在另一个问题上引起了一些讨论,我认为它值得转化成为一个单独的问题。 DRY原则似乎是我们应对维护问题的选择武器,但是对于测试代码的维护呢?是否适用同样的经验法则呢? 开发人员测试社区中的一些强有力的声音认为setup和teardown是有害的,应该避免使用,例如: James N...