How to write complex softwarea day agohttps://grantslatton.com/how-to-software首先编写玩具驱动程序,以发现解空间的物理约束从栈顶(UI或API)开始实现,并向下推进按层实现软件,每层剥离最小逻辑,并将复杂性向下委托编写某一层时,将下一层的API定义为当前层最理想的领域特定语言在编写当前层时,先存根下层接口,然后递归地实际实现它仅对IO部分使用可模拟的抽象接口;其余部分应为具体实现该方法能尽早获得部分可运行的软件,并自然地在工程师之间进行委托如果某层的API无法实现,则回溯并重新设计上一层的API