发布了一款库(或工具包),如何持续地编写更新日志(ChangeLog)?

栏目: IT资讯 · 发布时间: 7年前

内容简介:据说程序员最讨厌的两件事是 “别人没有写文档” 和 “要我写文档”。编写更新日志可是也落入此怪圈呢!来自 GitHub 的开源调查问卷结果直接显示,最令人头痛的莫过于文档了:

据说 程序员 最讨厌的两件事是 “别人没有写文档” 和 “要我写文档”。

编写更新日志可是也落入此怪圈呢!

程序员不写文档

来自 GitHub 的开源调查问卷结果直接显示,最令人头痛的莫过于文档了:

Incomplete or outdated documentation is a pervasive problem, observed by 93% of respondents, yet 60% of contributors say they rarely or never contribute to documentation. When you run into documentation issues, help a maintainer out and open a pull request that improves them.

▲ 来自 http://opensourcesurvey.org

自动化

我曾经试图找到一些自动化的方式来生成更新日志,例如:

  • 查找 git 提交日志
  • 查找 issues 问题

然而,这样生成的日志真难看懂!不信你试着把一个项目的 Issues 列表读一遍?

更新日志应该包含哪些内容

站在库的使用者的角度来看,程序员们希望看到什么样的更新日志,不希望看到什么样的更新日志?

  1. 添加的接口
  2. 现有接口的改变
  3. 未来即将删除的接口
  4. 此版本已经删除的接口
  5. 此版本修复的 Bug
  6. 此版本的安全性改进

然而这些都写了会让编写者很痛苦的……

手工和自动化的结合

当存在 API 比较 工具 的时候,我们可以很容易地比较各个版本间 API 的变化,包括新增、改变、即将移除和已经移除。而这部分的内容由工具生成是没什么阅读障碍的。

另一部分,描述功能的手工编写会比较容易阅读。例如新增的功能、修改的功能、已经删除的功能。

优秀文档的参考

以下是 UWP 的开发文档,属手工和自动化结合生成。

发布了一款库(或工具包),如何持续地编写更新日志(ChangeLog)?

本文会经常更新,请阅读原文: https://walterlv.github.io/post/how-to-write-changelog-and-keep-it-updating.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

发布了一款库(或工具包),如何持续地编写更新日志(ChangeLog)? 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://walterlv.github.io ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系


以上所述就是小编给大家介绍的《发布了一款库(或工具包),如何持续地编写更新日志(ChangeLog)?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编译原理

编译原理

Alfred V. Aho、Monica S.Lam、Ravi Sethi、Jeffrey D. Ullman / 赵建华、郑滔、戴新宇 / 机械工业出版社 / 2008年12月 / 89.00元

本书全面、深入地探讨了编译器设计方面的重要主题,包括词法分析、语法分析、语法制导定义和语法制导翻译、运行时刻环境、目标代码生成、代码优化技术、并行性检测以及过程间分析技术,并在相关章节中给出大量的实例。与上一版相比,本书进行了全面的修订,涵盖了编译器开发方面的最新进展。每章中都提供了大量的系统及参考文献。 本书是编译原理课程方面的经典教材,内容丰富,适合作为高等院校计算机及相关专业本科生及研......一起来看看 《编译原理》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具