如何写好 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

相关文章

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

Python操作PDF文档的主流库使用指南

《Python操作PDF文档的主流库使用指南》PDF因其跨平台、格式固定的特性成为文档交换的标准,然而,由于其复杂的内部结构,程序化操作PDF一直是个挑战,本文主要为大家整理了Python操作PD... 目录一、 基础操作1.PyPDF2 (及其继任者 pypdf)2.PyMuPDF / fitz3.Fre

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

C#监听txt文档获取新数据方式

《C#监听txt文档获取新数据方式》文章介绍通过监听txt文件获取最新数据,并实现开机自启动、禁用窗口关闭按钮、阻止Ctrl+C中断及防止程序退出等功能,代码整合于主函数中,供参考学习... 目录前言一、监听txt文档增加数据二、其他功能1. 设置开机自启动2. 禁止控制台窗口关闭按钮3. 阻止Ctrl +

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

Java操作Word文档的全面指南

《Java操作Word文档的全面指南》在Java开发中,操作Word文档是常见的业务需求,广泛应用于合同生成、报表输出、通知发布、法律文书生成、病历模板填写等场景,本文将全面介绍Java操作Word文... 目录简介段落页头与页脚页码表格图片批注文本框目录图表简介Word编程最重要的类是org.apach

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

Python Pillow 库详解文档(最新推荐)

《PythonPillow库详解文档(最新推荐)》Pillow是Python中最流行的图像处理库,它是PythonImagingLibrary(PIL)的现代分支和继承者,本文给大家介绍Pytho... 目录python Pillow 库详解文档简介安装核心模块架构Image 模块 - 核心图像处理基本导入