首頁(yè)>資訊 >
“巨型屎山”QQ桌面版終于要重做,但騰訊還是被罵慘了 2023-01-19 11:02:33  來(lái)源:36氪

每次打開 QQ 桌面版,世超都有一種回到小時(shí)候的感覺 ——這可不是對(duì) QQ 的夸獎(jiǎng)。


【資料圖】

作為一個(gè) 20 多歲的互聯(lián)網(wǎng)活化石,在不斷的修修補(bǔ)補(bǔ)、增增減減之后,QQ 電腦版也和微軟 Win11 一樣,存在著很多不協(xié)調(diào)的 “ 割裂感 ” 。

就比方說(shuō),本來(lái)就不算大的主界面里,愣是存在著三個(gè)可展開的選項(xiàng)菜單。

主要的功能按鈕也被劃分到了頂部、中間、底部。

并且還被分別賦予了 “ 小圖標(biāo) ” 、 “ 純文字 ” 、 “ 中圖標(biāo) ” 三種展現(xiàn)形式。

尤其是這兩年 “ 移動(dòng)文化 ” 的反哺,QQ 電腦版也開始迎合 “ 潮流 ” 。

先是出現(xiàn)了個(gè)獨(dú)立于主界面、神似國(guó)外語(yǔ)音軟件 Discord 的 “ QQ頻道 ” 模塊。。。

然后是往桌面版增加了個(gè)用來(lái)刷短視頻的 “ QQ 小世界 ” 。

類似這樣的操作更加深了 QQ 桌面版體驗(yàn)和觀感上的割裂。。。

所以也難怪了。。。為什么會(huì)有那么多 QQ 用戶自發(fā)在網(wǎng)上勸大家“ 改用 TIM ”

作為一個(gè)最近幾年 QQ 團(tuán)隊(duì)搞出來(lái)的新項(xiàng)目,這個(gè)“ QQ 官方辦公簡(jiǎn)潔版 ”沒有糅合太多的東西。

并且整個(gè)界面的設(shè)計(jì)語(yǔ)言也比較統(tǒng)一和現(xiàn)代化。。。一眼合理。

不過(guò) TIM 也有自己的問(wèn)題:比如太強(qiáng)調(diào) “ 辦公 ” 屬性了,把強(qiáng)調(diào)個(gè)性的一些氣泡、動(dòng)畫、裝扮什么也給砍掉了。

所以。。。目前的現(xiàn)狀就有點(diǎn)不上不下 ——

大家要么忍受一團(tuán)漿糊的 QQ 桌面版;要么犧牲一些功能便利,使用 TIM 桌面版。

當(dāng)然了還有一些魔改操作,不過(guò)因?yàn)橛懈怕蕦?dǎo)致封號(hào),世超在這里就不贅述了。。。

但是就在前一陣,有消息說(shuō) QQ 桌面版即將迎來(lái)一次 “ 史詩(shī)級(jí)重構(gòu) ” !

據(jù)說(shuō)這個(gè)版本會(huì)在 2023 年春節(jié)之后正式發(fā)布,UI 界面更加大氣、現(xiàn)代化。

而且以后的 QQ 將會(huì)在 Windows / MacOS / Linux 三個(gè)系統(tǒng)上同步更新!

連 Linux 都有?。?!統(tǒng)信 UOS 、中科紅旗、深度、Ubuntu 操作系統(tǒng)的用戶們,你們等這一天可等太久了。。。

然而。。。隨著時(shí)間的推移,內(nèi)測(cè)版、公測(cè)版的陸續(xù)發(fā)布,這個(gè) “ QQ 2023 重構(gòu)計(jì)劃 ” 非但沒有得到大家的肯定,甚至還有人直接開罵了。

原因在于,騰訊這次放著原本自家的 Hummer 框架、開源高效的 Qt 框架不用,扭頭選擇了 Electron 框架!

我說(shuō)到這兒,估計(jì)有些懂開發(fā)的差友已經(jīng)懂了 ( 并且心臟驟停了 ) 。

因?yàn)?。?!?strong>這個(gè)框架對(duì)老電腦 ( 尤其小內(nèi)存 ) 的用戶們 —— 非、常、不、友、好!

