第七部分:大作业
本书的最后一部分是你进阶更高级项目,并尝试确定你的个人流程的地方。这些项目是困难的组合,但他们应该帮助你正式化你的流程,并找出适合你的东西。最重要的是,你应该着手分析你的工作方式和最适合你的东西。也许你没有执行我在本书建议的,关于个人发展的任何事情,但我希望你继续阅读这本书,并找到分析自己的方法。作为程序员,这样做会给你一种有效的方式,来成长和改进。
我们应该检查你至今为止所学到的知识,因为我会要求你尽可能多地应用它:
- 第二部分,你学会了如何 Hack,以及如何使你的起步尽可能顺利。
- 第三部分,你了解了数据结构和算法,但也学会了如何专注于质量和编写良好的测试。
- 第四部分,你将测试和质量技能应用于一些项目,专注于测试驱动开发和审计。
- 第五部分,你了解了解析,还有测量你的质量,在你工作和撰写有效测试的时候。
- 第六部分,你研究了 SQL 数据库,并学习了一个新的流程,用于分析数据并构建良好的数据。
第七部分,你会将一切东西应用于一系列的项目,确保关注三个方面的改进:
- 流程,通过尝试定义你的流程,并坚持它。
- 质量,通过专注于自动化测试,测试工具,并跟踪你的流程。
- 创造力,通过尝试解决没定义好的东西,并以一些松散、有趣的 Hack 开始。
你的流程是什么?
对于这本整本书,我已经告诉了你,我要让你使用什么流程工具。每个部分我都给你一个不同的挑战,专注于流程,质量或创造力,然后给你练习来做。你一直在跟踪你的质量,并从图表中查看什么适合你,什么不适合你。现在是时候开发自己的流程来完成一个项目,然后将其应用到本书这个部分的项目中。
花时间想出你的流程主题。它是否是 Hack 或者是 TDD 呢?是否始终是 TDD 并且有大量审计呢?它只是 Hack 和审计嘛?我的意思不是仅仅选择两件事,而应该考虑你的主题。把它当成你的个人风格来选择。我碰巧喜欢帽子和红衬衫。不要问我为什么,我只是喜欢他们。这就是对你而言的流程描述。这是你夏日里的圆点连衣裙和黄色的鞋子。在编程中,我通常遵循“Hack,优化,测试,破坏”的主题。
一旦你有简单的主题声明,现在是时候为这个主题制定你的步骤了。将它们写在一张卡片上,以便你可以遵循他们,我会警告你,简单比复杂更好。复杂的流程很难处理。你的流程也应该命中创造力和质量。我的流程对于不同的项目是不同的,但是我在这本书中教导过你们。使用我至今为止教你的东西来想出自己的流程。
一旦你制定了你的流程,你可以回顾一下你的笔记,看看你能否找到指标,来证明你所选择的东西。也许你已经选择了 TDD,因为它让你觉得你写了更加稳固的代码,但是你在第五部分中的质量指标并不是非常好。对使用你喜欢的流程,我有一些要说的话,但是如果你喜欢的流程没有效果,那么现在就是把它扔进回收站的时候。
随着你的流程的出现,现在是时候来测试一些项目了。不要害怕犯错。有时,我们认为我们决定的东西是最好的,然后战火就像原子弹一样融化它。这是一个科学实验,所以如果一些事情是一场灾难,那么使用你的跟踪和指标,找出原因并简单地重新整备,再试一次。