169it科技资讯
169it -->


当前位置:  软件>JavaScript软件

腾讯Web前端框架库 JX

    来源:    发布时间:2015-02-08

by Tencent AlloyTeam

简介

JX 是模块化的非侵入式Web前端框架,开发于2008年,并于2009年开源于GoogleCode - http://code.google.com/p/j-et/,于2012年切换到Github,开始我们开源计划的新征途,请记住我们的最新开源地址:https://github.com/AlloyTeam/JX,欢迎访问我们的团队Blog - http://www.alloyteam.com/2012/06/jx-framework/,谢谢大家来支持^_^。

JX 框架同时适用于 Web Page 和 Web App 项目的开发,特别适合构建和组织大规模、工业级的Web App,腾讯 WebQQ -http://web.qq.com、腾讯 Q+ http://www.QPlus.com 等产品都是采用JX框架开发,兼容目前所有主流浏览器。

 命名含义
  • JX 是 Javascript eXtension tools 的缩写,即 Javascript 扩展工具套件的意思。

设计理念
  • 保持最优的执行效率

  • 保持 Javascript 原有的代码风格,降低学习难度

  • 不做任何的过度封装

  • 更好的组织工业级 Javascript 应用程序

  • 探索在前端使用 MVP、MVC 等模式来构建大型 WebApp

  • 探索工业级 Javascript 的开发技术

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

  • 原生对象零污染:你懂的,随着js的App越来约复杂,对原生对象的零污染也体现的越来越重要了

  • 模块封包:采用命名空间、闭包等方式建立了模块封包的体系,帮助更好的组织海量js代码

  • 模块自由拼装:自身模块做了良好的架构分离,尽可能让各个模块之间可以自由的拼装组合

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

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

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

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

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

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

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

相关文档
  • CheatSheet:http://alloyteam.github.com/JX/doc/jx_cheatsheet.html

  • 核心文档:http://alloyteam.github.com/JX/doc/core/index.html

  • UI库文档:http://alloyteam.github.com/JX/doc/ui/index.html

  • 代码规范:http://alloyteam.github.com/JX/doc/specification/google-javascript.xml

架构

第一层:Core Javascript 扩展模块 / 代码组织模块(可用于NodeJs等其他js引擎,轻松组织大型应用,无缝接入其它js库)

第二层:Browser Javascript 扩展模块(跨浏览器,基础封装) / 可选模块(设计模式相关模块,选择器模块…)

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

发展规划
  • 核心底层 - 纯Js底层功能封装/代码组织/无缝接入其它js库 – [完成]

  • 基础扩展 - 跨浏览器封装/工具函数/设计模式相关 – [完成]

  • UI 基础控件 - 按钮/面板/窗口/树形列表/Tab/lightbox/widgets…

  • 实时动画系统 - 实时定时器/关键帧动画/加速度公式/物理引擎/声音控制器…

  • 游戏引擎 - 角色控制/地图系统/游戏异步通讯系统/寻路算法/键盘控制/人工智能/…

设计原则
  • 不要重复自己(Don’t Repeat Yourself) 业界已经有很多优秀的局部框架,比如JSON、Mini Selector Engine、SWFObject、

谁在用JX
  • 腾讯 WebQQ

  • 腾讯 Q+

感谢

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

Tencent Alloy Team 2012

本页相关标签:

    
相关技术文章:
    ▪书本翻页效果 Turn.js

     Turn.js 是一个轻量级的 (15kb) jQuery/html5 插件用来创建类似书本和杂志翻页效果,支持触摸屏设备。 Turn.js 支持硬件加速来让翻页效果更加平滑。 可通过 API 来获取当前显示的页号,并提供选项来定制默认页号、加速器、阴影和延时。 翻页效果截图: 使用方法: ......


    ▪网易游戏服务器开发框架 Pomelo

     pomelo 是由网易开发的基于node.js开发的高性能、分布式游戏服务器框架, 也可作为高实时web应用框架。 Pomelo的应用范围 pomelo最适合的应用领域是网页游戏、社交游戏、移动游戏的服务端,开发者会发现pomelo可以用如此少的代码达到强大的扩展性和伸缩性。当然还不仅仅是游戏,很多人断言未来的web时代是实时web应用的时代, 我们发现用pomelo开发高实时web应用也如此合适, 而且伸缩性比......


    ▪扁平风格 UI 工具包 Flat UI

     Flat UI是一套精美的扁平风格 UI 工具包,基于 Twitter Bootstrap 实现。这套界面工具包含许多基本的和复杂的 UI 部件,例如按钮,输入框,组合按钮,复选框,单选按钮,标签,菜单,进度条和滑块,导航元素等等。 ......


 
最新技术文章:
    ▪可视化HTML编辑器 KindEditor

     KindEditor 是一套开源的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果,开发人员可以用 KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。 KindEditor 使用 JavaScript 编写,可以无缝地与 Java、.NET、PHP、ASP 等程序集成,比较适合在 CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用。 主要特点 快速:体积小,加载速度快 开源:开放源代码,高水平,高品质 底层:内置自定义 DOM 类库......


    ▪jQuery弹出窗口插件 FancyBox

     FancyBox是一款基于jquery开发的类Lightbox插件。支持对放大的图片添加阴影效果,对于一组相关的图片添加导航操作按纽,该lightbox除了能够展示图片之外,还可以展示iframed内容, 通过css自定义外观。 相对与Lightbox而言,阴影效果更好。但是比Lightbox绚丽。 使用很是简单,可以参照Lightbox,修改添加代码。 示例代码: $(document).ready(function() { /* This is basic - uses default settings */ $("a#single_image").fancybox(); /* Using custom settings */ $("a#inline").fancybox({ 'hideOnContentClick': true }); $("a.group").fancybox({ 'zoomSpeedIn'......


    ▪Yahoo UI库 YUI

     Yahoo! UI Library (YUI) 是一个开放源代码的 JavaScript 函数库,为了能建立一个高互动的网页,它采用了AJAX, DHTML 和 DOM 等程式码技术。它也包含了许多 CSS 资源。使用授权为 BSD许可证 YUI 包含完整的说明文件。它包含了两种元件: 工具与控件[2],和一些 CSS 资源。 工具 动画 协助达成位置移动、大小改变、透明度和其他的网页效果。 浏览器历史纪录管理工具 ......


 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2015,169IT.COM,站长邮箱:www_169it_com#163.com(请将#改为@)

浙ICP备11055608号