# 脚本开发须知

SuccBI提供了强大的脚本开发能力,恰当的使用脚本功能可以让我们能实现近乎无限的个性化需求。在使用脚本进行二次开发前,需要了解一些前提:

# 需要的技能

脚本二次开发是面向开发者的,需要开发者具备基础的web开发技能,包括:

  • javascriptTypeScript. 不管是开发前端的扩展还是后端的扩展,开发语言都是javascriptTypeScript,其中javascript可使用es6语法进行编写。
  • csshtmljson. 如果需要开发前端扩展还需要基础的前端开发技能基础。

# 前端和后端

系统是B/S架构的,支持前端和后端的二次开发能力,在进行二次开发时前端和后端的二次开发是有所区别的:

前端开发

  1. 前端脚本开发需要用到javascriptTypeScript,推荐TypeScript
  2. 前端脚本文件以.ts.js结尾。
  3. 前端脚本使用TypeScript语法时,系统会编译成浏览器支持的javascript发送给浏览器执行。

后端开发

  1. 后端脚本的语法是TypeScript语法,但是不能使用一些高级语法特性,比如class
  2. 后端脚本是.action.ts
  3. 后端脚本最终是编译成Rhino (opens new window)能理解的js版本并运行在jvm中的,脚本和系统是同一个进程内运行的。
  4. 后端脚本的编译过程会有优化,脚本会编译成java的字节码(即class)运行,所以脚本的执行性能是接近java的原生代码的。
  5. 后端是一个多线程并发环境,脚本的代码和系统代码运行在一个jvm进程中,每次脚本逻辑的调用通常都是一个新的上下文执行环境,所以后端脚本之间不能像前端脚本那样通过全局变量共享信息,如果需要可以使用memcached api。

# 脚本API

为了方便开发者进行二次开发,产品提供了丰富的API。

是否有帮助?
0条评论
评论