Skip to content
JX(Javascript eXtension tools) 是模块化、非侵入式Web前端框架,适合构建和组织工业级大规模的Web App
Find file
Pull request Compare This branch is 87 commits behind AlloyTeam:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
assets
demo
docs
js
public
tools
.gitignore
README.markdown
base64.js
compile.py
config.js
config.py
css_encode.html
index.html
sdk.js

README.markdown

JX(Javascript eXtension tools - Javascript 扩展工具库)

站在巨人的肩上 Standing on shoulders of giants

简介

JX 是模块化的非侵入式Web前端框架,开发于2008年。JX框架同时适用于 Web Page 和 Web App 项目的开发,特别适合构建和组织大规模、工业级的Web App,腾讯 WebQQ [http://web.qq.com] 等产品都是采用JX框架开发,兼容目前所有主流浏览器。

命名含义

  • JET 是 Javascript eXtension tools 的缩写,即 Javascript 扩展工具套件的意思。

设计理念

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

特性

  • 微内核设计:内核可完全分离出来,用于构建其他的框架

  • 自由拼装各个模块

  • 命名空间、原生对象零污染

  • 无缝集成各种js框架:与jQuery, YUI, Mootools, Prototype.js 等框架无缝集成;与多种局部框架无缝集成,如:Mini, Sizzle, cssQuery, xpath, JSON 等等

  • 多版本共存:如采用的Jx版本过旧,旧有的Javascript代码不能与新版本Jx兼容,则可以采用多版本共存的方式保持程序的可延续性

  • 分层设计:Javascript核心层,与Javascript解释引擎无关的封装和扩展;浏览器端Javascript层,对浏览器中的Javascript引擎部分的封装和扩展

架构

|| 第一层 || Core Javascript 扩展模块 || 代码组织模块(轻松组织大型应用,无缝接入其它js库) ||

|| 第二层 || Browser Javasccript 扩展模块(跨浏览器,基础封装) || 可选模块(设计模式相关模块,选择器模块...) ||

|| 第三层 || UI 组件 || 实时动画模块 || 游戏引擎模块 ||

代码示范

  • JX 代码组织方式一(传统):

    var J = new Jx();
    J.out(J.version);
    
  • JX 代码组织方式二(推荐):

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

发展规划

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

设计原则

  • 不要重复自己(Don’t Repeat Yourself)

谁在用JX

感谢

感谢团队每一位成员做出的努力,有你我们会更精彩!

Tencent Alloy Team 2012

Something went wrong with that request. Please try again.