腾讯Web前端开发框架JX(Javascript eXtension tools)

转自:Web前端开发-Web前端工程师 » 腾讯Web前端开发框架JX(Javascript eXtension tools)javascript

JX – Javascript eXtension tools

一个相似 Google Closure Library 的 Web 前端开发框架,服役于 WebQQ 等大规模的 WebApp
简介
JX 是模块化的非侵入式Web前端框架,最新开源地址:https://github.com/AlloyTeam/JX。 JX 框架同时适用于 Web Page 和 Web App 项目的开发,特别适合构建和组织大规模、工业级的Web App,腾讯 WebQQ、腾讯Q+等产品都是采用JX框架开发,兼容目前全部主流浏览器。
jx
代码示范
JX 代码组织方式一(传统):css

var J = new Jx();
J.out(J.version);

JX 代码组织方式二(推荐):html

Jx().$package(function(J){
    J.out(J.version);
});

 

设计理念前端

  • 保持最优的执行效率
  • 保持 Javascript 原有的代码风格,下降学习难度
  • 不作任何的过分封装
  • 更好的组织工业级 Javascript 应用程序
  • 探索在前端使用 MVP、MVC 等模式来构建大型 WebApp
  • 探索工业级 Javascript 的开发技术

特性java

  • 微内核设计:内核可彻底分离出来,用于构建其余的框架
  • 原生对象零污染:你懂的,随着js的App越来约复杂,对原生对象的零污染也体现的愈来愈重要了
  • 模块封包:采用命名空间、闭包等方式创建了模块封包的体系,帮助更好的组织海量js代码
  • 模块自由拼装:自身模块作了良好的架构分离,尽量让各个模块之间能够自由的拼装组合
  • 无缝集成各类js框架:与jQuery, YUI, Mootools, Prototype.js 等框架无缝集成;与多种局部框架无缝集成,如:Mini, Sizzle, cssQuery, xpath, JSON 等等
  • 多版本共存:如采用的Jx版本过旧,旧有的Javascript代码不能与新版本Jx兼容,则能够采用多版本共存的方式保持程序的可延续性
  • 分层设计:Javascript核心层,与Javascript解释引擎无关的封装和扩展;浏览器端Javascript层,对浏览器中的Javascript引擎部分的封装和扩展

架构git

  • 第一层:Core Javascript 扩展模块 / 代码组织模块(可用于NodeJs等其余js引擎,轻松组织大型应用,无缝接入其它js库)
  • 第二层:Browser Javascript 扩展模块(跨浏览器,基础封装) / 可选模块(设计模式相关模块,选择器模块…)
  • 第三层:UI 组件 / 实时动画模块 / 游戏引擎模块

发展规划github

  • 核心底层 – 纯Js底层功能封装/代码组织/无缝接入其它js库 – [完成]
  • 基础扩展 – 跨浏览器封装/工具函数/设计模式相关 – [完成]
  • UI 基础控件 – 按钮/面板/窗口/树形列表/Tab/lightbox/widgets…
  • 实时动画系统 – 实时定时器/关键帧动画/加速度公式/物理引擎/声音控制器…
  • 游戏引擎 – 角色控制/地图系统/游戏异步通信系统/寻路算法/键盘控制/人工智能/…

JX 框架源码包格式下载地址算法

.zip
.tar
设计模式

 

相关文档浏览器

相关文章
相关标签/搜索