Can you summarize the following document?
        
  物件導向設計,或程式語言提供的模組化提供開發人員選用的SOC機制。例如,C#,C++,Delphi和 Java等物件導向的程式語言可以將關注點分解為物件,像 MVC 或 MVP這樣的架構設計模式,將內容從呈現和資料處理(模型)與內容分開。服務導向的設計可將關注點分解為服務。諸如 C 和 Pascal 之類的程式式程式語言可將關注點分成程式或功能。面向方面的程式語言可以將關注點分解為方面和物件。  在許多其他領域,例如城市規劃、建築,分離關注點也是一個重要的設計原則。目標是更有效地理解,設計和管理許多功能相互依存的複雜系統,以便功能可以重用,獨立於其他功能進行優化,並且避免其他功能的潛在故障。常見的例子包括將一個空間分隔成多個房間,這樣一個房間的活動不會影響其他房間的人;或是配電將爐子保持在一個電路,而燈光則保持在另一個電路上,這樣爐子的超載就不會影響燈光。房間分隔的例子顯示了封裝,其中一個房間內的資訊(無論有多混亂)不會用於其他房間,除非通過介面(門是介面)。電路的例子表明,一個模組內部的活動是一個電力消費者附加的電路,不會影響不同模組中的活動,因此每個模組不會額外去關注另一個模組發生的情況。

  這個概念是Edsger_W._Dijkstra在1974年他的文章"On the role of scientific thought"中提出的。  15年之後,這個概念已經被人們所接受。1989, Chris Reade寫的"Elements of Functional Programming"是這樣描述的: Reade 接著說,  理想情況下,程式設計師應該關注3個問題中的第一個(所要解決的問題)而不去考慮另外兩個,因為這個問題是更應該被關注。很明顯,通過解決重要的問題,我們可以通過得到更可靠的結果。  分離關注還有其它的好處.比如,程式可以將記憶體管理和執行順序分離。然後我們只去一步步的解決問題,不管機器的物理架構.當我們用高速並行的機器或者分散式儲存的時候,只需要改動很小的一部分。  這就意味著程式語言的實現者必須在不同的機器和機制下,實現相關的功能。
關注點分離(Separation of concerns,SOC)是對只與「特定概念、目標」(關注點)相關聯的軟體組成部分進行「標識、封裝和操縱」的能力,即標識、封裝和操縱關注點的能力。是處理複雜性的一個原則。由於關注點混雜在一起會導致複雜性大大增加,所以能夠把不同的關注點分離開來,分別處理就是處理複雜性的一個原則,一種方法。