作为国内技术领先的互联网企业,百度公司也陆续开源了不少项目。其中一些如UEditor、Tangram已经在业界非常知名。下面我们就来看看百度开源的比较有知名度的项目有哪些:
1. 百度超级搜霸(现为 百度工具栏)
2006年百度与国家信息产业部软件与集成电路促进中心 (CSIP)宣布 正式达成合作。合作双方将在开源软件领域展开多方面的合作,共同促进我国开源软件产业的发展。这可能是百度第一次高调的宣布步入开源行列。双方合作后,联合开发了基于Firefox的百度超级搜霸工具条。也就是现在的“百度工具栏”的前身。
百度超级搜霸Firefox版地址
2. 高性能通信组件BGCC
百度推出具有完全知识产权的开源高性能RPC框架 (开源通信组件)BGCC,它是跨平台、多语言、面向对象/服务的企业级网络编程框架。
该产品具备特性如下:
项目官网: http://bgcc.baidu.com/
3. 在线脑图编辑器 Kity Minder
Kity Minder是基于SVG技术,使用JavaScript+html实现的在线脑图编辑工具。支持绝大多数的主流浏览器,有着很多Native编辑工具的交互体验。
线上使用: http://naotu.baidu.com
代码托管地址: https://github.com/fex-team/kityminder
4. 跨平台音频播放解决方案MuPlayer
MuPlayer是一款跨平台、轻量级的音频播放解决方案,是百度音乐前端团队开发维护的浏览端音频播放内核,它基于HTML5 Audio及Flash音频技术,已在百度音乐多个线上产品线中应用,具备很强的灵活性和稳定性。(更多介绍请看这里)
代码托管地址: https://github.com/Baidu-Music-FE/muplayer
5. UEditor
UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于BSD协议,允许自由使用和修改代码。
代码托管地址: https://github.com/fex-team/ueditor
6. ECharts
基于Canvas,纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域漫游等特性大大增强了用户体验,赋予了用户对数据进行挖掘、整合的能力。
代码托管地址: https://github.com/ecomfe/echarts
7. Terminator
Terminator是一款服务虚拟化软件。服务虚拟化指的是采用特定的技术将不稳定、不可用、未开发完全的服务虚拟出来。Terminator提供两种解决方案: 1)针对协议的通用桩,可以预先设置请求对应的返回值以及匹配条件,这样系统未开发完之前可以使用这个桩来代替真实的服务; 2) 录制回放方式,在第三方服务可用的时候将链路上的数据录制下来,当不稳定或者不可用时,回放当时录制的数据。
代码托管地址: https://github.com/BaiduQA/terminator
8. Itest
Itest是面向service接口的自动化测试工具,可用于集成测试或者系统级测试,以service接口参数为测试输入,以接口返回数据为验证对象。主要特点是case设计简单、执行速度快、稳定性高。
代码托管地址: https://github.com/BaiduQA/itest
9. ESUI
ESUI是一套简单的UI Library,提供一系列的控件,能满足基本页面交互功能。ESUI的API与默认视觉皮肤遵循BAIDU ECOMUI标准。
代码托管地址: https://github.com/ecomfe/esui
10. F.I.S
F.I.S = Front-end Integrated Solution,是一套完整的前端技术解决方案,包括前段框架、模板框架、自动化框架以及辅助开发工具。
代码托管地址: https://github.com/fis-dev/fis
11. EDP
EDP是一个企业级前端应用的开发平台,提供了常用的项目管理工具、包管理工具、调试工具、构建工具、代码生成工具、代码检测工具等一系列开发时的支持,并允许用户自定义自己的扩展。
代码托管地址: https://github.com/ecomfe/edp
12. EST
EST(ECOM Styling Toolkit)是一个基于 LESS 的样式工具库,帮助您更轻松地书写 LESS 代码。EST提供了一系列方便快捷的 mixin,只在调用时才输出代码。est 不希望提供直接给 HTML 调用的类名,用「样式类」污染 HTML 代码的语义。当然您也可以根据自己的项目需求基于 est 搭建样式类库,提供类名接口来进行快速开发。
代码托管地址: https://github.com/ecomfe/est
13. ER
ER 是一个富浏览器端web应用的框架,适用于并能很方便地构建一个整站式的AJAX web应用。ER具有如下特性:1. 通过hash实现路径的管理,支持浏览器的前进和后退功能,以及URL的可访问性。2. 提供精简、核心的Action、Model和View的抽象,使得构建RIA应用变得简单可行。3.提供可配置式的数据加载方案,提供灵活且完善的数据获取功能。4.提供支持基本逻辑和数据绑定的模板引擎,提供模板嵌套和母板页。5.不依赖任何第三方库,模块精简、可切分及独立运行。
代码托管地址: https://github.com/ecomfe/er
14. Tangram
Tangram是一款实用的JavaScript基础库,通过她可以迅速构建出高度互动的Web应用程序,简单而且高效!Tangram体积小巧,性能优良,使用简单。模块化架构,方便定制与扩展。适合团队开发,丰富的中文文档和本地技术优化,适合中国用户。经过专业QA团队的测试以及百度各大产品线的应用,质量有保障。
代码托管地址: https://github.com/BaiduFE/Tangram2
项目主页: http://tangram.baidu.com/
15. Cafe
Cafe测试框架是一款具有开创性意义的Android平台的自动化测试框架,框架覆盖了Android自动化测试的各种需求。框架致力于实现跨进程测试、快速测试、深度测试,解决了Android自动化测试中的诸多难题,比如业界一直没有解决的跨进程测试问题。
代码托管地址: https://github.com/BaiduQA/Cafe
16. GMU
GMU(Global Mobile UI)是百度前端通用组开发的移动端组件库,具有代码体积小、简单、易用等特点,组件内部处理了很多移动端的bug,覆盖机型广,能大大减少开发交互型组件的工作量,非常适合移动端网站项目。 该组件基于zepto的mobile UI组件库,提供webapp、pad端简单易用的UI组件!
代码托管地址: https://github.com/gmuteam/GMU
17. logcover
一款非常便捷的统计测试用例异常日志覆盖率的工具。可清晰地分析出程序源代码中异常日志的覆盖情况,检验测试充分度,指导测试用例完善。
使用场景: 度量异常分支测试覆盖率,覆盖单元测试、模块测试、集成测试
目标对象: 开发人员、测试人员
代码托管地址: https://github.com/BaiduQA/logcover
18. jprotobuf
jprotobuf是针对Java程序开发一套简易类库,目的是简化java语言对protobuf类库的使用。使用jprotobuf可以无需再去了解.proto文件操作与语法,直接使用java注解定义字段类型即可。
代码托管地址: https://github.com/jhunters/jprotobuf/
19. 百度地图JavaScript开源库
百度地图JavaScript开源库是一套基于百度地图API二次开发的开源的代码库。目前提供多个lib库,帮助开发者快速实现在地图上添加Marker、自定义信息窗口、标注相关开发、快速加载城市列表、拉框放大、拉框搜索、区域限制设置、几何运算、实时交通、检索与公交驾车查询、鼠标绘制工具等功能。
项目地址: http://developer.baidu.com/map/library.htm