為何選擇 Electron Forge
Forge 的概觀及其在發佈 Electron 應用程式中的作用。
動機
應用程式封裝和發佈一直以來都是在核心 Electron 框架之外處理的。在 Electron 作為 Atom 編輯器 的一部分的早期階段,應用程式開發人員通常會透過手動編輯 Electron 二進位檔案來準備發佈其應用程式。
從那時起,Electron 社群開發了一個豐富的工具生態系統來處理 Electron 應用程式發佈的每一項任務,包括
應用程式封裝 (
electron-packager
)程式碼簽署 (例如
@electron/osx-sign
)建立平台特定的安裝程式 (例如
electron-winstaller
或electron-installer-dmg
)。原生 Node.js 模組重建 (
electron-rebuild
)通用 macOS 建置 (
@electron/universal
)
儘管這些單一用途的套件已經成熟且可以投入生產,應用程式開發人員仍需要了解每個套件的功能,並撰寫自己的腳本將這些套件整合到建置管道中。這個過程需要研究和迭代,對於剛接觸 Electron 的人來說可能會感到困惑。
價值主張
Electron Forge 是一個將這個分散的生態系統統一的全方位解決方案。使用 Forge,您可以建立一個建置管道,讓您的應用程式從開發到發佈,只需最少的設定。
Forge 的設計也考慮到進階使用案例,您可以透過自訂外掛程式、產生器或發佈者來新增任何您需要的建置邏輯。如需更多詳細資訊,請參閱文件中的擴充 Electron Forge 章節。
Forge 與 Builder
Electron Forge 可以被視為 Electron Builder 的替代方案,後者在應用程式建置和發佈方面也滿足相同的使用案例。
這兩個專案在理念上的主要區別在於,Electron Forge 專注於將現有的第一方工具組合到單一建置管道中,而 Builder 則為大多數建置任務重寫自己的內部邏輯。
我們認為使用 Forge 有兩個主要優勢
Forge 在 Electron 中支援應用程式建置的新功能後,會立即收到這些新功能 (例如 ASAR 完整性 或 通用 macOS 建置)。這些功能是以第一方 Electron 工具為基礎建構的,因此 Forge 會在它們發佈後立即收到這些功能。
Forge 的多套件架構使其更容易理解和擴充。由於 Forge 由許多責任明確的小套件組成,因此更容易追蹤程式碼的流程。此外,其可擴充的 API 設計意味著您可以將自己的建置邏輯與進階使用案例的提供的設定選項分開撰寫。
上次更新時間