在瞬息萬變的互聯網行業中,年過二十四的 QQ 堪稱超長壽的產品,見證了中國互聯網崛起的完整歷程。然而,如今這個元老級產品經歷了一次從內到外徹底的重構。
在這次重構中,QQ 選擇了 Electron 作為 UI 跨平臺開發框架。盡管 Electron 被 Slack、Visual Studio Code 和 Discord 等大型產品廣泛使用,但也引發了一些網友的擔憂,例如內存占用、安裝包體積和啟動速度等方面的問題。
好奇于 QQ 的決策,于是我們采訪了 QQ 技術團隊,窺探這次變革的脈絡,揭示出那些潛藏在背后的思考。
一、QQ 重構背后的思考:24 歲的 QQ 有什么樣的技術債
QQ 的第一個版本發布于 1998 年,在 Windows 技術棧的基礎上用純原生的方式開發,在當時互聯網帶寬非常小的情況下,QQ 將安裝包控制在了只有 200K 左右。2007 年后智能手機開始露出苗頭,騰訊行動得比較早,部分前端技術開發開始轉型到了移動端,在桌面端, QQ 隨著業務和組織的發展,針對三大操作系統陸續組建了三支不同的研發團隊,各自負責自己的一套代碼。
三端不同代碼,老產品歷史包袱,加上移動時代研發人員的轉型,導致桌面 QQ 維護成本很高。QQ 技術團隊介紹,拿之前的桌面 QQ 為例,WindowsQQ 以前的 UI 框架用的是騰訊自研的 GF 框架,10 多年了,GF 這個框架文檔還不全,新加入這個項目的團隊人員,要基于這個基礎框架去做一些事情,是效率很低的一件事情,慢慢的就沒有人愿意去用這個框架了。簡而言之,就是技術債。
舊版的桌面端 QQ,Windows 的功能最豐富?