文学编程

use*_*688 11 .net ide ms-word literate-programming

文学编程是一种开发软件的方法,其中文档首先出现,然后是编码.一个人编写代码片段的文档,然后编写代码片段的实现.软件源代码的视觉外观将是一个简单的文档,如word,其中包含代码段落.

我正在尝试将我工作的开发工具转换为仅使用文字编程,因为它为代码可读性和维护带来了巨大的优势.但是,由于缺乏工具,LP的使用在公司中受到限制.例如,编程识字的理想方法是使用单词标记编写段落,然后插入带有实现的子段.但我似乎无法找到VS200x执行LP的任何好工具.

理想情况下,这样的工具看起来就像Word 2007,但集成到IDE中.当编码器将光标设置在代码段落上时,它将提供所有功能,就像我们现在在IDE中一样.

什么是LP的好工具,特别是.NET和VS200x?

Jay*_*uzi 13

感谢您尝试改善团队的工作方式.只要您尝试这样做,您就会比不这样做更有优势.

我曾经为一个项目使用过Literate Programming.这真的很难,结果非常好.似乎是一个合理的权衡.

然而,今天我宁愿采取不同的方法:而不是为人类散文和机器代码,我宁愿编写清晰的代码,以至于人类不介意阅读它.当我觉得写评论的冲动时,我想"我可以让这个代码更清晰".这意味着我写的文档更少,而不是更多.

好吧,祝你选择任何道路都好运.


gbj*_*anb 7

我只能建议您使用doxygen注释标记代码,然后您可以从代码中生成文档,我知道这几乎是向后执行所需操作的方式,但至少您最终得到了所需的结果:代码和文档来自相同的源文件.显然,这样做的好处是,您可以使用现有的IDE进行编码,这些编码带有所有常用的代码友好型产品.

如果您正在尝试转换您的开发团队,这种方法可能比完整的文化方法更容易吞下,他们仍然对编码相同感到满意,但他们必须编写更好的文档嵌入在码.

这是我能建议的最好的,看看你的团队对这个想法的看法.


Ste*_*owe 5

+1 用于尝试改进您团队的流程

-1 走死路

尊重 Knuth,单元测试优于文档

  • 单元测试不会过时
  • 在调试时用散文污染代码是一个巨大的干扰
  • 如果你的代码真的需要那么多的说明,那么它可能设计得很差并且有缺陷

  • -1 对于你的三个错误项目:单元测试实际上可能会过时;散文可以帮助您了解正在发生的事情,即使是在调试会话中;将某些代码背后的想法暴露给人类(不要与代码范围混淆)确实会使设计变得更好。 (6认同)
  • 呵呵。至于“单元测试不会过时”,我整个上午都在试图让我的旧单元测试与其他人修改的合同工作项目相关联,而没有检查我的测试。 (5认同)