我是靠谱客的博主 感性心情,最近开发中收集的这篇文章主要介绍开源项目--阿里巴巴&&腾讯&&Google 腾讯,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

阿里巴巴


1、设计语言&前端框架 Ant Design    ★Star 14889  

Ant Design 是蚂蚁金服开发和正在使用的一套企业级的前端设计语言和基于 React 的前端框架实现。它企业级金融产品的交互语言和视觉体系;丰富实用的 React UI 组件;基于 React 的组件化开发模式;背靠 npm 生态圈;基于 webpack 的调试构建方案,支持 ES6。(详情:https://github.com/ant-design/ant-design


2、构建移动跨平台UI的框架 weex  ★Star 14465 


Weex 是一个动态化的高扩展跨平台解决方案。 在 Weex 代码中,您可以使用 <template>,<style> 和 <script> 标签编写页面或组件,然后将它们转换为 JS bundle 以进行部署。当服务器返回给客户端 JS bundle 时,JS bundle 会被客户端的 JavaScript 引擎处理,并管理渲染 native 视图,调用原生 API 和用户交互工作原理如下图:(详情:https://github.com/alibaba/weex


3、vlayout  ★Star 5262

vlayout 是 RecyclerView 的强大的 LayoutManager 扩展,它为 RecyclerView 提供了一组布局。用它实现网格,列表和其他布局在同一 recyclerview 列表中。通过为RecyclerView 提供自定义的 LayoutManager,VirtualLayout 可以在单一视图下布置不同风格的子视图。顺便说一下,还支持实现您的自定义 layoutHelper 并将其提供给框架。(详情:https://github.com/alibaba/vlayout


4、Android动态组件框架:Altas Star  4410


Atlas 是一个 Android 客户端容器化框架。我们称之为 Android 动态组件框架。适用于 Android 4.x 以上系统版本的大小型 App 开发。 Atlas 提供解耦,组件和动态支持。 在apk 运行时,Atlas 具有完整的组件生命周期,类隔离等机制。 在运行维护时期,Atlas 提供快速增量更新和快速升级能力。  与一些 Android 插件框架不同,Atlas 不是一个多进程框架,而是一个组件框架(我们称之为Bundle)(详情:https://github.com/alibaba/atlas?spm=0.0.0.0.onw5tG


5、企业级 Node.js 框架 egg  ★Star 3799


Egg.js,为企业级框架和应用而生,是阿里开源的企业级 Node.js 框架。Egg.js 的插件机制有很高的可扩展性,一个插件只做一件事。五大特性:深度框架定制 ;高度可扩展的插件机制 ;内置多进程管理,基于 koa 开发,性能优异;框架稳定,测试覆盖率高 。(详情:https://github.com/eggjs/egg

6、Android 平台的编译方案: Freeline  ★Star 3714


Freeline是蚂蚁聚宝团队15年10月在Android平台上的量身定做的一个基于动态替换的编译方案,资源编译方面,深入改造了Aapt资源编译流程,当资源发生改变时候,秒级完成增量包编译,其中增量包仅含最小的变更集合(10Kb~数百Kb内),后期也被运用到线上进行资源/代码动态替换。相比目前instant- run,buck,layoutcast等方案快数倍速度。Freeline构建期间各个工程任务工作次序如下图。(详情:https://github.com/alibaba/freeline


7、HTML5 互动游戏引擎 Hilo ★Star 3632


Hilo 是阿里巴巴集团开发的一款HTML5跨终端游戏解决方案,可以帮助开发者快速创建HTML5游戏。有以下特征:独立模块设计,支持多种模块范式的包装版本;面向对象程序化开发;多重渲染模型,其中包括 Canvas,DOM 和 WebGL 等;兼容多台台式机和移动浏览器;使用 Flash Shim 来支持 IE ;支持 物理扩展: Chipmunk;支持骨骼动画扩展: DragonBones(详情:https://github.com/hiloteam/Hilo



8、轻量级JS框架 dva ★Star 3393


基于React和Redux的树型结构轻量级JS框架,(灵感来自Choo)。dva是框架,不是图书馆,类似emberjs,会更可控。另外,除了反应和反应 dom 是 peerDependencies 以外,dva 封装了所有其他依赖。他最核心的是提供了 app.model 方法,用于把 reducer,initialState,action,saga 封装到一起。(详情:https://github.com/dvajs/dva

9、通用 React 兼容渲染引擎 Rax  ★Star 2935


Rax 是阿里开源的一个通用的 JavaScript 库,主要有 React 兼容的 API 。 使用 React 的就应该已经知道如何使用 Rax。 特性:快速的虚拟 DOM;min + gzip 之后仅 8.0kb;跨浏览器、Weex 和 Node.js。 示例如下:(详情:https://github.com/alibaba/rax



10、淘宝 React 框架 React Web  ★Star 2707


淘宝前端团队开源项目React Web,通过与React Native一致的API构建Web应用(详情:https://github.com/taobaofed/react-web



11、iOS 模块化编程框架:BeeHive  ★Star 2026


BeeHive 是 iOS 中实现的模块化程序,它吸收了Spring Framework API服务的概念,避免了模块之间的直接耦合。从下图可以了解到BeeHive的架构:(详情:https://github.com/alibaba/BeeHive



12、开源数据库 AliSQL  ★Star 2005


AliSQL 是基于 MySQL 官方版本的一个分支,由阿里云数据库团队维护,目前也应用于阿里巴巴集团业务以及阿里云数据库服务。该版本在社区版的基础上做了大量的性能与功能的优化改进。尤其适合电商、云计算以及金融等行业环境。(详情:https://github.com/alibaba/AliSQL


13、开发技术方案 LuaViewSDK  ★Star 1969


LuaViewSDK 是一个跨iOS版和安卓平台的界面动态化解决方案,它基于 Lua VM,并选择 Lua 作为脚本语言。可以灵活加载 Lua 脚本,并能够按照 Native 的方式运行的一种面向业务的开发技术方案。(详情:https://github.com/alibaba/LuaViewSDK


14、UltraViewPager  ★Star 1798


UltraViewPager 是阿里开源的一个封装多种特性的 ViewPager ,主要是为多页面切换场景提供统一解决方案。(详情:https://github.com/alibaba/UltraViewPager


15、自动化测试解决方案 Macaca ★Star 1442


Macaca 是一套完整的自动化测试解决方案。支持移动端和 PC 端;支持Native , Hybrid , H5 等多种应用类型;并能够提供客户端工具和持续集成服务(详情:https://github.com/alibaba/macaca

16、spring-boot-starter-dubbo ★Star 1273


spring-boot-starter-dubbo 是 dubbo 的 spring boot starter,它可以无缝地对接 spring boot 和 dubbo ,方便大家使用 dubbo 组件。spring-boot-starter-dubbo 支持的 jdk 版本为 1.6 或者 1.6+。spring-boot-starter-dubbo 很简单,也很方便使用,它同时集成了dubbo 的 provider 和 consumer 的功能。(详情:https://github.com/teaey/spring-boot-starter-dubbo


17、Oracle数据迁移同步工具:yugong  ★Star 604


整个数据迁移过程,分为两部分: 全量迁移 和增量迁移,过程描述如下:

1、增量数据收集 (创建oracle表的增量物化视图)

2、进行全量复制

3、进行增量复制 (可并行进行数据校验)

4、原库停写,切到新库(详情:https://github.com/alibaba/yugong


18、模块化 UI 界面方案 Tangram-iOS  ★Star 597


是天猫团队开源的跨平台模块化 UI 界面方案。 Tangram 不仅仅是一个 Native(iOS & Android)的界面开发框架,而是从日常工作中沉淀出的一套界面解决方案,涵盖了 Native SDK、GUI操作台、后端逻辑容器、组件库机制的一整套方案。Tangram的系统要求是iOS 7.0+(详情:https://github.com/alibaba/Tangram-iOS


19、 蚂蚁金服图形语法 G2 ★Star 554


G2 (The Grammar Of Graphics) 是一个由纯 javascript 编写、强大的语义化图表生成工具,它提供了一整套图形语法,可以让用户通过简单的语法搭建出无数种图表,并且集成了大量的统计工具,支持多种坐标系绘制,可以让用户自由地定制图表,是为大数据时代而准备的强大的可视化工具。G2 并不是一个特定几个图表的生产库,而是一个绘图工具,提供的是一种自由绘图、组合创造的能力,详见数据图表:(详情:https://github.com/antvis/g2



20、自动化测试解决方案 UI Recorder  ★Star 447


UI Recorder是一款零成本的整体自动化测试解决方案,一次自测等于多次测试,测一个浏览器等于测多个浏览器!(详情:https://github.com/alibaba/uirecorder


21、异步并行加载工具 Asyncload  ★Star 287


Asyncload是一款异步并行加载工具(依赖字节码技术)。工作原理如下。(详情:https://github.com/alibaba/asyncload

22、Gym StarCraft  ★Star 287


Gym StarCraft 是阿里开源的一套专业易用的研究平台,AI 和强化学习研究者可以非常方便地使用 Python 语言来进行深度强化学习智能 Agent 的开发,它底层完成了对 TorchCraft 和 OpenAI Gym 的封装,支持基于 TensorFlow 和 Keras 等主流算法框架进行开发,仅需几十行代码即可完成一个基本的智能 Agent 的开发。(详情:https://github.com/alibaba/gym-starcraft


23、模块化的 NodeJs Web 框架 Plover ★Star 172


Plover是一个专注于模块化方式构建web应用的NodeJs MVC web框架。不同于其它web框架,它提供完整的应用和模块化模型,让复杂的业务功能可以方便地抽象成多个模块的方式进行独立开发,让应用可以像搭积目的方式拼装模块而成。 Plover基于koa构建,它可以很方便地独立部署或者集成到其他koa的应用一起部署。 Plover专注于模块化,为快速构建web应用提供最佳方案 。(详情:https://github.com/alibaba/plover


24、主播工具 tblive ★Star 137


tblive开源项目对应的产品是千牛主播,是一个独立的PC端主播工具,基于开源软件OBS Studio来修改定制,增强了交互和功能上的可用性,同时引入统一登陆sdk(UnifiedAuthSDK.dll),可以支持淘宝账号的验证以及免登url的拼接,能更好的支持淘系webview页面。(详情:https://github.com/alibaba/tblive


25、数据库同步工具 rds_dbsync  ★Star 71


dbsync 项目目标是围绕 PostgreSQL Greenplum 实现易用的数据的互迁功能。由阿里云 PostgreSQL 小组开发(详情:https://github.com/aliyun/rds_dbsync


26、中国 npm 镜像的客户端 CNPM ★Star 15


CNPM 是中国npm镜像的客户端。(详情:https://github.com/cnpm/cnpm


27、分布式架构的持续集成 Reliable ★Star 7


Reliable 是分布式架构的持续集成系统,由 Macaca 团队的成员开发。适用于集成构建、集成构建等场景。她是典型的主从结构,分为 reliable-master 与 reliable-slave 两部分。同时,她与 Macaca 无缝融合。(详情:https://github.com/alibaba/reliable


腾讯


0、Android 热修复框架 Tinker ★Star 8967

Tinker是Android的热修复解决方案库,它支持dex,库和资源更新,无需重新安装apk。有一些问题,Tinker不能动态更新:

无法更新AndroidManifest.xml,例如添加Android组件。;不支持一些三星型号与os版本的android-21;由于Google Play开发者分发协议,我们无法动态更新我们的apk(详情:

https://github.com/Tencent/tinker


1、微信客户端跨平台组件 Mars  Star 8874

Mars 是微信官方的终端基础组件,目前已接入微信 Android、iOS、Mac、Windows、WP 等客户端。主要包括以下几个部分:

● comm:可以独立使用的公共库,包括socket,线程,消息队列,协程等;

● Xlog软件:日志组件,可靠性高,高性能

● SDT:网络诊断组件

● STN:信令分发网络模块,也是Mars最主要的部分。图。(详情:https://github.com/Tencent/mars


2、微信移动数据库框架 WCDB(WeChat Database)  ★Star 3123


WCDB(WeChat Database)是一个高效、完整、易用的移动数据库框架,基于SQLCipher,支持iOS, macOS和Android,WCDB于6月9日正式对外开源。


开源地址:
https://github.com/Tencent/wcdb


WCDB for iOS/macOS 基本功能

  • WINQ(WCDB语言集成查询): 通过WINQ,开发者无须为了拼接SQL的字符串而写一大坨胶水代码。

  • ORM(Object Relational Mapping): WCDB支持灵活、易用的ORM。开发者可以很便捷地定义表、索引、约束,并进行增删改查操作。

  • 多线程高并发: WCDB支持多线程读与读、读与写并发执行,写与写串行执行。

  • 加密:WCDB提供基于SQLCipher的数据库加密。

  • 损坏修复: WCDB内建了Repair Kit用于修复损坏的数据库。

  • 反注入: WCDB内建了对SQL注入的保护。


WCDB for Android 基本功能

  • 基于SQLCipher的数据库加密

  • 使用连接池实现并发读写

  • 内建 Repair Kit 可用于修复损坏数据库

  • 针对占用空间大小优化的数据库备份/恢复功能

  • 日志输出重定向以及性能跟踪接口

  • 内建用于全文搜索的 mmicu FTS3/4 分词器


3、手机前端开发调试工具 vConsole  Star 2393


vConsole 是一款由微信公众平台前端团队打造的前端调试面板,专治手机端看 log 难题。 目前 vConsole 自带有 2 个面板,默认为“日志”面板,负责展示 log。 第二个是“系统”面板,vConsole 会自动将一些基础信息(如系统版本)打印出来,方便开发者定位问题。若页面是在微信内置浏览器中打开的,vConsole 还会打印出微信版本号、当前网络类型等额外信息。(详情:https://github.com/WechatFE/vConsole


4、微信团队前端开发工具 WeFlow  Star 2233

这是一个高效、强大、跨平台(macOS & Win)的前端工具,核心基于 tmt-workflow 工作流.(详情:

https://github.com/weixin/WeFlow


5、分布式后台服务引擎 MSEC Star 2221


毫秒服务引擎(MSEC)由腾讯 QQ 团队开源。它是一个后端 DEV&OPS 引擎,包括RPC,名称查找,负载平衡,监控,发布和容量管理。毫秒服务引擎特性:

● 模块间访问采用RPC的方式,开发者不用关注网络与报文格式,像写单机程序一样开发分布式服务。

● 负载自动均衡与容错,对于单机故障、局部网络波动等状况自动应对,服务高可用性。

● 支持 C/C++/java/PHP 语言,如果选择 C/C++ 语言,支持协程,兼具开发和运行效率。

● Web 化的管理界面

● 简易部署,需要复杂部署的服务器都采用docker镜像的方式安装

● 相比使用其他开源组件拼凑起来的解决方案,毫秒服务引擎更加的体系化,对团队的规范更加到位(详情:http://haomiao.qq.com/


6、随身调测平台GT Star 2183


GT(随身调)是 APP 的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment)。利用 GT,仅凭一部手机,无需连接电脑,您即可对APP进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、 开发日志的查看、Crash日志查看、网络数据包的抓取、APP 内部参数的调试、真机代码耗时统计等。如果您觉得GT提供的功能还不够满足您的需要,您还 可以利用 GT 提供的基础 API 自行开发有特殊功能的 GT 插件,帮助您解决更加复杂的 APP 调试问题。(详情:

https://github.com/Tencent/GT


7、Unity3D 下 Lua 编程解决方案 xLua Star 1816


xLua为Unity3D增加Lua脚本编程的能力,xLua在功能、性能、易用性都有不少突破,这几方面分别最具代表性的是:

① 可以运行时把C#实现(方法,操作符,属性,事件等等)替换成lua实现;

② 出色的GC优化,自定义struct,枚举在Lua和C#间传递无C# gc alloc;

③ 编辑器下无需生成代码,开发更轻量;

(详情:https://github.com/Tencent/xLua


8、RPC开发框架Tars ★Star 1800


它是基于名字服务使用 Tars 协议的高性能 RPC 开发框架,配套一体化的运营管理平台。Tars 是腾讯从 2008 年到今天一直在使用的后台逻辑层的统一应用框架 TAF(Total Application Framework),目前支持 C ++ 和 Java 两种语言。目前该框架在腾讯内部,各大核心业务都在使用,颇受欢迎,基于该框架部署运行的服务节点规模达到上万个。(详情:

https://github.com/Tencent/Tars


9、MySQL集群PhxSQL  Star 1759


PhxSQL是一个基于Paxos和Percona的高可用性和强大的一体化MySQL集群,PhxSQL以单Master多Slave方式部署,在集群内超过一半机器存活的情况下,可自身实现自动Master切换,且保证数据一致性。(详情:https://github.com/tencent-wechat/phxsql) 


10、超轻量级 Web 手势库AlloyFinger  Star 1734


可以看到hammerjs体积远远大于AlloyFinger,对于手机QQ web加载速度性能追求极致的同学来说,使用hammerjs的大小是不可以接受的!那么,为什么hammerjs这么大?看下架构设计便知♂(详情:https://github.com/AlloyTeam/AlloyFinger架构设计:


11、多机状态拷贝类库PhxPaxos  Star 1244


PhxPaxos 是腾讯公司微信后台团队自主研发的一套基于 Paxos 协议的多机状态拷贝类库。它以库函数的方式嵌入到开发者的代码当中, 使得一些单机状态服务可以扩展到多机器,从而获得强一致性的多副本以及自动容灾的特性。 这个类库在微信服务里面经过一系列的工程验证,并且我们对它进行过大量的恶劣环境下的测试,使其在一致性的保证上更为健壮。(详情:

https://github.com/tencent-wechat/phxpaxos


12、Web组件化框架Omi  ★1057


Omi是一款开放现代的Web组件化框架,有以下特性:

① 局部CSS:HTML+ Scoped CSS + JS组成可复用的组件。不用担心组件的CSS会污染组件外的,Omi会帮你处理好一切

② 超小的尺寸:7 kb (gzip),虽然文件尺寸小,但是兼容性很好!

③ 更新更自由:每个组件都有update方法,可自由更新。

④ 模板引擎可替换,开发者可以重写Omi.template方法来使用任意模板引擎

⑤ 完全面向对象

⑥ Omi提供了ES6+和ES5的两种开发方案

(详情:https://github.com/AlloyTeam/omi


13、UI 前端框架 QMUI Web  Star 888


QMUI Web 是一个专注 Web UI 开发,帮助开发者快速实现特定的一整套设计的框架。通过 QMUI Web,开发者可以很轻松地提高 Web UI 开发的效率,同时保持了项目的高可维护性与稳健。如果你的项目需要有一套完整的设计,并且可能有频繁的变动,那么 QMUI Web 框架将会是你最好的解决方案。(详情:

https://github.com/QMUI/QMUI_Web


14、curvejs  Star 749


是腾讯AlloyTeam打造的一款魔幻线条框架,让线条成为一名优秀的舞者,让线条们成为优秀的舞团,HTML5 Canvas就是舞台。其原理就是使用 Perlin-Noise + Particle System + B&eacute;zier Curve + Color Transition 制作而成。使用curvejs实现类似变幻线功能只需要不到10行代码。 https://github.com/AlloyTeam/curvejs


15、基于C ++的RPC框架 PhxRPC  Star 645


PhxRPC是微信后台团队推出的一个非常简洁小巧的RPC框架,编译生成的库只有450K(详情:

https://github.com/tencent-wechat/phxrpc


16、Web 开发调试工具AlloyLever  ★533


AlloyLever 是腾讯 AlloyTeam 团队开源的一款 Web 开发调试工具。AlloyLever的功能:点击 alloylever 按钮之间切换显示或隐藏工具面板; Console会输出所有用户打印的日志如 console.[log/error/info/debug/debug] ;Console会输出所有的错误信息(脚本错误和网络请求错误) ;XHR 面板会输出所有(XMLHttpRequest)AJAX 请求和服务器端返回的数据; Resouces 面板会输出所有的 Cookie 信息和 LocalStorage ;TimeLime 面板会输出页面相关的生命周期里的时间段耗时情况(详情:

https://github.com/AlloyTeam/AlloyLever


17、bk-cmdb  Star 452


蓝鲸配置平台是一款面向应用的 CMDB,在 ITIL 体系里,CMDB 是构建其它流程的基石,而在蓝鲸智云体系里,配置平台就扮演着基石的角色,为应用提供了各种运维场景的配置数据服务。现有功能如下:用户管理、业务管理、拓扑(集群、模块)管理、资源池管理、主机管理、日志查询(详情:

https://github.com/Tencent/bk-cmdb


18、分布式开发框架Pebble-RPC  Star 351


Pebble是一个分布式开发框架。基于该框架,可以让开发者只需专注于业务逻辑的实现,而不需要关注基础功能的开发,如网络通信,数据存储,集群管理等。使用pebble配套的运营系统,可方便的进行游戏开区开服,版本升级,扩容缩容等操作。当前发布的Pebble版本,是一个Linux平台C++版本的后台开发框架。整个分布式开发框架包括:服务管理、集群管理、RPC通信、协程、广播、进程框架。(详情:https://github.com/TencentOpen/Pebble


19、UI自动化测试框架 GAutomator  Star 337


GAutomator 是一 Unity 手游的UI 自动化测试框架。

Windows Os 和软件要求: Windows 7(32/64位),Windows 8或更高版本;python 2.7;Android SDK(或adb),在设备上启用ADB设置,并使用usb与您的PC连接您的Android设备。Linux和软件要求:Ubuntu 14.04 LTS;python 2.7;Android SDK(或adb),在设备上启用ADB设置,并使用usb与您的PC连接您的Android设备。

Android:Android 4.3(API级别18)或更高版本。(详情:https://github.com/Tencent/GAutomator


20、WeDemo  Star 297


WeDemo 为微信团队开源项目,用于帮助微信开发者完成微信登录、微信分享等功能的接入和开发。开发者可参考源代码完成开发,也可以直接将代码应用到自己的App开发中,安全、便捷地在App中实现微信分享、微信登录功能。(详情:https://github.com/Tencent/WeDemo


21、AI开发框架组件 Behaviac  Star 297


Behaviac 是游戏 AI 的开发框架组件,也是游戏原型的快速设计工具。支持行为树BT,状态机 FSM,HTN 等多种范式,方便的编辑和调试。支持全平台,适用于客户端和服务器,助力游戏快速迭代开发。 编辑器可以运行在 PC 上,操作方便直观可靠,支持实时和离线调试;编辑器可以导出 xml,bson 等多种格式,更可以导出 C++,C# 源码,提供最高效率。 运行时支持全平台,有 C++ 和 C# 两个版本,原生支持 Unity。 (详情:

https://github.com/Tencent/behaviac


22、Fanvas  Star 214


Fanvas是一个把swf转为html5 canvas动画的系统,由两部分组成:Actionscript实现的解析器、js运行库。(详情:https://github.com/Tencent/Fanvas


23、HaboMalHunter Star 161


HaboMalHunter 是 Habo Malware 分析系统(https://habo.qq.com)的子项目,可用于Linux系统上的自动恶意软件分析和安全评估。该工具可用于 Linux x86 / x64 平台上 ELF 文件的静态和动态分析。(详情:

https://github.com/Tencent/HaboMalHunter


24、基于ACE的服务框架 TEAF  ★157


TEAF(Tencent Easy ACE Framework),基于 ACE 的高性能服务框架,单进程多线程模型,支持 select/epoll 等多种网络 IO 模型,同时支持 tcp 和 udp 协议,支持二进制(pb等)和文本格式(json等,易于理解),相对多进程模型的框架来说更易维护,更轻量。业务侧只需要开发自己的逻辑处理即可实现高性能的业务后台服务器。已经在腾讯互娱(IEG)大部分平台类产品中成熟应用,比如 idip,游戏人生,心悦,帮帮,新终端游戏中心 aj,cross 等,公司其他 BG 也有很多产品在使用。(详情:

https://github.com/Tencent/Teaf


25、QT4A Star 67


QT4A(Android的快速测试)是适用于 Android 应用程序的 QTA 测试自动化驱动程序。支持Android 2.3 - 6.0 版本,需要设备根。支持多设备同时测试;支持跨进程,跨应用测试;支持进行过控件混淆的安装包(需要映射文件);支持自定义控件(如果有代码混淆需要映射文件)(详情:

https://github.com/Tencent/QT4A


26、辅助测试工具 WeTest-Assistant Star 49


WeTest 助手包括性能测试和远程调试两大功能。手游客户端性能测试常用性能维度,CPU,内存,FPS,流量一次性全部收集, 图表化展示,数据可按场景化分类,并且支持离线和在线两种模式,地铁上都可以做测试,Web上看报告。 支持ROOT和非ROOT安卓手机,支持越狱iOS系统。(详情:https://github.com/Tencent/WeTest-Assistant


27、QT4i  Star 44


QT4i是iOS应用程序的QTA测试自动化驱动程序。主要特性:轻松易用、支持iOS Native控件,webview控件和自定义控件;平台支持,高效维护。(详情:https://github.com/Tencent/QT4i


28、KNVProtoEngine Star 44


KNV是一个模式自由的高性能树型协议处理引擎,是对Key-Value的一个通用结构化扩展。(详情:

https://github.com/Tencent/KNVProtoEngine


29、优图人脸识别 Python_sdk Star 32


优图人脸识别(Face Recognition), 是由腾讯优图团队研发的,基于人的脸部特征信息进行身份识别的一种生物识别技术。它提供了"人脸检测与分析"、"人脸比对"、"人脸验证"、"人脸识别"等一整套技术方案。(详情:

https://github.com/TencentYouTu/python_sdk


Google

0、机器学习系统 TensorFlow  ★Star 62533

TensorFlow 是谷歌的第二代机器学习系统,按照谷歌所说,在某些基准测试中,TensorFlow的表现比第一代的DistBelief快了2倍。TensorFlow 内建深度学习的扩展支持,任何能够用计算流图形来表达的计算,都可以使用TensorFlow。任何基于梯度的机器学习算法都能够受益于TensorFlow的自动分 化(auto-differentiation)。通过灵活的Python接口,要在TensorFlow中表达想法也会很容易。(详情:https://github.com/tensorflow/tensorflow


1、material-design-icons  Star 30315


Google 开源了 Material Design 系统图标包其中的 750 个字形。该系统图标包含常用的图标,如用于媒体播放、通讯、内容编辑、连接等等。在 Web 应用,安卓和 iOS 设计均适用。(详情:http://google.github.io/material-design-icons/


2、前端开发工具组 MDL  Star 27873


MDL (Material Design Lite) 是 Google 推出的网站前端开发工具组。Material Design Lite (MDL)可以让你添加一个 Material Design 的外观和感觉到你的静态内容网站,不依赖于任何的 JavaScript 框架和库。MDL 可以优化跨设备的使用体验,可以在旧版的浏览器进行平滑的切换,提供非常快速的访问体验。(详情:https://github.com/google/material-design-lite


3、Web 前端框架 Angular  Star 25524


Angular 是一款十分流行且好用的 Web 前端框架,目前由 Google 维护。官方已将 Angular 2 和之前的版本 Angular.js 分开维护(两者的 GitHub 地址和项目主页皆不相同)。渐进式 Web 应用,借助现代化 Web 平台的力量,交付 app 式体验。高性能、离线化、零安装。(详情:https://github.com/angular/angular


4、容器集群管理系统 Kubernetes  Star 24599


Kubernetes 是来自 Google 云平台的开源容器集群管理系统。基于 Docker 构建一个容器的调度服务。该系统可以自动在一个容器集群中选择一个工作容器供使用。其核心概念是 Container Pod。(详情:https://github.com/kubernetes/kubernetes


5、数据描述语言 protobuf  Star 18447


Protocol Buffers (ProtocolBuffer/ protobuf )是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储、通信协议等方面。现阶段支持C++、JAVA、Python等三种编程语言。同XML相比,Protocol buffers在序列化结构化数据方面有许多优点(详情:https://github.com/google/protobuf


6、Java 常用库 Guava  Star 17267


该项目是 Google 的一个开源项目,包含许多 Google 核心的 Java 常用库。(详情:https://github.com/google/guava


7、Spark  Star 13378


Spark 是谷歌公司推出的一款基于 Chrome 浏览器的开发环境。提供一组可重用的 UI 组件。采用 Dart 开发。(安装方法:https://github.com/dart-lang/spark/tree/master/ide


8、RPC 框架 GRPC  Star 10363


GRPC 是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2 设计。目前提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 其中 C 版本支持 C, C++, Node.js, Python, Ruby, Objective-C, PHP 和 C# 支持.GRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特。这些特性使得其在移动设备上表现更好,更省电和节省空间占用。(详情:https://github.com/grpc/grpc


9、高质量压缩图片算法工具Guetzli  Star 9959


Guetzli,是一个针对数码图像和网页图像的 JPEG 编码器,能够通过产生更小的 JPEG 文件来达到更快的在线体验,并且同时保持与当前浏览器,图像处理应用和 JPEG 标准的兼容性。Google 称 Guetzli 创建高质量的 JPEG 图像文件的大小比当前的压缩方法要再小 35%。上图为 16x16 像素样本,是挂在蓝天下的一根电话线,传统 JPEG 算法经常会遇到的失真状况。左边是未压缩的原图,中间为较小尺寸的 libjpeg,右边是失真更少的 Guetzli 。(详情:https://github.com/google/guetzli


10、k/v数据库 Leveldb  Star 9799


Leveldb是一个google实现的非常高效的kv数据库,目前的版本1.2能够支持billion级别的数据量了。 在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计。特别是LSM算法。(详情:https://github.com/google/leveldb


11、自动化网络审查工具 Lighthouse  Star 9400


Lighthouse 是一个开源的自动化工具,用于改进网络应用的质量。 可以将其作为一个 Chrome 扩展程序运行,或从命令行运行。 当为 Lighthouse 提供一个要审查的网址,它将针对此页面运行一连串的测试,然后生成一个有关页面性能的报告。可以参考失败的测试,看看可以采取哪些措施来改进应用。(详情:https://github.com/GoogleChrome/lighthouse


12、Gson  Star 9261


Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。(详情:https://github.com/google/gson


13、最小系统加载工具 systemjs  Star 8356


systemjs 是一个最小系统加载工具,用来创建插件来处理可替代的场景加载过程,包括加载 CSS 场景和图片,主要运行在浏览器和 NodeJS 中。它是 ES6 浏览器加载程序的的扩展,将应用在本地浏览器中。通常创建的插件名称是模块本身,要是没有特意指定用途,则默认插件名是模块的扩展名称。(详情:https://github.com/systemjs/systemjs


14、序列化库 FlatBuffers  Star 7991


FlatBuffers 是一个 Java 的序列化库,用于游戏和其他内存受限的应用。FlatBuffers 可以让你直接访问序列化后的数据,无需解压并进行解析的过程。同时提供很强的向前和向后兼容性。FlatBuffers 支持 C++ 和 Java 语言,无需依赖第三方库支持。(详情:https://github.com/google/flatbuffers


15、Xi 文本编辑器 Xi Editor  Star 8000


Xi Editor 是 Google 开源的一款用 Rust 语言编写的文本编辑器,最初是为 Mac OS X 构建的,使用 Cocoa 作为用户界面,已有计划适配其它平台。所有编辑操作都可以在 16ms 之内提交并处理。文本绘制使用最好的技术(如 Mac 上的 Core Text,Windows 上的 DirectWrite 等),并完全支持 Unicode。(详情:https://github.com/google/xi-editor


16、Grumpy  Star 7760


Grumpy 是一个 Python  to Go 源代码翻译编译器和运行时,旨在替代 CPython 2.7。 关键的区别是它将 Python 源代码编译为 Go 源代码,然后将其编译为本机代码,而不是字节码。这意味着 Grumpy 没有 VM。编译的 Go 源代码是对 Grumpy 运行时的一系列调用,Go 库服务与 Python C API 类似的目的(尽管不直接支持 C API)。(详情:https://github.com/google/grumpy


17、Javascript 编译器 Traceur  Star 7300


Traceur 是一个来自 Google 的 Javascript 编译器,通过它可以体验一些很新并且有趣的 Javascript 语言特性,这些多数是还没有被当前浏览器实现的 ECMAScript 标准或草案,比如:数组比较、类、模块、迭代器、方法参数默认值、Promise等。(详情:https://github.com/google/traceur-compiler


18、媒体播放器 ExoPlayer  Star 7152


ExoPlayer 是 Android 上一个应用级的媒体播放器。它为 Android MediaPlayer 的 API 在播放本地或在线的视频与音频上提供了一个候选。ExoPlayer 支持一些 Android MediaPlayer API 无法提供的特性,包括 DASH 和 SmoothStreaming 自适应回放,持久的高速缓存和自定义渲染器。不像 MediaPlayer API,EXOPlayer 很容易定制和扩展,而且它可以通过 Play Store 更新升级。(详情:https://github.com/google/ExoPlayer


19、代码构建工具Bazel  Star 6641


Bazel 是 Google 的一款可再生的代码构建工具。它主要是用于构建 Google 的软件,处理出现在谷歌的开发环境的构建问题,比如说:大规模数据构建问题,共享代码库问题,从源代码构建的软件的相关问题。支持多种语言并且跨平台,还支持自动化测试和部署、具有再现性(Reproducibility)和规模化等特征。(详情:https://github.com/bazelbuild/bazel


20、创作艺术和谱写曲子的机器智能 magenta  Star 6563


Google Brain团队的一组研究人员发布了一个项目Project Magenta,其主要目标是利用机器学习创作艺术和谱写曲子。Project Magenta使用了 TensorFlow系统,研究人员在GitHub上开源了他们的模型和工具。(详情:https://github.com/tensorflow/magenta


21、自动生成命令行界面的内容库 Python Fire  Star 6500


Python Fire 是 Google 开源的一个可从任何 Python 代码自动生成命令行接口(CLI)的库。Python Fire 是一种在 Python 中创建 CLI 的简单方法;是开发和调试 Python 代码的有用工具;能够使 Bash 和 Python 之间的转换更为容易;并且通过使用你需要导入和创建的模块和变量来设置 REPL,使得使用 Python REPL 更容易

(详情:https://github.com/google/python-fire


22、软硬件框架AnyPixel.js  Star 5906


AnyPixel.js 是 Google 开源的一个软件和硬件框架,可以用来构建各种由“像素”构成的展示,每个像素可以是任何一种可交互的实体对象,如 LED 灯、气球等。(详情:https://github.com/googlecreativelab/anypixel


23、物联网工具Physical Web  Star 5899


Physical Web 是由 Chrome 团队主导的一个项目, 意在用 URL 连接世界, 方便用户接受数据。在Web世界中,各种URL可以说是链接的基础,也是去中心化的,所以“The Physical Web”要做的就是让每个智能设备用URL来标识自己,然后用户按照自己的需要通过URL和设备进行交互。这样一来,你使用智能设备的体验就和在网站上使 用各种超链接差不多了。(详情:https://github.com/google/physical-web


24、Docker 容器性能分析工具cAdvisorc  Star 5853


Advisor 是谷歌公司用来分析运行中的 Docker 容器的资源占用以及性能特性的工具。cAdvisor 是一个运行中的守护进程用来收集、聚合、处理和导出运行容器相关的信息,每个容器保持独立的参数、历史资源使用情况和完整的资源使用数据。当前支持 lmctfy 容器和 Docker 容器。(详情:https://github.com/google/cadvisor


25、C++单元测试工具  Star 5755


Google的开源C++单元测试框架Google Test,简称gtest 是一个非常的不错单元测试框架。支持跨平台以及包括 Windows CE 和 Symbian 在内的一些手机操作系统。(详情:https://github.com/google/googletest


26、IndexedDB 关系查询引擎 lovefield  Star 5532


lovefield 是建立在 IndexedDB 上的关系查询引擎。它提供了类似 SQL 的语法,并且可以跨浏览器工作(目前支持 Chrome 37 及以上版本,Firefox 31 及以上版本,IE 10 及以上版本)。(详情:https://github.com/google/lovefield


27、 Java 生成器源代码集合 Auto  Star 5295


Auto 是 Java 生成器源代码集合,Java 有许多机械、重复、未经测试的代码,而且有时会出现一些微妙的 Bug 。Auto 项目是自动执行这些类型的任务的代码生成器的集合,他们可以无 Bug 创建你要编写的代码。(详情:https://github.com/google/auto


28、Python 代码格式化的工具  Star 5197


YAPF 是 Google 开发的一个用来格式化 Python 代码的工具。(详情:https://github.com/google/yapf


29、基于 TensorFlow 的神经网络库 Sonnet  Star 5000


Sonnet 库使用面向对象的方法,允许创建定义一些前向传导计算的模块。模块用一些输入 Tensor 调用,添加操作到图里并返回输出 Tensor。其中一种设计选择是通过在随后调用相同的模块时自动重用变量来确保变量分享被透明化处理。 该库兼容 Linux/Mac OS X 和 Python 2.7。TensorFlow 的版本必须至少为 1.0.1。Sonnet 支持 TensorFlow 的 virtualenv 安装模式,以及 nativ pip 安装。(详情:https://github.com/deepmind/sonnet


30、无损压缩算法Brotli  Star 4822


Brotli 是一个通用目的的无损压缩算法,它通过用变种的 LZ77 算法,Huffman 编码和二阶文本建模进行数据压缩,是一种压缩比很高的压缩方法。在压缩速度上跟 Deflate 差不多,但是提供了更密集的压缩。(详情:https://github.com/google/brotli


31、负载均衡系统 Seesaw  Star 4286


Seesaw 是 Google 开源的一个基于 Linux 的负载均衡系统。Seesaw 包含基本的负载均衡特性,同时支持一些高级的功能,诸如:anycast, Direct Server Return (DSR), 支持多个 VLANs 和集中式配置。同时其设计的宗旨是易于维护。(详情:https://github.com/google/seesaw


32、Gumbo  Star 4060


Gumbo 是 Google 的一款用C语言实现的HTML5解析库,无需任何外部依赖。(详情:https://github.com/google/gumbo-parser


33、GXUI  ★Star 3803


GXUI 是 Google 出品的一个跨平台 GO 语言的 UI 框架。(详情:https://github.com/google/gxui


34、iOS UI 测试自动化框架 EarlGrey  Star 3721


遵从开源Apache授权的EarlGrey,由Objective-C编写而成。Google也确实用的它来测试自家的iOS app。EarlGrey可支持和模拟回溯至iOS 8的设备,有关该工具的详细文档请戳这里。除了EarlGrey,其它iOS UI测试自动化框架还包括Calabash和Sauce Labs的Appium。(详情:https://github.com/google/EarlGrey


35、Blockly  Star 3520


Blockly 是一个基于 Web 的可视化编程工具,只需要拖动几个图形就可以编程, 完全不需要打字. 根据项目FAQ介绍, 这个新语言的主要目的是为web应用提供宏(或脚本编 程)的支持. 可以把生成的脚本输出成javascript, python 等.已经有几个利用Blockly的demo.(详情:https://github.com/google/blockly


36、go-github  Star 2707


go-github  是 Google 对 Github 的开放 API 进行 Go 语言封装的一个项目。(详情:https://github.com/google/go-github


37、抓取bug工具 error-prone   Star 2708


error-prone 用来抓取 Java 编译时的错误。通常使用编译器只能做静态类型的检查。但使用此工具,能够进行编译器的类型分析,能够检测并抓取到编译过程中的 Bug,能够大大的节约开发者的时间。(详情:https://github.com/google/error-prone


38、ROS 系统支持的 SLAM 库 Cartographer   Star 2700


Cartographer,是Google开源的一个ROS系统支持的2D和3D SLAM(simultaneous localization and mapping)库。SLAM 算法结合来自多个传感器(比如,LIDAR、IMU 和 摄像头)的数据,同步计算传感器的位置并绘制传感器周围的环境。在产业界和学术界常见的传感器配置上,Cartographer 能实时建立全局一致的地图。(详情:https://github.com/googlecartographer/cartographer


39、安卓电量分析工具 Battery Historian   Star 2579


Battery Historian 是一个通过分析安卓 "bugreport" 进程文件来统计电量消费情况。它允许应用程序开发人员在时间线上可视化系统和应用程序级事件,具有平移和缩放功能,在设备上完全充电后可以轻松查看各种汇总统计信息,并能选择应用程序,检查影响应用程序特定电池的指标。 它还允许两个错误报告的A / B比较,突出显示关键电池相关指标的差异。(详情:https://github.com/google/battery-historian


40、通用编码器&解码器框架 seq2seq  Star 2433


seq2seq 是 Google 开源的一款用于 TensorFlow 的通用编码器&解码器框架(encoder-decoder framework),可用于机器翻译、文本摘要、会话建模、图像描述等。(详情:https://github.com/google/seq2seq


41、Web应用 Tracing Framework   Star 2371


Tracing Framework 是一套库、工具,用于跟踪和调查复杂的 Web 应用。它就可以帮你发现代码的性能问题,并且帮你打造十分流畅的 60 FPS Web 应用。它目前只能用于特定的应用场合,并不是为应用于所有场景而设计,如果你在使用过程中遇到了问题,请呈递你的 Bug。(详情:https://github.com/google/tracing-framework


42、深度概率编程语言 Edward   Star 2395


Edward 是一个用于概率建模、推理和评估的 Python 库。它是一个用于快速实验和研究概率模型的测试平台,其涵盖的模型范围从在小数据集上的经典层次模型到在大数据集上的复杂深度概率模型。Edward 融合了以下三个领域:贝叶斯统计学和机器学习、深度学习、概率编程。(详情:https://github.com/blei-lab/edward


43、JavaScript 库 Closure Library   Star 2257


Closure Library 是一个强大的 JavaScript 库,用于复杂的大规模的 Web 应用。它被许多 Google Web 应用使用,比如 Gmail 和 Google Docs。(详情:https://github.com/google/closure-library


44、大型微服务系统管理工具 Istio   Star 2291


Istio 是一个由谷歌、IBM 与 Lyft 共同开发的开源项目,旨在提供一种统一化的微服务连接、安全保障、管理与监控方式。Istio 项目能够为微服务架构提供流量管理机制,同时亦为其它增值功能(包括安全性、监控、路由、连接管理与策略等)创造了基础。这款软件利用久经考验的 Lyft Envoy 代理进行构建,可在无需对应用程序代码作出任何发动的前提下实现可视性与控制能力。(详情:https://github.com/istio/istio


45、远程现场取证系统 GRR   Star 2100


GRR 是 Google 开发的远程现场事件取证系统。GRR 由一个代理(客户端)和服务器端组成,客户端可以部署在一个任务系统中,服务器可以管理客户端,跟客户端进行交互。(详情:https://github.com/google/grr


46、Android 的悬浮操作栏 Hover   Star 2053


Hover 是一个用于 Android 的悬浮操作栏。该菜单栏可以作为一个 service 启动,从而跨进程使用,悬浮在桌面或者其他应用程序的前面,当然,这里需要申请权限。 Hover 仍处在开发阶段,还有很多代码清理工作需要做,也就是说,Hover 现在仅仅处于可用状态。(详情:https://github.com/google/hover


47、模块化深度学习系统 Tensor2Tensor   Star 2000


Tensor2Tensor 是一个模块化和可扩展的库和二进制文件,  能够帮助人们为各种机器学习程序创建最先进的模型,可应用于多个领域,如翻译、语法分析、图像信息描述等,大大提高了研究和开发的速度。(详情:https://github.com/tensorflow/tensor2tensor


48、Google 模糊测试服务 OSS-Fuzz   Star 1781


OSS-Fuzz 能够针对开源软件进行持续的模糊测试,它的目的是利用更新的模糊测试技术与可拓展的分布式执行相结合,提高一般软件基础架构的安全性与稳定性。OSS-Fuzz 结合了多种模糊测试技术/漏洞捕捉技术(即原来的libfuzzer)与清洗技术(即原来的 AddressSanitizer),并且通过 ClusterFuzz 为大规模可分布式执行提供了测试环境。(详情:https://github.com/google/oss-fuzz


49、优化搜索工具or-tools   Star 1771


or-tools 是 Google 的优化搜索工具。Google 优化工具包括:约束编程解决方案;为线性规划和混合整数规划解决方案提供简单统一的接口,包括 CBC, CLP, GLOP, GLPK, Gurobi, SCIP, 和 Sulum;背包算法;图算法 (最短路径,线性和分配,最小费用流,最大流)(详情:https://github.com/google/or-tools


50、加密库安全测试套件 Wycheproof   ★Star 1722


Wycheproof 是谷歌开源的加密库测试项目,它包含一系列安全测试,用来检测加密库(cryptographic libraries)软件是否存在已知的攻击漏洞。(详情:https://github.com/google/wycheproof


51、Common Lisp Koans   Star 1695


Common Lisp Koans(lisp-koans)是一个语言学习练习程序,类似 ruby koans,python koans 等等。Common Lisp Koans 主要是帮助学习一些 lisp 规范特性和改进,可以学习到大量的 Common Lisp 语言特性。(详情:https://github.com/google/lisp-koans


52、 3D 图形开源压缩库 Draco   Star 1600


Draco 是一种库,用于压缩和解压缩 3D 几何网格(geometric mesh)和点云(point cloud)。换句话说,它显著缩小了 3D 图形文件的大小,同时对 3D 图形的观看者来说又根本不严重影响视觉效果。它还旨在改善 3D 图形的压缩和传输。Draco 是作为 C++ 源代码发布的,可以用来压缩 3D 图形,另外还发布了处理编码数据的 C++ 和 Javascript 解码器。(详情:https://github.com/google/draco


53、 JavaScript 库 Shaka Player   Star 1354


Shaka Player 它实现了 DASH 客户端的功能。它的播放功能基于 HTML5 video、MediaSource Extensions,和 Encrypted Media Extensions 。一般的 DASH 客户端功能很难实现。(详情:https://github.com/google/shaka-player


54、TensorFlow 深度学习库 Fold   Star 1192


TensorFlow Fold 是用于创建使用结构化数据的 TensorFlow 模型库,其中计算图的结构取决于输入数据的结构。 TensorFlow Fold 使得处理不同数据尺寸和结构的深度学习模型更容易实现。(详情:https://github.com/tensorflow/fold


55、Google 地球企业版 Earth Enterprise   ★Star 1161


Earth Enterprise 是 Google Earth Enterprise 的开源版本,是一个提供构建和托管自定义 3D 地球模型和 2D 地图的地理空间应用,旨在让社区继续改进和推进该项目。(详情:https://github.com/google/earthenterprise


56、图像差异比较库 Butteraugli   ★Star 1100


Butteraugli 是用来评判两个图像之间的相似度。通过识别图像之间一些最受关注的差异点并给出相似度分值。这个项目的一个主要动机是对差异受体的不同颜色的位置和密度的统计,特别是蓝色的低密度锥窝。另一个动机来自于更准确的神经节细胞建模,特别是抑制频率空间。目前该项目只提供了 C++ 接口。(详情:https://github.com/google/butteraugli


57、Go 语言实现的网络协协议栈 Netstack   ★Star 1016


Netstack,使用 Go 语言编写的网络协议栈。通过安装 tun_tcp_echo demo 尝试在 Linux 上使用 。(详情:https://github.com/google/netstack


58、钢琴二重奏 AI aiexperiments-ai-duet   ★Star 883


“钢琴二重奏”的 A.I. Duet。该项目会在你弹出了几个音符之后,通过 AI 自动计算来帮你“补完”旋律的重奏部分。A.I. Duet 运用了人工智能技术,通晓音符的“编码规则”。(详情:https://github.com/googlecreativelab/aiexperiments-ai-duet


59、端到端加密系统 E2EMail   Star 704


E2EMail 是一个实验性质的端到端加密系统。E2EMail由Google开发,内置JavaScript内部开发的JavaScript加密库。它提供了一种通过Chrome扩展程序将OpenPGP集成到Gmail中的方法。消息的明文单独保留在客户端上。(详情:https://github.com/e2email-org/e2email





最后

以上就是感性心情为你收集整理的开源项目--阿里巴巴&&腾讯&&Google 腾讯的全部内容,希望文章能够帮你解决开源项目--阿里巴巴&&腾讯&&Google 腾讯所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部