search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

GitHub使用Electron重寫桌面客戶端

作者 | Sergio De Simone 譯者 | 薛命燈

GitHub 客戶端應用開發總監 Phil Haack宣布,GitHub 使用 Electron 重寫了 macOS 和 Windows 的客戶端。GitHub 桌面客戶端 Beta 版本 還為最新 Beta 版本的 Atom 提供了新的 Git 和 GitHub 集成

負責重寫應用的團隊 解釋 說,重新構建 GitHub 桌面客戶端的主要原因是為了減少支持多平台開發所耗費的成本。實際上,分別為 Windows 和 macOS 開發原生應用要求使用兩種不同的技術棧,也就是說,每個功能特性都需要重複實現、調試和維護。如果需要支持第三個平台,如 Linux,那麼還需要投入額外的精力。

事實證明,為多個平台構建原生應用不具有伸縮性。

GitHub 團隊快速地轉向使用 Web 技術來開發他們的應用,比如 Electron 和 TypeScript。使用 Web 技術帶來了一些好處,代碼的構建運行時間從幾分鐘降到了幾秒鐘,代碼變更會適時地被重新載入,還有可能實現實時的設計調整。不過,使用 Web 技術開發桌面應用也存在一些局限。

Web 並非完美的平台,不過原生應用也不是。使用 Electron 重寫原生應用只不過是在不同的權衡點之間進行了交換。

開發人員解釋說,Electron 為他們提供了平台相關的 API,通過擴展這些 API,他們獲得了更多的靈活性,這也就是 Electron 給他們帶來的好處之一。

經過一年的開發,基於 Electron 的客戶端現在可以 使用,也可以從 GitHub 上 拉取分支

InfoQ 對 Phil Haack 進行了訪談,以便更多地了解他們在 Electron 上的進展。

Electron 在誕生之後就成為很多著名應用程序的開發平台。你是怎麼看待 Electron 在如今的跨平台應用開發解決方案中所扮演的角色?

Phil Haack: Electron 藉助 Web 這個成功的平台,與 Web 在相同的方向上行進,只是它是從相反的端點出發。事實上,用戶可以利用 Web 技術來開發桌面應用正是 Electron 的一個成功之處。

最近人們在 Reddit 上熱議 Electron 是「桌面版的 Flash」,這要歸因於它的內存使用和性能。Electron 的哪些關鍵因素會讓它成為重要的技術?

Haack: 剛才我已經說過,Electron 藉助了 Web 技術平台。來自行業巨頭,如 Google、Microsoft、Facebook、Slack、GitHub 等公司在 Chromium、Node、JavaScript、HTML、CSS 等技術上持續投入,這些技術也在持續改進,Electron 也因此從中獲利。這些工具提供了很強大的功能,它們的發展和進步就是 Electron 的關鍵所在。我們也有很多有關如何改進 Electron 的討論。

你是如何看待 Electron 在移動方面的可能性?你認為我們會發展到那一步嗎?

Haack: 社區有反饋說,他們希望能夠發展到這一步。不過目前有 90% 的代碼是基於 Chromium 的,我們與 Chromium 和 Node.js 綁在了一起,這就排除了 iOS,同時也讓與 Android 集成也變得很困難。不過,這也為實現一個具有兼容性的 API 提供了機會。

GitHub 同時為 Atom 1.18 Beta 發布了一個新的 Git 和 GitHub 集成方案,開發者可以在 Atom 里管理他們的 Git 工作流,不需要在命令行或其他工具之間進行切換。

英文原文

GitHub Rewrites its Desktop Client Using Electron

Vue 2017 現狀與展望 | 視頻 +PPT+ 速記快速回顧

視野拓展

InfoQ 主辦的移動和前端開發領域的精品大會【GMTC 2017】將於 6 月 9~10 日在北京舉行,作為首屆以「大前端」為主題的大會,GMTC 涉及移動、前端、跨平台、AI 應用等多個技術領域,幫助你方方面面提高技術水平。掃描下圖二維碼,前往官網了解詳細信息!

前端之巔

「前端之巔」是 InfoQ 旗下關注前端技術的垂直社群,加入前端之巔學習群請關注「前端之巔」公眾號后回復「加群」。推薦分享或投稿請發郵件到 [email protected],註明「前端之巔投稿」。



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