特性切換
維基百科,自由的 encyclopedia
特性切換或稱功能切換,英語:feature toggle[1]、feature switch、feature flag、feature flipper或conditional feature等。它是軟體開發中的一種技術,是替代維護多個原始碼分支(也稱特性分支)的一種方案,這使特性在完成並正式發布前也可以得到測試。特性切換是在執行期間隱藏、啟用或禁用特定功能。例如在開發過程中,開發人員可以啟用功能以進行測試,而其他使用者不會被啟用該功能和受到它的影響。[2]
![]() |
持續發布和持續交付為開發人員提供了有關其代碼的快速回饋,而這要求儘早地整合其代碼更改。特性分支為此過程引入了一個旁路。[3]特性切換是實現持續交付的一項重要技術。
這種技術使開發人員得以發布包含未完成功能的產品版本。這些未完成的功能被隱藏或被禁用,因此不會出現在使用者介面中。這使軟體可以發布很多次小的增量版本,而無需承擔不斷分支與合併的成本。特性切換使軟體整合的周期得以更短。[4]專案團隊可以使用特性切換來加速開發過程,因為產品中可以包含預設不啟用的未完成代碼。