關註點分離
出自 MBA智库百科(https://wiki.mbalib.com/)
關註點分離(Separation of Concerns,SoF)
關註點分離是日常生活和生產中廣泛使用的解決複雜問題的一種系統思維方法。大體思路是,先將複雜問題做合理的分解,再分別仔細研究問題的不同側面(關註點),最後綜合各方面的結果,合成整體的解決方案。
在概念上分割整體以使實體個體化的觀點可以追溯到柏拉圖。柏拉圖把探究自然比作在關節處切割自然,竅門在於要找到關節,不要像生疏的屠夫那樣把關節切得粉碎。莊子在《庖丁解牛》寓言中也闡釋了類似的真知灼見。
作為最重要的計算思維原則之一,關註點分離是計算科學和軟體工程在長期實踐中確立的一項方法論原則。此原則在業界更多的時候以“分而治之”(Divide-and-Conquer)的面目出現,即將整體看成為部分的組合體並對各部分分別加以處理[。模塊化(Modularity)是其中最有代表性的具體設計原則之一。
關註點分離原則不僅體現在問題求解、演算法設計、軟體設計等設計方法中,同時也體現在軟體開發過程、軟體項目管理以及軟體開發方法學等諸多方。在某種意義上,正是對軟體開發不同關註點的分離視角和關註重點的差別,導致了軟體開發技術和開發方法的演變和發展。