## 为什么要有技术文档?

优点

1. 如果代码看不下去,那么看文档

2. 对功能模块有一个全局的视角

3. 使项目易于维护

缺点

1. 需要额外的人力来整理文档

2. 需要额外的时间来做文档的变更

so,有没有一种更简单的方式,在现有人力的情况下,在限有时间的前提下,做到技术文档的输出呢?

其实,可以用框架来生成技术文档,这个框架就是 JSduck

JSduck由Sencha开发,因此对于自家extJS具有非常强大的支持功能,包括令人咋舌的实时代码修改。但即使你不是使用extJS进行开发,JSDuck仍然是一个非常强大的工具,一方面它的语法非常灵活,描述支持Markdown语法,上手难度远远低于JSDoc

3;另一方面它生成的文档可读性堪比YUIDoc,同时支持源码的对照,学习起来也非常的容易。要说JSduck有什么不好的地方,估计就是它把一切都Handle太完美了以致于没有给你提供什么可以自己定制的余地。

JSduck 运行原理?

JSduck + 代码注释=文档 JSduck 也是一套程序库,运行这个程序库,它会读取你的源代码中的注释文档,最终生成一套网页文件,这些文件既是文档。

注释规范需以“/*” 开头和“/”结束,不同的注释标签会生成不同的文档内容,JSduck提供了很多注释标签,大部分都是通用的注释标签,例如 @auther 用来指定代码作者,@return 用来描述方法的返回值,@param 用来描述输入参数等等。

安装 JSduck

安装 ruby

从 github 上下载并解压 JSduck,解压目录中 JSdcuck.exe 既是可运行文件

将 JSduck 的运行目录配置到 PATH 当中

运行 JSduck

从 cmd 中输入以下命令即可运行

jsduck —output

JSduck API

JSduck 玩的就是注释符,下面是 JSduck 提供的所有注释符

@abstract用来标记抽象方法或类,通常用于标记还有没实现的方法

@author 指定类/方法的作者

@cfg 用于组件或类的配置描述

@chainable 用于标记一组链路方法,链路方法是什么?我的理解是方法总会返回 this

@class** 标记一个类,JSduck 会根据该标记来生成树的结构图

@constructor 如果为了一个类写了构造函数,那么需要使用改注释符

@deprecated 如果某一个函数不再使用,但是为了不影响线上版本不能删除改方法的情况下,需要将改函数标记为已废弃

@docauthor 类似于 @author,不过 @author 用于代码的作者,该标记用于描述文档的编写者

@event 描述一个事件的定义

@evented 描述一个事件的影响者

@experimental 用于描述一个不稳定的方法,因为改方法可能会在以后的版本中移除掉,以此来警告方法的使用者

@fires 描述某一个方法中,可能会触发某一个事件

@ignore 某些注释只用于开发者阅读,但是并不希望在出现在文档中,可以使用该标记

@link 用于引用其他对象(类,方法,事件等)

@mixins 混合某一个对象的注释

@new 标记某一个最新创建的方法

@protected将成员的可见性记录为受保护。受保护的成员只能从类本身及其子类中使用。

@removed 描述某一个方法在某一个版本中已经移除掉

@return** 描述方法的返回对象

@scss mixin

@since 描述从哪个版本开始加入的新的对象,使用该标记

时,会在文档中自动加入 @new 标记,但不会影响源代码。

@template提供一种作为扩展类的功能的钩子提供的方法。该标签通常与@protected一起使用。

@throws 文件方法抛出的异常。异常类型默认为Object。可以使用多个@throws标签来记录多个可能的异常。

@type** 记录属性的类型,另外将记录的东西标记为属性。 不建议使用此标记。它只支持向后兼容旧的ext-doc。对于新代码,始终使用@property标签。

@uses** 定义文档类使用的类。

@var** 记录SCSS变量:其名称,类型和默认值。

python画风景图_风景侠相关推荐

  1. python画平行坐标图_[宜配屋]听图阁

    平行坐标图,一种数据可视化的方式.以多个垂直平行的坐标轴表示多个维度,以维度上的刻度表示在该属性上对应值,相连而得的一个折线表示一个样本,以不同颜色区分类别. 但是很可惜,才疏学浅,没办法在Pytho ...

  2. python画环形图_用Python把图做的好看点:用Matplotlib画个环形图

    P老板:小Lo啊,你觉得这几个图好看吗 我:好看,好看 P老板:我也觉得,这个月的月报,就用这个把,你给我几个,我看看 我:..... 于是乎,我们今天的目标是什么!!! 画个环形图!!! 今天,我们 ...

  3. python画厢式图_用matplotlib画箱体图(boxplot)

    画boxplot的接口为 matplotlib.pyplot.boxplot,不过在画之前,我需要好好理解一下箱体图所代表的含义和计算方法. 用一个实际的例子来说明如何画boxplot,这个例子来自w ...

  4. python画漏斗图_只需简单几步,教你用python完成漏斗图的绘制

    商业分析中经常会用到漏斗图.尤其是在网站流量监控.电商商品转化等一些数据运营方面.漏斗图之所以是漏斗就就是倒三角的形状,是因为用户或者流量,集中从某个功能点进入,很大可能会按照产品本身设定的流程来完成 ...

  5. python画玫瑰图_央视都在用的“南丁格尔玫瑰图”,原来Python也可以画

    前一阵子,我看到央视新闻中,有一张比较好看数据图,如下: 后来才知道这叫"南丁格尔玫瑰图",是南丁格尔护士在克里米亚战争期间提交的一份关于士兵死伤报告时发明的一种图表. 我心想能不 ...

  6. python画矢量图_使用基于matplotlib的SciencePlots绘制精美图表

    开源项目地址:https://github.com/garrettj403/SciencePlots 安装这个包,需要输入魔法: pip install SciencePlots 例如绘制如下函数,导 ...

  7. python画玫瑰图_三步学会用python画一个简单的玫瑰图

    玫瑰图实际是一种2维极坐标统计图,常用于表示气象.气候现象,如测站的风向频率等.用excel也可以画,但相对麻烦一些,所以当我们需要用到玫瑰图时,我们可以尝试用python来画.首先导入需要用到的包 ...

  8. python画河流图_《Python数据可视化之Matplotlib与Pyecharts》之主题河流图

    11.7.2  不同类型商品销售情况分析 为了分析该企业不同类型商品的销售额情况,绘制了不同商品销售额的主题河流图,Python代码如下: # -*- coding: utf-8 -*- # -*- ...

  9. python画聚类图_用Python进行系统聚类分析

    在进行机器学习时,我们往往要对数据进行聚类分析,聚类,说白了就是把相似的样品点/数据点进行归类,相似度高的样品点会放在一起,这样一个样本就会被分成几类.而聚类分析也有很多种方法,比如分解法.加入法.有 ...

最新文章

  1. 马斯克欢庆特斯拉年交付50万辆!国产三雄创新高,逼近其1/5
  2. h5调用摄像头拍照可以自定义拍照页面吗_回归单摄时代?小米伸缩式摄像头技术曝光,网友:好家伙...
  3. 【客户下单】基于CRM完全匹配地址库实现自动分单
  4. [SCOI2015]情报传递(主席树+lca)
  5. Battery Charging Specification 1.2 中文详解 来源:www.chengxuyuans.com
  6. iOS 中 UIView 和 CALayer 的关系
  7. ug怎么画曲线_UG怎么画雨伞?ug曲面造型实例教程
  8. MMKV_高性能MMKV数据交互分析-MMKV初始化
  9. CTF_crypto常见加密密文特征
  10. Failed to parse time specification
  11. freenom 加 cloudflare免费域名申请
  12. 小码哥C++_反汇编分析
  13. L1-049 天梯赛座位分配 (Python)
  14. android 监听短信并发送到服务器
  15. Android 自定义歌词滚动
  16. 用html5 js实现浏览器全屏
  17. Mac下搭建Texstudio+Textlive(Mactex)
  18. 金蝶apusic9.0版本安装包
  19. Spring @Value读取系统环境变量
  20. 502粘到手上变硬了怎么办_手指被502粘住了?别硬扯,教你2招,胶水自动融化...

热门文章

  1. Hyperlynx学习心得
  2. 请求servlet操作成功后,在JSP页面弹出提示框
  3. lucene相关资料
  4. Wi-Fi当前的趋势及对IT和物联网的影响
  5. kafka安装部署和使用
  6. 解决gpu没有运行进程,但是显存一直占用的方式
  7. H5拖拽地址-高德地图VUE版
  8. ACM常用的解题技巧:尺取法
  9. 深度学习(九) GAN 生成对抗网络 理论部分
  10. Word2010中怎样压缩图片使文件变小