日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第一篇|腾讯开源项目盘点:WeUI,WePY,Tinker,Mars等

發(fā)布時間:2024/2/28 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第一篇|腾讯开源项目盘点:WeUI,WePY,Tinker,Mars等 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.




開源展示了人類共同協(xié)作,成果分享的魅力,每一次技術(shù)發(fā)展都是站在巨人的肩膀上,技術(shù)諸多創(chuàng)新和發(fā)展往往就是基于開源發(fā)展起來的,沒有任何一家網(wǎng)絡(luò)公司可以不使用開源技術(shù),僅靠自身技術(shù)而發(fā)展起來。

騰訊開源了個很多非常有價值的項目,下面我們一起按照Stars(受歡迎程度)來盤點下這些開源項目。

1、微信原生視覺的基礎(chǔ)樣式庫 WeUI? ??star:21429



WeUI 是一套同微信原生視覺體驗一致的基礎(chǔ)樣式庫,由微信官方設(shè)計團(tuán)隊為微信 Web 開發(fā)量身設(shè)計,可以令用戶的使用感知更加統(tǒng)一。

包含button、cell、dialog、 progress、 toast、article、actionsheet、icon等各式元素。


WeUI 是一套同微信原生視覺體驗一致的基礎(chǔ)樣式庫,由微信官方設(shè)計團(tuán)隊為微信內(nèi)網(wǎng)頁和微信小程序量身設(shè)計,令用戶的使用感知更加統(tǒng)一。

WeUI-Design 是微信官方設(shè)計團(tuán)隊設(shè)計的一套同微信原生視覺體驗一致的基礎(chǔ)視覺樣式庫,目前提供 Sketch 與 PSD 基礎(chǔ)樣式庫源文件。

開發(fā)者或設(shè)計師可以使用 WeUI-Design 進(jìn)行微信 Web 開發(fā)的原型設(shè)計、視覺設(shè)計等。


手機(jī)掃碼預(yù)覽:


項目地址:

https://github.com/Tencent/weui

官網(wǎng):

https://weui.io


2、一款讓小程序支持組件化開發(fā)的框架 WePY? ?star:16621



