`
star65225692
  • 浏览: 267713 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类

百度JavaScript库的设计与应用

阅读更多

百度自99年成立到现在,前端产品有很多遗留的代码。一方面是为了解决这些遗留代码,另一方面是为了更好的设计产品,让工程师快速开发出好的可持续维护的前端产品。百度前端通用技术组设计了他们的JS库——Tangram

百度的JS代码可以分为四层:

● 第一层:Base基础库,职能单一的基础方法。为其他层提供基本的操作支持。

● 第二层:Component,跨产品线级别的通用组件。

● 第三层:Widget,不包含任何业务代码,是一种能够让所有产品线方便开发的机制。

● 第四层:App,业务逻辑,前面三层都是为这一层服务的。

接下来,雷志兴开始介绍Tangram库的设计特点。

● 提供容易封装的静态方法。

● 按需装载,保证从中调出的代码都是最小的。

● 增加兼容性,实现与现有的系统零冲突。

● 尽量拆分控件功能特性,让所有特性实现可插拔

● 提供多种初始化方式,让用户根据自己的需要选择。

最后,雷志兴又对他们的UI系统结构做了简单介绍。通过建立这样一个适合百度所有产品的库,不仅能让产品线高效开发JavaScript,而且也让前端项目变的持续可维护。Xoom推出Android的平板冲击开始为苹果把手套关闭

Qunar的JavaScript模块化之路

胡金埔是去哪儿网的前端架构师、前端组负责人,他在本期沙龙跟大家分享的是去哪儿网建设JavaScript库的实践经验。在分享的开始,胡金埔先给大家看了一段糟糕的代码,引出这次分享的话题。

用LabJs实现更好的加载,采用Ant、Rake、Nginx等实现文件的压缩和合并。如果做到这些,对前端开发来说是不是就足够了呢?这样的话,对一个简单页面来说是足够的,但是对于现在的富客户端只能说是可能足够。女装品牌排行榜

在去哪儿网产品发展的过程中,他们也采用过许多优秀的JavaScript开源框架,但因为缺乏具体的针对性,一些老代码的维护工作变的非常繁重。 在产品开发的实践过程中,去哪儿网开发出了自己的JavaScript库Module.js和Qtest。胡金埔在沙龙现场向大家分享和演示了 Module.js和Qtest,并特别介绍了Qtest。

Qtest是一个基于本地浏览器的JavaScript测试工具,具有以下优点:人人

● 基于Qunit

● 真实浏览器环境(可测试多个浏览器)

● 可方便的添加插件(Jshint、Keywords)

● 支持Rake(使用Ruby语法)
分享到:
评论

相关推荐

    JavaScript忍者秘籍

    本书是jQuery库创始人编写的一本深入剖析JavaScript语言的书。, 本书共分四个部分,从准入训练、见习训练、忍者训练和火影训练四个层次讲述了逐步成为JavaScript高手的全过程。全书从高级Web应用程序开发者所面临的...

    基于JavaScript的百度AI的人脸识别微信小程序(深度学习+机器视觉)含全部工程源码及视频演示(仅供学习)

    1.项目使用百度 AI 训练模型,通过图像识别接口返回结果,判断图像中人脸是否在库 中,实现人脸注册、删除以及登录等业务场景。 2.项目运行环境:官网地址:https://cloud.baidu.com/,注册百度账号。进入管理控制台...

    软件系统整体设计方案.docx

    术语、定义和缩略语 术语、定义 名词 解释 SeaJS 一个遵循CommonJS规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制 JQuery 轻量级的Javascript库 ECharts 百度开源的可视化图表工具 ...

    轻量级django高清目录结构PDF最新版+附源码.zip

    通过选取用于创建轻量级应用组件的形式来理解进行Django解耦设计的方法。通过本书的学习,你将具备创建单页面响应实时交互应用的能力。如果你熟练掌握了Python和JavaScript,则可以开始编写应用程序了。 ■ 学习...

    精通JS脚本之ExtJS框架.part1.rar

    3.1.3 ExtJS与常见JavaScript库的介绍与对比 3.2 创建第一个程序 3.2.1 下载ExtJS 3.2.2 部署到开发工具中 3.2.3 编写HelloWorld.html 3.2.4 运行调试ExtJS 3.3 辅助开发 3.3.1 调试工具Firebug 3.3.2 开发...

    opencv+pyqt5 百度AI实现的人脸识别、语音播报、语音合成、模拟签到系统.zip

    OpenCV(Open Source Computer Vision Library)是一款开源的计算机视觉库,专门为图像和视频处理任务设计,广泛应用于学术研究、工业应用以及个人项目中。以下是关于OpenCV的详细介绍: 历史与发展 起源:OpenCV...

    基于OPENCV和百度云API实现摄像头视频流实时分析人脸信息.zip

    OpenCV(Open Source Computer Vision Library)是一款开源的计算机视觉库,专门为图像和视频处理任务设计,广泛应用于学术研究、工业应用以及个人项目中。以下是关于OpenCV的详细介绍: 历史与发展 起源:OpenCV...

    单页面和多页面开发及应用

    -Meteor.js是一个专门为单页应用设计的全栈(客户端-服务器)JavaScript框架。它具有比Angular、Ember或ReactJS更简单的数据绑定特性且使用--Distributed Data Protocol和一个发布/订阅来自动将数据更改传播到客户端...

    黑马程序员安卓Android52期培训课

    2014/12/26 星期五 自定义标签/JSTL标签库/web国际化/java web之设计模式和案例 2014/12/27 星期六 编码实战演练(指导老师:) 2014/12/28 星期日 mysql数据库 2014/12/29 星期一 2014/12/30 星期二 jdbc 2014/12/31...

    基于opencv C++ QT版音乐播放器.zip

    OpenCV(Open Source Computer Vision Library)是一款开源的计算机视觉库,专门为图像和视频处理任务设计,广泛应用于学术研究、工业应用以及个人项目中。以下是关于OpenCV的详细介绍: 历史与发展 起源:OpenCV...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    昆山工业技术研究院着眼于为委托用户和质检机构搭建良好的沟通桥梁,免去目前市场业务中企业用户需要实地地并频繁地与检测机构沟通,从而提出自己的委托乃至下委托单、等待检测报告等,设计并研发了市场上首款提供...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例038 动态输出JavaScript代码 69 实例039 当数字遇到了字符串 70 实例040 PHP程序员的基础——变量的应用 72 实例041 打印系统环境变量信息print_r($_ENV) 73 实例042 使用可变变量输出“I Like PHP!” 73 实例...

    计算机应用技术(实用手册)

    计算机应用技术 实用手册 Xnllz 2011.7.29 目录 第一章COMS的设置 1 1.STANDARD CMOS SETUP(标准CMOS设定)用来设定日期、时间、软硬盘规格、工作类类型。 3 2.BIOS能功设定 5 3.Advanced ...

    5dchess-designer:5D国际象棋变体设计师

    5D国际象棋变体设计师这是一个简单的静态应用程序,使用设计您自己的变体。安装和运行克隆此存储库并导航到它: git clone https://github.com/adri326/5dchess-designer/cd 5dchess-variants 然后,您可以打开...

    JAVA上百实例源码以及开源项目

    百度云盘分享 简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对...

    史上最好传智播客就业班.net培训教程60G 不下会后悔

    JQuery是近几年异军突起的JavaScript框架库,几乎成了Web前端开发事实上的标准,大部分企业都是使用JQuery进行Web前端的开发。 学完了这阶段课程,学员将学会开发主流网站的前端效果,比如:焦点图、滚动展示图、...

    nextjs-antd-ts-template

    具有TypeScript和Ant设计的Next.js模板 安装 克隆此仓库 安装依赖项: yarn 运行开发服务器: yarn dev

Global site tag (gtag.js) - Google Analytics