Tencent's top 10 open source projects for WeChat and mobile development

Tencent's top 10 open source projects for WeChat and mobile development

Tencent has open-sourced many very valuable projects. Let's take a look at Tencent's top 10 open-source projects.

1. Android hot fix framework Tinker

Tinker is WeChat's official Android hot patch solution, which supports dynamic distribution of code, So libraries and resources, allowing applications to be updated without reinstalling. Of course, you can also use Tinker to update your plugins.

It mainly includes the following parts:

  • gradle compilation plugin: tinker-patch-gradle-plugin
  • Core SDK library: tinker-android-lib
  • Command line version for non-gradle compiler users: tinker-patch-cli.jar (details: https://github.com/Tencent/tinker)

2. WeChat client cross-platform component Mars

Mars is the official terminal basic component of WeChat, and has been connected to WeChat clients such as Android, iOS, Mac, Windows, and WP. It mainly includes the following parts:

  • comm: a common library that can be used independently, including sockets, threads, message queues, coroutines, etc.;
  • Xlog software: log component, high reliability, high performance
  • SDT: Network Diagnostics Component
  • STN: signaling distribution network module, which is also the most important part of Mars. Figure. (Details: https://github.com/Tencent/mars)

3. Wepy, a componentized development framework for small programs

WePY is a framework that supports component-based development of mini-programs. Through pre-compilation, developers can choose their favorite development style to develop mini-programs. The framework's detailed optimization, Promise, and the introduction of Async Functions are all designed to make the development of mini-program projects simpler and more efficient.

At the same time, WePY is also a growing framework, which has absorbed and borrowed a lot of design concepts and ideas from some optimized front-end tools and frameworks. If WePY has shortcomings or you have better ideas, you are welcome to submit an ISSUE or PR.

characteristic:

  • Vue-like development style
  • Support custom component development
  • Support importing NPM packages
  • Support Promises
  • Support ES2015+ features, such as Async Functions
  • Support multiple compilers, Less/Sass/Stylus, Babel/Typescript, Pug
  • Supports multiple plug-in processing, file compression, image compression, content replacement, etc.
  • Support Sourcemap, ESLint, etc.
  • Mini-app details optimization, such as request queuing, event optimization, etc. (Details: https://github.com/Tencent/wepy)

4. Lightweight and high-performance hybrid framework VasSonic

VasSonic is a lightweight, high-performance hybrid framework developed by Tencent QQ Member VAS Team. It focuses on improving the first screen loading speed of the page, fully supports static direct-out pages and dynamic direct-out pages, and is compatible with offline packages and other solutions.

After accessing VasSonic, the app can be opened in parallel to request page resources when initializing the app, and it has the ability to render while loading. When it is not opened in a timely manner, the app can quickly load the page resources that were dynamically cached locally the last time it was opened, and then dynamically refresh the page. Tencent Mobile QQ uses the VasSonic framework to make the average time spent on the first screen of the page less than 1S. (Address: https://github.com/Tencent/VasSonic)

5. WeFlow, the front-end development tool of the WeChat team

This is an efficient, powerful, cross-platform (macOS & Win) front-end tool, based on the tmt-workflow workflow. (Details: https://github.com/weixin/WeFlow)

6. Mobile database framework WCDB

WCDB is an efficient, complete and easy-to-use mobile database framework based on SQLCipher, supporting iOS, macOS and Android.

[[221638]]

Basic Features:

  • Easy to use, WCDB supports extracting data and combining them into objects with just one line of code.
  • Efficient: WCDB optimizes the framework layer and sqlcipher source code to make it more efficient.
  • Complete, WCDB covers the required functions of various database-related scenarios. (Details: https://github.com/Tencent/wcdb)

7. Angel, a machine learning framework based on the concept of parameter server

Angel is a high-performance distributed machine learning platform developed based on the concept of parameter server. It has been repeatedly tuned based on the massive data within Tencent and has wide applicability and stability. The higher the model dimension, the more obvious the advantage. Angel was jointly developed by Tencent and Peking University, taking into account both high availability in the industry and innovation in the academic world.

Angel is developed based on Java and Scala, can be directly scheduled and run on the community's Yarn, and based on PS Service, supports Spark on Angel. In the future, it will support graph computing and deep learning framework integration. (Details: https://github.com/Tencent/angel)

8. Automatic memory leak detection tool MLeaksFinder

MLeaksFinder is an automatic memory leak detection tool for the iOS platform that Tencent has opened up. After the introduction of MLeaksFinder, memory leaks can be automatically discovered and warned during daily development and debugging of business logic. It has the following features:

  • Automatically detect memory leaks and untimely release scenarios
  • Build a reference chain of leaked objects relative to ViewContrller to help developers locate the problem
  • It does not intrude into business logic and takes effect as soon as it is introduced. There is no need to modify any code or introduce header files (details: https://github.com/Tencent/MLeaksFinder)

9. UI Library WeUI

WeUI is a UI library designed by the official WeChat design team for WeChat mobile web applications. WeUI is a basic style library that is consistent with the native visual experience of WeChat. It is tailor-made for WeChat Web development and can make users' usage perception more unified. It includes various elements such as button, cell, dialog, toast, article, icon, etc. (Details: https://github.com/weixin/WeUI)

10. Distributed background service engine MSEC

Millisecond Service Engine (MSEC) is open sourced by Tencent QQ team. It is a backend DEV&OPS engine, including RPC, name lookup, load balancing, monitoring, publishing and capacity management. Millisecond Service Engine features:

  • Inter-module access uses RPC, so developers do not need to worry about the network and message format and can develop distributed services just like writing stand-alone programs.
  • Automatic load balancing and fault tolerance, automatic response to single machine failures, local network fluctuations, and other situations, to provide high service availability.
  • Supports C/C++/java/PHP languages. If you choose C/C++ language, it supports coroutines, combining development and operation efficiency.
  • Web-based management interface
  • Simple deployment. Servers that require complex deployment are installed using Docker images.
  • Compared with solutions that are pieced together using other open source components, the Millisecond Service Engine is more systematic and has better team specifications.

<<:  It only costs $50 to crack an iPhone!

>>:  Summary of iOS interview in February 2018

Recommend

How is the random algorithm of WeChat red envelopes implemented?

I saw a question on Zhihu: How is the random algo...

Xiaomi responds to being banned in India (with original text)

Xiaomi responds to being banned in India (with or...

Xue Song Behavioral Finance, Vol. 1

Xue Song's Behavioral Finance, Issue 1 Resour...

4 memory usage issues game developers need to pay attention to

[[151106]] By Aditya Kulkarni From a sales perspe...

Is it really true that the more search terms an APP covers, the better?

From some statistical systems, you can see the nu...

What is the difference between cloud servers, virtual hosting and VPS?

For novice SEO website optimizers, the fastest wa...

How much does it cost to join a home improvement app in Yuxi?

Why join the WeChat Mini Program Development Comp...

10 strategic indicators on how to quickly increase the volume of advertising!

This article will introduce in detail the specifi...

Advantages and display forms of Kuaishou advertising!

Nowadays, the short video industry is developing ...