《Disney +》 迪士尼、Marvel、彼思、星球大戰…  利用電競創造身障者也能活躍的工作環境!專為身障者打造無障礙電競環境的「ePARA」!   多多自走棋S12賽季即將開啟   龍族拼圖Puzzle & Dragons和日本動漫咒術迴戰合作活動!   包含電競直播主 Cosplayer事務所PP Enterprise新人發掘計劃!   「APEX 英雄」將推出Nintendo Switch版!同樣採取免費商城制!   2021年總結!年末舉辦的「RTA in Japan Winter 2021」採用作品發表!   《Destruction AllStars》發售日遊戲提示:掌握七個訣竅,保證輕鬆獲勝   《艾爾登法環》為魂系攻略帶來重大改變 

Facebook 重構 iOS Messenger 程式碼少100多萬行

商業

程式通常會隨著時間越來越肥、越來越慢、越來越難維護,造成維護成本提高,臉書(Facebook) 的 Messenger 看來也是如此,但是 Facebook 花了不少時間來整個重構、翻寫整套程式架構,讓程式碼減少84%,執行檔只有原先 1/4 大小,速度比舊版快2倍。

Facebook 重構 iOS Messenger 程式碼少100多萬行

Facebook 公開說明 iOS Messenger 如何更快、更小、更簡化,官方文章懶得看內容的,看圖就可以了解大概做了哪些事情。

原文:Project LightSpeed: Rewriting Messenger to be faster, smaller, and simpler

講簡單點就是把共用的抽出來,然後能用系統原生功能的,就不要自己寫。

通訊軟體的容量大小比較(2020/3)

  • FB Messenger 142.6M
  • LINE 254.6M
  • Hangout 102.4M
  • WeChat 266.1M
  • Feebee 40.9M
  • Google Home 261.6M
  • Facebook 226.3M

下述摘錄自此篇:臉書重建iOS版Messenger,程式碼從170萬行縮減到36萬行

  • iOS Messenger 的程式庫改造原則包括,盡量利用原生作業系統的功能,藉由 SQLite 的動態範本重覆使用 UI,以 SQLite 作為通用系統,以及建置一個能夠介接程式與伺服器功能的伺服器代理人
  • 新版 iOS Messenger 的程式碼數量,從170萬行減少到36萬行,整整少了84%,而它的執行檔大小則只有原先的1/4,在Messenger功能未縮水的狀態下,光速專案還 Messenger的啟用速度,達到舊版的兩倍快。
  • 總之,只要作業系統能做的,臉書就把它們交給作業系統,只有在iOS無法滿足需求時,才會撰寫小程式來彌補。
Tsung

隨機商業新聞

Disney+