《代码即文档》学习研究

举报
Jet Ding 发表于 2020/09/29 15:02:09 2020/09/29
【摘要】 用命名约定来代替明确的注释,使代码的逻辑对人类读者更加清楚。

在计算机程序设计中,自文档化(或自描述)的源代码和用户界面遵循命名惯例和结构化的程序设计惯例,可以在不需要事先掌握特定知识的情况下进入角色进行工作。

在网络开发中,自文档化是指网站通过公开文档公开其创建的整个过程,其公开文档是开发过程的一部分。

常见的自文档系统的目标包括:

  • 让源代码更容易阅读和理解。

  • 尽量减少维护或扩展遗留系统所需的工作量。

  • 减少系统的用户和开发人员查阅二级文档来源(如代码注释或软件手册)的需要。

  • 通过自成一体的知识表征促进自动化。

自文档化代码是使用人类可读的名称来编写的,一般由一个反映符号含义的人类语言短语组成,如article.numberOfWords或TryOpen。代码还必须有一个清晰简洁的结构,以便人类读者能够很容易理解所使用的算法。

自文档化系统的目标能否实现以及实现的情况如何,取决于如下的因素:

  • 命名惯例的统一性。

  • 一致性。

  • 应用范围和系统要求。

下面是一个非常简单的自文档代码的例子,使用命名约定来代替明确的注释,使代码的逻辑对人类读者更加清楚:

size_t count_alphabetic_chars(const char *text)
{
    if (text == NULL)
        return 0;
 
    size_t  count = 0;
 
    while (*text != '\0')
    {
        if (is_alphabetic(*text))
            count++;
        text++;
    }
 
    return count;
}
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。