定义目标体系结构和/或操作系统程序将运行在
确定你将使用的工具集
决定您将编写程序单独或作为一个团队的一部分
收集需求(记录列表的程序应该做的)
然而,作为一个新的程序员,这些问题的答案通常是简单:您正在编写一个程序供自己使用,仅在您自己的系统,使用IDE您购买或下载。这让事情容易,所以我们不会花任何时间在这一步。
第三步:做一个等级秩序的任务
在现实生活中,我们常常需要执行的任务非常复杂。试图找出如何做这些任务可以非常具有挑战性的。在这种情况下,我们经常利用自顶向下的方法解决问题。也就是说,解决一个复杂的任务,而是我们这个任务分解成多个子任务,每个单独的容易解决。如果这些子任务仍难以解决,它们可以被进一步分解。通过不断地把复杂的任务分解为更简单的,你最终会达到一个点,每个任务是可控的,如果不是微不足道的。
让我们来看一个例子。假设我们想写报告胡萝卜。目前我们的任务层次结构如下所示:
写报告胡萝卜
写一个报告胡萝卜是一个相当大的任务在一个坐着,让我们把它分成子任务:
写报告胡萝卜
做研究胡萝卜
写提纲
填写轮廓与细节胡萝卜
更可管理的,我们现在有三个任务,我们可以单独关注。然而,在这种情况下,“做研究胡萝卜有点含糊不清”,所以我们可以进一步将其分解:
写报告胡萝卜
做研究胡萝卜
去图书馆的书胡萝卜
在互联网上寻找信息的胡萝卜
写提纲
信息越来越多
信息处理
营养信息
填写轮廓与细节胡萝卜
现在我们有一个层次结构的任务,他们尤其严重。通过完成这些相对可控的子条目,我们可以完成更加困难写报告胡萝卜的总体任务。
创建一个层次的任务的另一种方法是自下而上的。在这种方法中,我们将从一个简单的任务列表,并构造层次结构的分组。
作为一个例子,许多人在工作日上班或上学,所以我们说我们要解决的问题“从床上工作”。如果你是问什么任务你早上从床上工作,你可能会想出以下列表: