功能切換完美適用於新功能 - 在大多數情況下,功能應該簡單地包圍在一些基於功能配置可見或不可見的UI容器中。但是如果新功能需要對現有代碼庫進行大規模更改,那麼如何使用功能切換?我不能使用'複製&更改',因爲顯然它比特性分支差得多 - 我不會遇到任何合併衝突。那麼這些要求的最佳實踐是什麼?當新功能需要對代碼庫進行大規模更改時,如何處理功能切換?
4
A
回答
1
您可以將功能切換與IoC容器組合,以加載組件的不同實現。例如,切換「A」加載實現「X」,而切換「B」加載實現「Y」。這種方法將允許您維護並行實現,並基於單個切換開啓舊功能和新功能。
+0
這種方法有兩個問題。第一個是在舊代碼中修復的錯誤可能無法在新代碼中修復(雖然單元測試可以幫助這裏)。但是第二個也是一個主要問題是,在創建新的實現之前,舊的應該被重寫(甚至不是重構)。 – Sane 2012-03-26 13:41:00
相關問題
- 1. 需要繞過jQuery的切換功能
- 2. 大規模ORM和功能
- 3. 如何更改數據庫模式以引入新功能或更改當前功能
- 4. 當使用Python按鍵時在功能之間切換功能
- 5. 切換功能
- 6. 切換功能
- 7. 管理功能和功能體更新
- 8. 如何在需要休眠功能時重構JavaScript代碼?
- 9. 當對代碼進行更改時,Selenium Java代碼需要從頭開始
- 10. Proguard:如何處理大功能
- 11. 在使用多個功能分支時處理模式更改
- 12. 需要對addObjectsFromArray功能
- 13. 需要對Enumerable.Aggregate功能
- 14. XSLT:XML:更換功能/功能
- 15. 如何改變從GCM功能的Java代碼FCM功能
- 16. 功能切換與功能分支
- 17. 刀片模板 - 實時切換自動換碼功能?
- 18. 使用切換運行JS功能,需要從GET調用JSON
- 19. JavaScript - 切換功能
- 20. 切換功能jquery
- 21. 切換功能Javascript
- 22. 如何更改此功能中變量的值而無需製作新功能
- 23. 切割功能:在R中進行不規則切割
- 24. iOS庫:如何使用代理功能
- 25. WPF功能區,當選擇功能區選項卡時更改主要內容
- 26. jquery更改功能代碼爲插件
- 27. 軟件需求規格 - 功能要求
- 28. 修復/改進自動換行功能
- 29. 轉換代碼的功能
- 30. 當進入其他web服務時切換JavaScript功能URL
你可以隱藏所有與你想切換的'舊'特徵相關的控件嗎?或者將它們移動到新的UI容器中。例如,在WinAPI中,這只是創建控件列表並執行SetParent SetWindowPos。 – exebook 2013-02-11 05:06:37