可能有些小伙伴還是沒納過(guò)悶來(lái),所以我們?cè)偕晕⒄归_講一講:

一切的一切,都要從 Chrome 瀏覽器這個(gè) “ 萬(wàn)惡之源 ” 說(shuō)起。。。

等一等,我們剛剛不是在聊寫代碼嗎,怎么突然扯到谷歌瀏覽器身上了?

emmmmm,大家先別急,麻煩大家伙先跟我一起回想個(gè)事:

你還記得谷歌 Chrome 瀏覽器發(fā)布之前,微軟 IE 6.0 時(shí)代的網(wǎng)頁(yè)們,長(zhǎng)什么樣子嘛?

不記得沒關(guān)系,我在這里貼張圖大家感受一下。。。

巨丑,純文字,而且?guī)缀鯖]有動(dòng)畫 ——有動(dòng)畫通常也是外掛了 Flash 插件和文件的結(jié)果。。。

但是這種網(wǎng)頁(yè)如今幾乎已經(jīng)絕跡了,F(xiàn)lash 也壽終正寢了。

現(xiàn)在的網(wǎng)頁(yè),連網(wǎng)址導(dǎo)航的動(dòng)畫都絲滑流暢,WPS、聊天、甚至 Photoshop 一類的軟件可以直接做出全功能的網(wǎng)頁(yè)版。

甚至就連需要調(diào)用顯卡的 2.5D 端游,都直接 Web 化了。

歸根結(jié)底,這一切能實(shí)現(xiàn)。。。在于 Chrome 內(nèi)置的 Blink ( 渲染引擎 )/ V8( JS 解釋器 ) 太吊了。

有人說(shuō) Chrome 瀏覽器的開發(fā)工作量完全不亞于一套操作系統(tǒng)。。。確實(shí)是這樣。

而且這么 NB 的瀏覽器,它核心代碼是完全開源的!

于是。。。就有人動(dòng)起 “ 歪心思 ” 了:

既然網(wǎng)頁(yè)里面能實(shí)現(xiàn)的功能已經(jīng)這么強(qiáng)了,我能不能直接把網(wǎng)頁(yè)套一層殼,然后偽裝成客戶端?

這樣我只需要寫一個(gè)網(wǎng)頁(yè),再打包一下,不就能直接同時(shí)兼容 Windows / MacOS / Linux 了?

哦買噶哦買噶。。。我真是太天才了 —— 這么跨時(shí)代的東西要是能面世,全世界的程序員不得給我集體磕三個(gè)?!

其實(shí) “ 磕三個(gè) ” 真不算夸張:因?yàn)橐郧俺绦騿T們寫程序,想支持幾個(gè)系統(tǒng)、通常就得寫幾份代碼。

因?yàn)槊總€(gè)系統(tǒng)的架構(gòu)、接口啥的通常都不一樣。

而且還涉及到偏底層的資源指針、內(nèi)存釋放什么的性能調(diào)試過(guò)程。。。

這就導(dǎo)致了程序員的牛x程度決定了程序的運(yùn)行速度,頭發(fā)數(shù)量決定了 bug 數(shù)量。

但是!假如變成 “ 網(wǎng)頁(yè)套殼 ” —— 只要代碼在瀏覽器里徹底跑通了,那么瀏覽器能支持多少個(gè)系統(tǒng),這段代碼就能支持多少個(gè)操作系統(tǒng)!

相當(dāng)于以前,程序員們需要直接對(duì)系統(tǒng)環(huán)境和資源負(fù)責(zé),但現(xiàn)在:

“ 網(wǎng)頁(yè)寫漂亮了就行,剩下的 Chrome 來(lái)想辦法 ” !

基于這個(gè) “指導(dǎo)思想”,2013 年的時(shí)候,開發(fā)者平臺(tái) GitHub 發(fā)布了個(gè)名叫 Electron 的框架。

Electron 框架由兩大部分揉成:一個(gè)是名叫 CEF ( Chrome 嵌入式框架 ) 的前端部分,一個(gè)是名叫 NodeJS 的后端部分。

這部分要是展開的話又能嘮個(gè)差不多十分鐘了。。。所以我們今天就不細(xì)說(shuō)了。

