![]() |
1
6
当我独自进行开发时,我尽量保持它的简单,同时仍然有某种结构。 我认为Joel测试的工具部分捕获了最重要的东西:
然后我想添加一些我自己的:
即使只有你一个人,你肯定想要源代码管理。在一些错误修复中,能够跟踪事情的变化和变化的方式是非常宝贵的。在构建环境中投入时间通常是值得的。你要做很多。我无法跟踪我头脑中的错误,Excel表格就可以了。 如果没有这个基本结构,就不能在需要时进行重构。不管您如何处理设计,重构那些第一次没有变得好的部分是维持一个好设计的关键。如果你已经习惯了重构,那么你就不必考虑太多的步骤了,相反,你可以做一些现在可以工作的事情,然后在需要添加更多功能时重构它。 |
![]() |
2
1
对于一个单独的项目,最好的方法通常是测试驱动的开发,在需求确定的地方,这样回归测试是自动化的/无痛的,并且很好地利用断言来形式化编码时所做的假设。 如果在启动过程中将测试作为一个自测来执行,那么它将快速有效地突出问题。我在为各种编程语言编写解释程序时成功地使用了这种方法。您的里程可能因应用程序而异。 单独项目的测试驱动开发使得源代码管理几乎过时。如果您的测试足够好,那么它们足够好地建模需求。在添加新功能之前修复错误/测试,您的项目将满足其需求,并且几乎没有未解决的问题。 |
![]() |
3
0
想一想你将如何把软件带出门。因此,考虑一下您将如何处理架构设计,以及您将如何在架构中钻取功能。一旦你理解了这些东西,你需要使用的软件工具应该是显而易见的。 不要让软件驱动这个过程;这个过程应该驱动软件。 |
![]() |
4
0
工作的大项目总是从工作的小项目开始。从Hello World开始,不断删除错误并添加功能。当某件事情开始变得糟糕时,您将对它有足够的了解,可以在那时重构它。 |
![]() |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
![]() |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
![]() |
rainer · 后台插入程序的初始化 1 年前 |
![]() |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
|
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
|
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |