面向需求编程

无论是设计阶段还是编码节点,都要遵循一定的逻辑,先做什么后做什么。

在设计阶段,首先要明确具体的需求是什么。功能需求和非功能需求。然后才可以进行概要设计和细节设计。

在编码阶段,最上层接口根据设计文档定义。在实现过程中,相当于撰写下层接口的需求说明,期望下层接口返回什么内容,可以提供给下层接口哪些值。然后再去定义下层接口。这样往复循环就可以完成分层设计中的每一层。前提是需要提前设计好每一层、每一个模块的功能边界。

一种方法是遵循自顶向下的设计和自底向上的实现,但这种方法需要在写设计文档的时候就明确每个模块之间的交互。这是一种标准的设计和实现方法。

但现实是,一些内容只有在编写的时候才会知道每个类之间的交互是怎样的,有哪些方法需要抽象出新的类,类中每个方法的入口和返回值是什么。

所以可以遵循自顶向下的设计实现。即首先编写最上册的设计,然后进行实现,实现过程中对下层接口的需求就是对下层接口的需求。