Questions tagged «evidence-based»

7
不立即从VCS中删除冗余文件,而是先将它们标记为“待删除”,这是不好的做法吗?
我想知道我处理需要从版本控制中删除的源文件的方式是否被视为不良做法。 我想根据该示例向您解释: 最近我非常生气,因为我必须在程序中将Java类繁琐地整理出来,这些类基本上是无效的代码,但是在这些Java类中都没有文档记录和注释。当然,需要删除它们,但是在删除这些多余的东西之前,我有一个-有些人可能说奇怪-习惯: 我不会立即通过SVN-> Delete(用您选择的版本控制系统的delete命令替换)来删除这些冗余文件,而是将注释放置在这些文件中(这些文件的开头和结尾处都是引用)被删除+我的名字+日期,以及-更重要的是- 为什么被删除(在我的情况下,因为它们已经死了,代码令人困惑)。然后保存并提交给版本控制。下次当我必须在项目中提交/签入版本控制时,我按SVN-> Delete,然后最终将它们在版本控制中删除-当然仍然可以通过修订来恢复,这就是为什么我采用了这种习惯。 为什么要这样做而不是立即删除它们? 我的理由是,我至少要在存在那些冗余文件的上一个修订版本中要有显式标记,为什么应该删除它们。如果我立即删除它们,它们将被删除,但是没有地方记录为什么删除它们。我想避免这样的典型情况: “嗯...为什么删除了那些文件?我以前工作得很好。” (按“还原”->还原然后再消失的家伙将在下个星期永远消失或不可用,下一位受让人必须像我一样单调乏味地找出这些文件的内容) 但是您没有注意到为什么这些文件在提交消息中被删除了吗? 我当然可以,但是同事有时看不到提交消息。在您试图理解(在我的情况下为死机)代码时,首先使用所有关联的提交消息检查版本控制日志的情况并不常见。与其查看日志,不如立即看到该文件无用。这样可以节省她/他的时间,并且她/他知道此文件可能已恢复为坏文件(或至少引起了一个问题。)


7
选择编程范例来解决问题的经验证据
C2 Wiki讨论了面向对象编程的经验证据,该结论基本上得出结论,没有什么可以超越权威。这是在2008年最后一次编辑。这里的讨论似乎可以证明这一点:关于OO是否过时的问题,当函数编程是一个错误的选择,并且AOP的优缺点都可以由贡献者的意见来回答,而无需依赖证据。 当然,欢迎既有知名的从业人员的见解,也可以提供有价值的东西,但是当它们与实验数据一致时,它们似乎更加合理。这个证据存在吗?我知道基于证据的软件工程是一回事,但是我可以在这种情况下实践吗?具体来说,如果我有一个P想通过编写软件来解决的特定问题,是否存在大量的知识,研究和研究,这些知识,研究和研究会让我看到解决问题的结果如何P取决于编程范例的选择? 我知道哪种范式作为“正确答案”可以取决于特定研究关注的指标,研究保持不变或变化的条件,以及其他因素。这不会影响我寻找此信息并进行严格评估的愿望。 显而易见,有些人认为我正在寻找“曲柄”解决方案-某些香肠机将我的问题信息放入其中,而其中出现了“功能”或“结构化”之类的词。这不是我的意图。我正在寻找的是如何进行研究-尽管有很多警告和假设,但我不会在这里讨论,但是有很多关于此事的文献会-有关软件的某些属性的变化取决于问题和选择的范式。 换句话说:有人说“ OO可以提供更好的灵活性”或“功能程序的bug更少” –我要的(部分)证据就是这一点。其余人则要求提供证据证明这一点,或者要求这些假设正确的假设,或者表明这些考虑并不重要的证据。关于为什么一种范例比另一种范例更好的观点有很多。这些背后有什么目标吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.