Oracle JavaScript扩展工具包(也称为JET)提供给软件开发者们一套模块化的开源工具集,可以用来构建基于行业标准(包括JavaScript、HTML5、层叠样式表CSS)的客户端应用。该工具包包含了Oracle和第三方厂商提供的JavaScript库,用它创建的应用程序能与Oracle产品和服务整合,尤其是便于与Oracle云产品集成。
开发者们可以使用该工具包给现有网页增加可交互性,支持Fusion应用中的网页或者是创建端对端的网页应用。Oracle JET还能用来构建混合移动应用,使应用在移动设备上看起来与原始应用非常相似。
Oracle JET框架包含消息处理、缓存、过滤器和排序等服务。它还支持JavaScript日志、弹出窗口处理、数据转换、组件校验以及其它许多功能特性。此外,Oracle JET提供了使用WebSocket和REST这类web服务做互联的支持。
Oracle JET特性和功能
Oracle JET还包含专门处理用户界面(UI)的功能。例如,你可以找到组件实现Oracle Alta UI设计系统,它是整个Oracle技术中实施一致性用户体验的一组规范和***实践。工具包还提供了对可访问性和本地化标准的支持,例如Oracle翻译服务格式和双向支持,后一项功能支持指定应用程序中使用的语言是从右向左读还是从左向右读,然后会自动根据该语言原来的方向相应显示。
JET技术支持表单布局结构,使开发者们可以构建响应式web应用,使用流式表格、可变大小的图片元素和CSS媒体查询,可以根据媒体类型有条件地装饰布局。例如,可以全屏或者展示手掌大小的显示。响应式设计有助于实现更可用、支持各种类型设备显示更友好的应用程序。
响应能力可以扩展到混合移动应用中,这就使得在多种不同目标设备和屏幕尺寸上设计应用更加容易了。有了Oracle JET,开发者们可以在Apache Cordova移动应用开发框架中构建混合应用,用于iOS、Android和Windows移动设备。这些应用可以支持UI行为和交互手势,例如敲击屏幕可以触发数据加载或者拖动刷新操作。
Oracle JET提供指导手册介绍了所有JET组件的资源库,其中有很多代码片段可以复制粘贴到JET应用程序中。开发者们可以查看HTML效果和对应JavaScript代码样例。它还提供了编辑功能,你可以在线修改代码脚本直接查看显示效果,无需下载。
Oracle JET包含的库
Oracle JET自带访问Oracle产品和服务需要的所有库和文件,包括内部部署的Oracle或者云环境中的情况。此外,该工具包包含数据可视化组件,该组件来自于Oracle应用开发框架和各种类型文件(例如Polyfills,它可以扩展浏览器功能)。
它还提供CSS和Sassy CSS(SCSS)文件实现Alta主题。SCSS是Sass3.0版中引入的语法。Sass全名是Syntactically Awesome Style Sheets,Sass预处理器会生成Oracle JET发布包中的CSS文件,用到的SCSS配置文件也在JET工具包中一并提供了。
Oracle JET平台集成了许多JavaScript库,其中许多都是开源的第三方库,开发者们可以根据他们的需要灵活选用。其中最重要的一个部件是jQuery,它可以使处理HTML文档更容易,还可以组织动画、处理事件,并方便使用异步JavaScript和XML开发方法。
Oracle JET包含了jQuery UI库,提供了一组UI主题、效果、小部件和交互功能,可以灵活快速地部署使用。基于jQuery,Oracle JET提供的UI库有70多种组件可以帮助增加数据入口、数据可视化和响应式UI设计。
此外,Oracle JET中带有Knockout库,提供了组件之间的绑定,更容易把模型数据关联到DOM元素。这就使得随着模型的状态改变应用程序可以自动更新UI展示。Knockout还支持开发者定义模型数据和生成嵌套UI元素之间的关系链,这是数据的一部分职能。 RequireJS库也是Oracle JET包的一部分,作为模块加载引擎管理库引用,最终实现改善代码速度和质量的效果。有了RequireJS,开发者们可以更好地控制加载到应用中的库,使用滞后加载延迟模块初始化,创建包含多个模块的JavaScript分区。
Hammer是Oracle JET支持的另外一个库,它给工具包带来了单点和多点触摸手势支持触摸屏功能,支持自定义手势。
Oracle JET插件扩展能力
Oracle JET框架库还自带有增强组件功能。例如,该平台提供了通用模型层用来绑定REST和WebSocket数据源。它还提供了许多UI组件、模式和工具可以在Oracle JET应用中使用。此外,它支持OAuth授权协议(一种开放的安全标准协议)管理私有数据,还有一些安全***实践可以增强各种应用组件的安全性。
Oracle JET遵从模型—视图—视图模型(MVVM)架构设计模式,该模式分离了用户界面控制和功能逻辑。MVVM有三个组成部分:模型、视图和视图模型。在这种场景中,模型代表了应用数据,视图代表数据展现。该工具包模块化的框架设计对这种模式支持良好,同时支持开发者选择使用框架中应用效果***的部分。
Oracle JET是开源项目,可以基于Oracle开发的统一许可授权免费发布。该工具包主要定位是中高级JavaScript开发者,方便他们构建基于Oracle的客户端应用。
对那些适合以上框架功能描述的场景,Oracle JET可以帮助标准化基于JavaScript的开发,促进整体工作。既然工具包是免费发布的,组织试着用一下是没有什么损失的。