乐趣区

关于shell:1-core模块技术方案

命令执行流程

  • 筹备阶段
  • 命令注册
  • 命令执行

    1. 筹备阶段 prepare
    graph TD
     A[查看版本号] 
     --> B(查看 node 版本)
     B --> C(查看 root 启动)
     C --> D(检查用户主目录)
     D --> E(查看入参)
     E --> F(查看环境变量)
     F --> G{查看是否为最新版本}
     G --> |N| I[提醒更新]
     
2. registerCommand
graph TD
   A[注册 init 命令] 
   --> B(注册 publish 命令)
   B --> C(注册 clean 命令)
   C --> D(反对 debug)
3. execCommand
graph TD
   A[start] 
   --> B{是否执行本地代码}
   B --> |N| C[获取缓存目录]
   B --> |Y| D[获取本地代码入口文件]
   C --> E(初始化 Package 对象)
   --> F{package 是否存在}
   F --> |N| G[装置 package]
   F --> |Y| H[更新 package]
   D --> I(获取本地代码的入口文件)
   G --> I
   H --> I
   I --> K{入口文件是否存在}
   K --> |Y| L[生成指令执行代码]
   K --> |N| M[终止执行]
   L --> N[启动新过程执行代码]
   N --> R{执行产生的异样}
   R -->  |Y| P[终止执行, 打印异样]
   R -->  |N| Q[终止执行]
   P --> S(END)
   Q --> S
   M --> S

这个是整个 core 模块的技术计划,如有谬误,敬请领导,写作不易,求赞,md 手画图

退出移动版