WePY (發(fā)音: /'wepi/)是一款讓小程序支持組件化開發(fā)的框架,通過預(yù)編譯的手段讓開發(fā)者可以選擇自己喜歡的開發(fā)風(fēng)格去開發(fā)小程序。

框架的細(xì)節(jié)優(yōu)化,Promise,Async Functions的引入都是為了能讓開發(fā)小程序項目變得更加簡單,高效。


特性:

類Vue開發(fā)風(fēng)格

支持自定義組件開發(fā)

支持引入NPM包

支持Promise

支持ES2015+特性,如Async Functions

支持多種編譯器,Less/Sass/Stylus/PostCSS、Babel/Typescript、Pug

支持多種插件處理,文件壓縮,圖片壓縮,內(nèi)容替換等

支持 Sourcemap,ESLint等

小程序細(xì)節(jié)優(yōu)化,如請求列隊,事件優(yōu)化等


項目地址:

https://github.com/Tencent/wepy


官網(wǎng):

https://tencent.github.io/wepy/



3、微信官方的Android熱補(bǔ)丁解決方案??Tinker? ? star:13237



微信開源的 Android 熱修復(fù)框架 Tinker,支持在無需升級APK的前提下更新 dex, library and resources 文件。

Tinker是微信官方的Android熱補(bǔ)丁解決方案,它支持動態(tài)下發(fā)代碼、So庫以及資源,讓應(yīng)用能夠在不需要重新安裝的情況下實現(xiàn)更新。當(dāng)然,你也可以使用Tinker來更新你的插件。


它主要包括以下幾個部分:

gradle編譯插件:?tinker-patch-gradle-plugin

核心sdk庫:?tinker-android-lib

非gradle編譯用戶的命令行版本:?tinker-patch-cli.jar


項目地址:

https://github.com/Tencent/tinker


4、微信官方的跨平臺跨業(yè)務(wù)的終端基礎(chǔ)組件?Mars? star:12071



Mars 是微信官方的跨平臺跨業(yè)務(wù)的終端基礎(chǔ)組件,是一個使用 C++ 編寫的業(yè)務(wù)性無關(guān)、平臺性無關(guān)的基礎(chǔ)組件。目前已接入微信 Android、iOS、Mac、Windows、WP 等客戶端。


主要包括以下幾個部分:

COMM:基礎(chǔ)庫,包括socket、線程、消息隊列、協(xié)程等基礎(chǔ)工具;

XLOG:通用日志模塊,充分考慮移動終端的特點,提供高性能、高可用、安全性、容錯性的日志功能;

SDT:網(wǎng)絡(luò)診斷模塊;

STN:信令傳輸網(wǎng)絡(luò)模塊(核心模塊),負(fù)責(zé)終端與服務(wù)器的小數(shù)據(jù)信令通道。包含了微信終端在移動網(wǎng)絡(luò)上的大量優(yōu)化經(jīng)驗與成果,經(jīng)歷了微信海量用戶的考驗。


項目地址:

https://github.com/Tencent/mars


5、輕量級的高性能的Hybrid框架?VasSonic? ? ?star:9254





VasSonic取名于世嘉動畫形象音速小子,是騰訊QQ會員 VAS團(tuán)隊研發(fā)的一個輕量級的高性能的Hybrid框架,專注于提升頁面首屏加載速度,完美支持靜態(tài)直出頁面和動態(tài)直出頁面,兼容離線包等方案。?

接入VasSonic后首次打開可以在初始化APP的時候并行請求頁面資源,并且具備邊加載邊渲染的能力。非首次打開時,APP可以快速加載上次打開動態(tài)緩存在本地的頁面資源,然后動態(tài)刷新頁面。騰訊手機(jī)QQ通過VasSonic框架使得頁面首屏耗時平均低于1S以下。


項目地址:

https://github.com/Tencent/VasSonic


6、一個輕量、可拓展、針對手機(jī)網(wǎng)頁的前端開發(fā)者調(diào)試面板 vConsole?? ? star:8136



vConsole是一個輕量、可拓展、針對手機(jī)網(wǎng)頁的前端開發(fā)者調(diào)試面板。?


特性:

查看 console 日志

查看網(wǎng)絡(luò)請求

查看頁面 element 結(jié)構(gòu)

查看 Cookies、localStorage 和 SessionStorage

手動執(zhí)行 JS 命令行

自定義插件


掃碼預(yù)覽:



項目地址:

https://github.com/Tencent/vConsole



7、通用Web組件化框架 Omi? star:7383



Omi 是一款用于創(chuàng)建用戶界面的組件化框架,開放并且現(xiàn)代,故得名:Omi(Open and modern framework for building user interfaces)。


特性:

超小的尺寸,7 kb (gzip)

局部 CSS,HTML+ Scoped CSS + JS 組成可復(fù)用的組件。不用擔(dān)心組件的 CSS 會污染組件外的,Omi會幫你處理好一切

更自由的更新,每個組件都有 update 方法,自由選擇時機(jī)進(jìn)行更新。你也可以和 obajs 或者 mobx 一起使用來實現(xiàn)自動更新

模板引擎可替換,開發(fā)者可以重寫 Omi.template 方法來使用任意模板引擎

完全面向?qū)ο?#xff0c;函數(shù)式和面向?qū)ο蟾饔袃?yōu)劣,Omi 使用完全的面向?qū)ο蟮姆绞絹順?gòu)建 Web 程序

ES6+ 和 ES5 都可以,Omi 提供了 ES6+ 和 ES5 的兩種開發(fā)方案。你可以自有選擇你喜愛的方式


項目地址:

https://github.com/Tencent/omi

8、高效的 C++ JSON 解析/生成器? RapidJSON? ? star:7296





RapidJSON 是一個 C++ 的 JSON 解析器及生成器,提供 SAX 及 DOM 風(fēng)格 API。它的靈感來自?RapidXml。

RapidJSON 小而全。它同時支持 SAX 和 DOM 風(fēng)格的 API。SAX 解析器只有約 500 行代碼。

