预项目文件

dea*_*vmc 5 language-agnostic documentation

我有一个问题,我觉得许多程序员可以与......

我参与了许多小规模项目.在我最初的纸脑风暴后,我倾向于开始编码.我想出的通常是实际应用的粗略工作模型.我以断开连接的方式设计所以我在谈论底层代码库,用户界面是最后一件事,因为库通常决定了UI中需要什么.随着我的项目越来越大,我担心我的"规范"或设计文档也应如此.

从我的调查来看,上述段落在互联网上以一种或另一种方式得到了回应.当涉及UI时,会有更多信息,但它是特定于UI的,与代码库无关.我开始意识到,代码可能代码是代码.从我的广泛研究看来,设计文档和代码之间没有1:1的映射.

当我需要研究一个主题时,我将信息转储到OneNote中,并从那里我将功能优先化为版本,然后分配到相关的块中,以便开发以相当线性的方式运行,我的任务往往如下所示:

  1. 实现二进制文件读取器
  2. 实现二进制文件编写器
  3. 创建对象以将表达式的数据封装到调用者

现在任何值得他盐的程序员都知道,在这三个项目之间可能存在一个潜在的代码墙,可以扩展到多个文件.我试图为每个任务映射完整的代码过程,但我认为它不能有效地完成.当一个mangles伪代码时,它本质上是代码,所以时间投资被否定.

所以我的问题是:

我是否正确地假设最好的文档是代码本身.我们都同意需要高级别的概述.这应该有多高?你是设计到陈述,阶级还是概念层面?什么对你有用?

dea*_*vmc 0

最后我发现有几种方法可以解决这个问题,从思维导图到概念图,甚至 UML/伪代码。最后,最适合个人的东西似乎就是应该使用的东西。