你們可能不知道,目前基于 / 半基于 Electron 框架制作的程序已經(jīng)非常多了:網(wǎng)易云、Epic 游戲商店、飛書、KOOK、百度網(wǎng)盤。。。

這些程序的特點(diǎn)很明顯,目錄里都自帶了個(gè)名叫Chrome或是libcef的資源文件。

u1s1,Electron 框架的想法真的是好的 —— 畢竟網(wǎng)頁(yè)代碼比傳統(tǒng)程序代碼好寫多了,程序員可以從原本頭大的調(diào)試工作里解放出來(lái)。

但是,Electron 框架有一個(gè)問(wèn)題。。。確切來(lái)說(shuō),是 Chrome 瀏覽器的問(wèn)題:

非、常、吃、內(nèi)、存!?。?/strong>

就比方說(shuō),飛書打開界面之后,內(nèi)存占用 400 MB,網(wǎng)易云241.8 MB。

游戲語(yǔ)音軟件 KOOK 比較靦腆,但也吃了 184 MB!

可能大家對(duì)這樣的內(nèi)存占用沒什么概念,所以我又打開了傳統(tǒng)意義上大家可能覺得會(huì)有些臃腫的 Word 和 PowerPoint 。

實(shí)測(cè),Word 內(nèi)存占用 99 MB ,PPT 內(nèi)存占用 106 MB 。

好家伙,這年頭我就聽個(gè)歌,兩個(gè) PPT 出去了?

那么假如 QQ 用上 Electron 框架呢?

目前最新的 QQ Windows 版還是基于原生 C++ 語(yǔ)言寫的,打開一個(gè)群聊之后內(nèi)存占用只有100 MB。

但是客戶端里獨(dú)立的 QQ 頻道 ( QQ Guild ) 模塊整個(gè)是基于 Electron 寫的,內(nèi)存占用288 MB

一個(gè)模塊用 Electron 打包,就已經(jīng)是 QQ 本體三倍的內(nèi)存占用了。。。

而根據(jù)一些使用了 MacOS 公測(cè)版(Electron 重構(gòu)版)的小伙伴在知乎所述,偶爾新版 QQ 能吃掉 0.8 GB - 1 GB 的內(nèi)存!

什么噬元獸?。。?!

現(xiàn)在大家明白,為什么騰訊宣布重構(gòu) QQ 桌面版,但是電腦用戶們樂(lè)不起來(lái)了吧。。。

雖然 UI 界面現(xiàn)代化了,但是以前 100 MB 內(nèi)存能搞定的事,以后不知道得多少個(gè) 100 MB 才能 Hold 住了。

所以。。。明知道 “Chrome 套殼” 方案可能導(dǎo)致內(nèi)存繃不住,為什么 QQ 桌面版團(tuán)隊(duì)還是一股腦往前沖呢?

就像我前面跟大家提過(guò)一嘴的:開源的 Qt 框架、騰訊自研的 Hummer 框架,在這方面處理的都比 Electron 要好,為什么不用呢?

不出意外地,這個(gè)事在知乎上也激起了不小的討論 —— 而目前看來(lái),可能是因?yàn)閮蓚€(gè)比較現(xiàn)實(shí)的情況。

我們先說(shuō)第一個(gè)吧:精通 C++ 原生開發(fā)的人才越來(lái)越稀有了,拿來(lái)寫圖形界面、客戶端什么的太可惜了。

本著 “ 好鋼用在刀刃上 ” 的原則,肯定優(yōu)先讓這些 “ 稀有物種 ” 去倒騰后端,保證整套系統(tǒng)的穩(wěn)定。

而不是讓他們把精力浪費(fèi)在客戶端界面的輸出上。

很可惜,我們前面提到的 Qt 啊、Hummer 之類的,都是以 C++ 語(yǔ)言為底的。

外加上第二個(gè)原因:去年的大廠們,幾乎都在 “ 減負(fù) ” 。。。鵝廠看起來(lái)也沒少 “ 減 ” 。

所以問(wèn)題來(lái)了:繞過(guò) C++、用最少人手完成面向三個(gè)操作系統(tǒng)的客戶端開發(fā)。。。

Electron 貌似是唯一的解。

