腾讯最热门30款开源项目

开源是个好东西,马化腾除了王者荣耀还是干了些好事情的。腾讯最近开源的一些比较热门的项目,可以学习了解下哈

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é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

原文发布于微信公众号 - Android历练记(gh_db8538619cdd)

原文发表时间:2017-07-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SDNLAB

分层安全用于通用客户端设备(uCPE)部署的准则

15850
来自专栏美团技术团队

iOS App冷启动治理:来自美团外卖的实践

冷启动时长是App性能的重要指标,作为用户体验的第一道“门”,直接决定着用户对App的第一印象。美团外卖iOS客户端从2013年11月开始,历经几十个版本的迭代...

20620
来自专栏IT大咖说

一位前端专家构建GraphQL工程的心路历程

内容来源:2018 年 6 月 9 日,国内某大型电商公司用户体验部门前端开发专家邓若奇在“杭州第一届 GraphQLParty—GraphQL与领域驱动带来的...

1.1K10
来自专栏前端架构

批量删除腾讯专栏文章的脚本

批量删除腾讯专栏文章的脚本,腾讯云专栏签约后,抓取文章不插入原来连接,这个我怎么评价了呢!只好删除,走人了

38330
来自专栏腾讯Bugly的专栏

《iOS APP 性能检测》

| 导语 最近组里在做性能优化,既然要优化,就首先要有指标来描述性能水平,并且可以检测到这些指标,通过指标值的变化来看优化效果,于是笔者调研了iOS APP性能...

1.8K50
来自专栏数据库新发现

ASM存储高怎么办?这里有一套可用故障解决分析方案

原文链接:http://www.enmotech.com/web/detail/1/588/1.html

15220
来自专栏musazhang的专栏

【 腾讯云的1001种玩法 】腾讯云数据库优化最佳实战:以 TXSQL 为例

TXSQL-Tencent MySQL 自从2016年5月份正式立项,在近一年的时间里对 MySQL 的读写性能、强同步、大并发量访问和稳定性等方面做了大量工作...

68830
来自专栏编程软文

程序员常用软件,你用了哪些

30350
来自专栏Android 开发者

Android P Beta 3 现已发布!

23640
来自专栏Android 开发者

像奥利奥一样的双重安全措施,尽在 Android Oreo

23030

扫码关注云+社区

领取腾讯云代金券