代码之家  ›  专栏  ›  技术社区  ›  Jeffrey Kern

“向前兼容”程序设计

  •  1
  • Jeffrey Kern  · 技术社区  · 15 年前

    到目前为止,我在这里提出的关于StackOverflow的大部分问题都是如何实现通过XNA环境开发基于软件的NES克隆的个别概念和技术。

    我在我的电脑上集成的小样本工作得非常好。除非我撞到了砖墙。

    有概念证明是令人惊奇的,除非你需要它超越这一点。我现在有一些样本散落在我试图合并的地方,其中一些是不完整的。现在我被鸡和蛋的情况困住了,我想把这些样本放在一起,以确保它们能工作,但是没有测试数据我就不行。我没有工具来创建测试数据,因为它们需要基于需要组合在一起的各个部分。

    我想,我的问题是:在编码世界中有哪些设计模式和规程可以解决这类问题?我一直依靠暴力编码和用一个全新的代码库重新启动一个项目来进一步实现我的目标,但我怀疑这是最好的方法。

    在我的大学生涯中,我的大部分编程工作都是在一本书中完成的简单项目上,或者在给定的正确数据集和可验证的结果下完成的。我没有,因为我自己的设计文件,我要去的可能是非常错误的。

    3 回复  |  直到 15 年前
        1
  •  1
  •   Reinderien    15 年前

    就我个人而言,我喜欢处理大型项目,首先创建框架GUI组件和测试,然后逐步填充后端,以确保测试通过,GUI开始按预期运行。从简单的测试开始;即使他们错了,也总比不做测试好。

    另外,我强烈建议您将所有内容都放在源代码管理的存储库中,如果您还没有这样做的话。如果你不介意Google代码是开源的和公开的,那么Google代码是好的;origo.ethz.ch有一个很好的免费服务,可以公开也可以私人。

    其次,我强烈建议您在运行时记录所有内容,并使其与doxygen之类的工具兼容。大型项目确实受益于增量文档。如果使用微软Visual Studio和C++或C语言,请阅读它们的XML文档格式:

    http://msdn.microsoft.com/en-us/library/b2s063f7.aspx

        2
  •  1
  •   btreat    15 年前

    测试本身可能是错误的,这是正确的,但是当您遇到失败的测试时,您唯一的选择是确定基本代码或测试代码/文档是否出错。通常情况下,它是测试代码,但是在有一组通过的测试之前,您不会对底层的基本代码有信心。一旦达到这一点,您就能够更加自信地对基本代码进行更改,因为您知道您有一组测试(文档)来验证更改。

        3
  •  0
  •   John D    15 年前

    看来你想一下子咬得太多了。如果XML文件太大,无法可靠地手动创建,请创建一个XML文件,并进行测试。您的第一个模式应该是您试图创建的内容的一个非常小的子集。自己测试碎片。如果将问题分解成更小的部分,那么确定测试数据或代码是否是问题就容易多了。

    这不一定与单独测试组件相同(尽管这也是个好主意)。使用你已经拥有的来生成简化的案例,比一次生成整个案例要容易得多。