真的。。。大家可能不知道 Electron 框架到底有多省開發(fā):前面我提了一嘴的游戲語(yǔ)音軟件 KOOK ,兩年前的時(shí)候我曾經(jīng)去他們公司拜訪過(guò)。

他們的四個(gè)端:全功能網(wǎng)頁(yè)版、Windows 客戶端、Android 客戶端、iOS 客戶端。。。

滿打滿算只用了三個(gè)人!

我估計(jì),QQ 桌面版要是全面切換成 Electron 框架,不算后端只算前端的話。。。

最多四五個(gè)人,就把 Windows / Linux / MacOS 的活全都給干了。。。

也就是說(shuō),把現(xiàn)有代碼徹底放棄改用 Electron 重構(gòu),對(duì)于 QQ 團(tuán)隊(duì)的負(fù)責(zé)人來(lái)說(shuō)屬于 “人效比拉滿”、百利無(wú)一害。。。

頂多用戶的內(nèi)存受點(diǎn)兒苦。

但是話又說(shuō)回來(lái)了,需要受這份苦的用戶,還剩下多少呢?

QQ 最后一次頂點(diǎn)是 2018 年,那一年,QQ 全平臺(tái)月活 8 億,移動(dòng)端 6.99 億。

但是五年之后,這個(gè)數(shù)據(jù)已經(jīng)少了兩個(gè)小目標(biāo)了。

以前,QQ 還會(huì)公布一下桌面端的月活人數(shù),然而現(xiàn)在已經(jīng)。。。

這次 QQ 桌面端推倒重來(lái),說(shuō)的陰暗些,就是它的地位再次下滑了。

不然怎么從來(lái)沒聽說(shuō)過(guò)微信電腦版需要使用 Electron 重構(gòu)呢?

看得出來(lái),QQ 這兩年還是很支楞的,并且也在想盡辦法促活:

比如網(wǎng)上偶爾會(huì)有吐槽微信沒有 XXX 功能的帖子,QQ 扭頭一個(gè)更新就安排上了。

也有比如像小世界、QQ 頻道等等。

現(xiàn)在世超身邊習(xí)慣使用 QQ 頻道的小伙伴已經(jīng)有不少了。

但是該說(shuō)不說(shuō),語(yǔ)音進(jìn)度條一類的功能只能算是微創(chuàng)新,頻道功能又是赤果果借鑒 Discord。

這些功能,成不了 QQ 本身的護(hù)城河。

Discord 界面截圖

要想徹底支楞起來(lái),QQ 還是得想辦法掏出來(lái)真正屬于自己的創(chuàng)新和特色。。。

不然的話,別看現(xiàn)在是下坡路 ——以后的下坡路,可還長(zhǎng)著呢。

到時(shí)候說(shuō)不定,給 QQ 優(yōu)化 Electron 代碼的人手也要被 “ 優(yōu)化 ” 啦。

哦話說(shuō)回來(lái),后來(lái)知乎上疑似是 QQ 官方開發(fā)人員的知友 “ MagiLu ” 發(fā)帖說(shuō),開發(fā)團(tuán)隊(duì)有信心控制好 Electron 框架吃內(nèi)存的問(wèn)題。

當(dāng)然了。。。怎么樣算 “ 控制好 ” ,大家心里的標(biāo)尺也不一樣。

我們也只能等春節(jié)之后裝上用用再看了。。。

參考資料

現(xiàn)在的Windows程序大多都是用什么語(yǔ)言開發(fā)的? - 知乎

騰訊基于Electron技術(shù)的Windows版QQ內(nèi)測(cè)版本預(yù)計(jì)2023 年推出,該版本有哪些新功能? - 知乎

騰訊QQ為什要自研UI框架,而不用QT/MFC? - 知乎

大公司該不該用Electron?

騰訊開發(fā)者談基于 Electron 技術(shù)的 Windows 版 QQ,將帶來(lái)哪些新變化? - IT之家

跨越平臺(tái)桌面應(yīng)用開發(fā)框架electron使用的心路歷程_小飛貓_的博客-CSDN博客_electron

關(guān)鍵詞: 操作系統(tǒng) 可能不知道 春節(jié)之后

相關(guān)閱讀:
熱點(diǎn)
圖片 圖片