# 脚本开发须知
SuccBI提供了强大的脚本开发能力,恰当的使用脚本功能可以让我们能实现近乎无限的个性化需求。在使用脚本进行二次开发前,需要了解一些前提:
# 需要的技能
脚本二次开发是面向开发者的,需要开发者具备基础的web开发技能,包括:
javascript
或TypeScript
. 不管是开发前端的扩展还是后端的扩展,开发语言都是javascript
或TypeScript
,其中javascript
可使用es6语法进行编写。css
、html
、json
. 如果需要开发前端扩展还需要基础的前端开发技能基础。
# 前端和后端
系统是B/S架构的,支持前端和后端的二次开发能力,在进行二次开发时前端和后端的二次开发是有所区别的:
前端开发:
- 前端脚本开发需要用到
javascript
或TypeScript
,推荐TypeScript
。 - 前端脚本文件以
.ts
或.js
结尾。 - 前端脚本使用
TypeScript
语法时,系统会编译成浏览器支持的javascript发送给浏览器执行。
后端开发:
- 后端脚本的语法是
TypeScript
语法,但是不能使用一些高级语法特性,比如class
。 - 后端脚本是
.action.ts
。 - 后端脚本最终是编译成Rhino (opens new window)能理解的js版本并运行在jvm中的,脚本和系统是同一个进程内运行的。
- 后端脚本的编译过程会有优化,脚本会编译成
java
的字节码(即class
)运行,所以脚本的执行性能是接近java的原生代码的。 - 后端是一个多线程并发环境,脚本的代码和系统代码运行在一个jvm进程中,每次脚本逻辑的调用通常都是一个新的上下文执行环境,所以后端脚本之间不能像前端脚本那样通过全局变量共享信息,如果需要可以使用
memcached
api。
# 脚本API
为了方便开发者进行二次开发,产品提供了丰富的API。
0条评论
评论