RapidJSON 快。它的性能可與?strlen()?相比。可支持 SSE2/SSE4.2 加速。

RapidJSON 獨(dú)立。它不依賴于 BOOST 等外部庫。它甚至不依賴于 STL。

RapidJSON 對內(nèi)存友好。在大部分 32/64 位機(jī)器上,每個 JSON 值只占 16 字節(jié)(除字符串外)。它預(yù)設(shè)使用一個快速的內(nèi)存分配器,令分析器可以緊湊地分配內(nèi)存。

RapidJSON 對 Unicode 友好。它支持 UTF-8、UTF-16、UTF-32 (大端序/小端序),并內(nèi)部支持這些編碼的檢測、校驗及轉(zhuǎn)碼。例如,RapidJSON 可以在分析一個 UTF-8 文件至 DOM 時,把當(dāng)中的 JSON 字符串轉(zhuǎn)碼至 UTF-16。它也支持代理對(surrogate pair)及?"\u0000"(空字符)。



項目地址:

https://github.com/Tencent/RapidJSON


9、微信開源的高效、完整、易用的移動數(shù)據(jù)庫框架? WCDB? star:6988


WCDB是一個高效、完整、易用的移動數(shù)據(jù)庫框架,基于SQLCipher,支持iOS, macOS和Android。

WCDB for iOS/macOS


特性:

WINQ(WCDB語言集成查詢): 通過WINQ,開發(fā)者無須為了拼接SQL的字符串而寫一大坨膠水代碼。

ORM(Object Relational Mapping): WCDB支持靈活、易用的ORM。開發(fā)者可以很便捷地定義表、索引、約束,并進(jìn)行增刪改查操作。

多線程高并發(fā): WCDB支持多線程讀與讀、讀與寫并發(fā)執(zhí)行,寫與寫串行執(zhí)行。

加密:WCDB提供基于SQLCipher的數(shù)據(jù)庫加密。

損壞修復(fù): WCDB內(nèi)建了Repair Kit用于修復(fù)損壞的數(shù)據(jù)庫。

反注入: WCDB內(nèi)建了對SQL注入的保護(hù)。


項目地址:

https://github.com/Tencent/wcdb


10、基于 mmap 內(nèi)存映射的移動端通用 key-value 組件? ?MMKV?

?star:6521



MMKV 是基于 mmap 內(nèi)存映射的 key-value 組件,底層序列化/反序列化使用 protobuf 實現(xiàn),性能高,穩(wěn)定性強(qiáng)。從 2015 年中至今在微信上使用,其性能和穩(wěn)定性經(jīng)過了時間的驗證。

近期也已移植到 Android / macOS / Windows 平臺,一并開源。

MMKV 源起:

在微信客戶端的日常運(yùn)營中,時不時就會爆發(fā)特殊文字引起系統(tǒng)的 crash,參考文章,文章里面設(shè)計的技術(shù)方案是在關(guān)鍵代碼前后進(jìn)行計數(shù)器的加減,通過檢查計數(shù)器的異常,來發(fā)現(xiàn)引起閃退的異常文字。在會話列表、會話界面等有大量 cell 的地方,希望新加的計時器不會影響滑動性能;另外這些計數(shù)器還要永久存儲下來——因為閃退隨時可能發(fā)生。

這就需要一個性能非常高的通用 key-value 存儲組件,我們考察了 SharedPreferences、NSUserDefaults、SQLite 等常見組件,發(fā)現(xiàn)都沒能滿足如此苛刻的性能要求。

考慮到這個防 crash 方案最主要的訴求還是實時寫入,而 mmap 內(nèi)存映射文件剛好滿足這種需求,我們嘗試通過它來實現(xiàn)一套 key-value 組件。


項目地址:

https://github.com/Tencent/mmkv



請各位保持關(guān)注「騰訊技術(shù)工程」公眾號,我們會持續(xù)更新騰訊開源項目。


超強(qiáng)干貨來襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生

總結(jié)

以上是生活随笔為你收集整理的第一篇|腾讯开源项目盘点:WeUI,WePY,Tinker,Mars等的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。