jollen.org

Jollen 的 Blog
Jollen's email: jollen # jollen.org
more:  Jollen's Training

[Jollen's AFC] 1.1 切割 View & Control

.作者:jollen/
.日期:April 3, 2012 1:23 PM


將View與Control切割是軟體設計的根本。這個觀念非常的好懂,也是學習軟體設計的基本功。View被解釋成UI等可見物,Control則是控制功能,例如:關機。一般來說,控制功能由控制者提供,所以經常被稱為View/Controller模式。

這個觀念真的簡單不過,把畫面與控制功能分開。這個觀念的發展始於 1980 年代,當時為了開發圖形介面的電腦,電腦科學家於是想到「 Separated Presentation」,也就是從事視覺(Presenetation)的程式碼就只做視覺(例如:Drawing),把其餘的切割(separated)出來。後來形成今天家喻戶曉的軟體設計模式 - MVC(Model-View-Controller)。

把View與Controller切割的觀念被一直沿用到今天,所以先想清楚View/Controller為什麼切割,原因何在?才是重點。「Model」是擴充出來的觀念(Concept extending),所以,可以先將「Model」是什麼放著不談。

將View與Controller切割是為了不讓控制的動作影嚮到畫面(View),根本原因是希望有更好的使用者體驗。做法很簡單,從現今的分時多工作業系統(Time-sharing & multi-task operating system)角度來看,只要切割成獨立的process即可。如圖1.1。


view-controller.png

二個process就使用訊息(message)傳遞的方式溝通,也就是我們所熟悉的IPC(Inter-process communication)。

切割 View & Control

Android 系統將 View & Control 切割,因為這樣可以設計出 UI 使用性更好的軟體。同時還有二個好處。第一、讓程式碼更容易維護,第二、軟體架構更清楚。為什麼將 View 與 Control 切割成獨立的 process,可以讓 Android 系統有更好的 UI 使用性呢?

Tags:

純手工打造說明:技術專欄文章為 Jollen 原創,內容皆為人工撰寫,無 AI 生成。轉載請註明出處與作者,並全文引用。轉載時請在文章開頭或結尾明顯處註明「本文出處:https://www.jollen.org,已取得原作者同意並授權使用。」
訂閱電子報:不定期 Jollen's Blog 精選文章隨 Moko365 電子報寄送;請透過 Moko365 電子報訂閱(可隨時取消)。

Copyright(c) 2001–2012 www.jollen.org. All rights reserved.
Last update: 2026-07-22