软件文档的codechat系统
CodeChat的Python项目详细描述
CodeChat将源代码转换为网页,允许开发人员通过添加标题、格式、超链接、图表、图像和其他形式的丰富内容,将其程序视为一个漂亮的描述性文档,以捕获编写程序过程中自然产生的思想和见解。它还提供了一个可以提前计划的空白板,在将算法提交到代码之前先勾画出一个算法,或者设计出一个可以随着代码的发展而发展的设计文档。这种literate programming范式改变了开发人员的思维方式,将思想与实现混合为代码,极大地提高了程序员的能力。
背景
简单地说,识字编程(lp)是一种认识,即程序是写给其他程序员和为其他程序员编写的文档,而不仅仅是计算机的指令列表。因此,lp工具生成一个格式良好的文档,其中包含与解释性散文混合的代码。Donald Knuth在他的开创性著作paper中引入了使用web工具的识字编程。根据这个paper的图1,web系统接受一个.w文档作为输入,然后生成一个用于编译的“纠结”源文件或一个作为.tex文件的“编织”文档。文档很漂亮;web源代码很难理解(参见图2a-c);源代码完全不可读(参见图3)。尽管多年来开发的大量tools试图解决这些问题,但只有一个LP-inspired变体获得了广泛的接受:文档生成器,如Doxygen和JavaDoc,它直接从源代码中提取文档,而不是像web和大多数lp工具那样从文档中提取源代码。codechat通过直接从代码生成文档、采用人类可读标记(structuredtext)和支持gui使编辑lp文档程序更快更容易来解决这些lp弱点。
教程
CodeChat tutorial引导新用户探索具有编程能力的编解码器。从这里开始!或者,仔细阅读下面的示例,了解codechat如何将简单的源代码转换为漂亮的文档。
示例
使用codechat:
的识字编程的一些示例- 使用toctree指令对CodeChat itself中的所有源文件进行分类
- 使用表帮助设计simple parser。
- 使用编号列表解释simple state machine。
- 使用超链接为所有Sphinx configuration values提供参考信息。
- 使用字体显示setup.pycommands to run
- 使用屏幕截图演示3-D simulation的操作。
- 在scientific computing中使用方程式和图表。
- 使用公式来解释integrator的结果代码。
- codechat用于microprocessors课程中的代码示例。
贡献
这是一个相当基本的实现;需要很多改进!请使用issue tracker报告错误或请求功能;更好的是,贡献给code!
许可证
版权所有(c)2012-2019 Bryan A.Jones。
此文件是codechat的一部分。
codechat是自由软件:您可以根据自由软件基金会发布的gnu通用公共许可证的条款(许可证的第3版或(由您选择)任何更高版本)重新分发和/或修改它。
CoDeCad被分发,希望它是有用的,但没有任何保证;甚至没有对适销性或适合某一特定目的的默示保证。有关更多详细信息,请参阅GNU通用公共许可证。
您应该已经收到了gnu通用公共许可证的副本<;codechat/license>;和codechat。如果没有,请参阅http://www.gnu.org/licenses/。