Giter Club home page Giter Club logo

quanttide-specification-of-document-engineering's Introduction

量潮文档标准

为量潮及其合作伙伴提供文档格式规范和文档工程标准。 文档格式基于Jupyter BookMyST Markdown拓展。 文档工程标准主要用于解决文档解析和渲染问题。

quanttide-specification-of-document-engineering's People

Contributors

guo-zhang avatar

Watchers

 avatar

quanttide-specification-of-document-engineering's Issues

腾讯文档导入

需要制定一套腾讯文档转换成Markdown的规范,以方便我们把通过文档写的草稿转成正式文档进入Git管理。

新增文档项目类别练习题

简介

动机

主要用于量潮课堂和量潮创课坊的练习题研发流程。

主要内容

1.原始项目结构。
2.如何解析成Markdown语法树AST。
3.程序中如何使用此AST。

项目格式规范

配置文件定义

category: exercise

目录定义

<lecture_name>/
|-- fibonacci.py
|-- test_fibonacci.py
|-- SOLUTION.md
|-- README.md

每个练习题都有一个编号,和一个对应的目录,该目录下包含以下文件和子目录:

  • README.md:练习题的要求、输入和输出格式等;
  • SOLUTION.md:练习题的答案和解法(仅用于参考);
  • .py:练习题的 Python 代码;
  • test_<>.py:单元测试模块,包含一个或多个测试用例文件。

待解决问题:

  1. 是否和教程仓库的文件夹组织保持一致。上述做法会丢失章节信息,但是更方便组织章节练习。
  2. SOLUTION.md待定。

GitOps流程

分支规则

主干分支发布。

开发

正常像一个Python程序开发即可。测试和答案分开或者合并,根据实际开发情况决定。

测试

主要难点是设计一个测试规则。unittest的discovery似乎只在Python模块里生效,这里需要手写CLI来实现auto-discovery。

发布

正常发布即可。

部署

关键点。主要由解析出的AST语法树决定,因此定义Domain Model和AST就十分关键了。

AST解析

暂无思路,需要讨论。

其他问题

  • 教程和练习题组合成课程的结构,以及对应的课程研发平台和课程平台的设计。

文档分类字段

_config.yml文件定义。

  • type: 类型。defaultcustom保留,计划定义的类型有tutorial
  • category: 类别。用户自己定义。
  • tag: 标签。取消预定义的方式,用户自己定义。

文档工程标准提纲

  1. 文档格式标准,包括文章level和书籍level。
  2. 文档解析器
  3. 文档生命周期及其维护
  4. 其他重要定义

Book领域模型

一个文档项目(DocProject)可以由一本书或者多本书组成,“书本"Book是发表单位。

可以包括的字段:

  • title/title_cn/title_en: 书名,比如Data Anaytics with Python/使用 Python 进行数据分析。
  • subtitle: 副标题。书名常见的一句话。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.