如何写好 README (开发文档书写规范)

2024-05-27 07:48

本文主要是介绍如何写好 README (开发文档书写规范),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

推荐文章:

Art of README



作者:园长
链接:https://zhuanlan.zhihu.com/p/22900142
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

简评:因为 README,6 个月后的你仍然知道当初写了什么;因为 README,其他人看一眼就能知道是否需要;因为 README,让你的代码更有质量;因为 README,你成了个作家。

README 是一种说明文件,通常随着一个软件而发布,里面记载有软件的描述或注意事项。这种档案通常是一个纯文字文件,被命名README.TXT、README.1ST或READ.ME等等;但也有RTF或DOC格式的读我档案。它的档名通常是以大写英文来命名的,因为大写英文字母比小写有着较小的ASCII码;亦因此在一些以ASCII排序档案的环境里,它能被保证被列在档案列表的第一位。这种档案的特殊命名使任何人能第一时间发现并阅读这个档案,即使他们本身并没有关于 README 的相关知识。

README 应该要简短,并且能够节省时间。

完整的 README 应该包括以下:

  • 项目和所有子模块和库的名称(对于新用户,有时不同命名会导致混乱)
  • 对所有项目,和所有子模块和库的描述
  • 如何使用 5-line code(如果是一个库)

  • 版权和许可信息(或阅读许可证)

  • 抓取文档指令

  • 安装、配置和运行程序的指导

  • 抓取最新代码和构建它们的说明(或快速概述和「阅读 Install」)

  • 作者列表或「Read AUTHORS」

  • 提交bug,功能要求,提交补丁,加入邮件列表,得到通知,或加入用户或开发开发区群的介绍

  • 其他联系信息(电子邮件地址,网站,公司名称,地址等)

  • 一个简短的历史记录(更改,替换或者其他)

  • 法律声明

Apache HTTP Server 的 README 和 GNU 的README 都很简洁清晰。

对于格式,我个人尽可能的坚持 UNIX 的传统,而且在 github 上用 Markdown 格式。

举个例子:

  • 如果用英文写的文档,只用 ASCII
  • 如果可能写不同语言,比如README.ja
  • 每行少于 80 个字符
  • 段落之间空行
  • 标题下划线
  • 使用空格而不是 tab 锁紧(对此园长怀疑作者是空格神教的)

把以上结合起来就成了:

Documentation
-------------GNU make is fully documented in the GNU Make manual, which is contained
in this distribution as the file make.texinfo.  You can also find
on-line and preformatted (PostScript and DVI) versions at the FSF's web
site.  There is information there about ordering hardcopy documentation.http://www.gnu.org/http://www.gnu.org/doc/doc.htmlhttp://www.gnu.org/manual/manual.html 

最后贴上wiki对README的定义:

A readme (or read me) file contains information about other files in a directory or archive and is very commonly distributed with computer software.

and it lists the following contents:

  • configuration instructions
  • installation instructions
  • operating instructions
  • a file manifest
  • copyright and licensing information
  • contact information for the distributor or programmer
  • known bugs
  • troubleshooting
  • credits and acknowledgements
  • a changelog

本文翻译自:How to write a good README(stackoverflow)

这篇关于如何写好 README (开发文档书写规范)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1006874

相关文章

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

使用EasyPoi快速导出Word文档功能的实现步骤

《使用EasyPoi快速导出Word文档功能的实现步骤》EasyPoi是一个基于ApachePOI的开源Java工具库,旨在简化Excel和Word文档的操作,本文将详细介绍如何使用EasyPoi快速... 目录一、准备工作1、引入依赖二、准备好一个word模版文件三、编写导出方法的工具类四、在Export

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

C++读写word文档(.docx)DuckX库的使用详解

《C++读写word文档(.docx)DuckX库的使用详解》DuckX是C++库,用于创建/编辑.docx文件,支持读取文档、添加段落/片段、编辑表格,解决中文乱码需更改编码方案,进阶功能含文本替换... 目录一、基本用法1. 读取文档3. 添加段落4. 添加片段3. 编辑表格二、进阶用法1. 文本替换2

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Python实现自动化删除Word文档超链接的实用技巧

《Python实现自动化删除Word文档超链接的实用技巧》在日常工作中,我们经常需要处理各种Word文档,本文将深入探讨如何利用Python,特别是借助一个功能强大的库,高效移除Word文档中的超链接... 目录为什么需要移除Word文档超链接准备工作:环境搭建与库安装核心实现:使用python移除超链接的

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

C#实现一键批量合并PDF文档

《C#实现一键批量合并PDF文档》这篇文章主要为大家详细介绍了如何使用C#实现一键批量合并PDF文档功能,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言效果展示功能实现1、添加文件2、文件分组(书签)3、定义页码范围4、自定义显示5、定义页面尺寸6、PDF批量合并7、其他方法