Posted on 2005-11-15 12:34
canonical 閱讀(240)
評論(0) 編輯 收藏 所屬分類:
Witrix開發平臺
關于jsplet中的object生命周期的管理以及使用拉模式,如果套用現在流行的設計術語,那就是涉及到所謂的IoC設計(控制反轉)
IoC
的Container現在很受追捧,
但真正的IoC設計思想并沒有引起大家的重視。也許大多數人使用的都是成品吧,以至于把成品的功能等價于其所依賴的設計原理。Spring等所建立的
IoC更準確的說法是Dependency
Injection,只是IoC的一種體現。其基本思想是一個對象并不控制所有與它相關的部分,而是把控制權交給使用對象的人。這里重要的就是控制流(信
息流)的反轉。
對象生命周期的管理也是這樣,并不是由一個Manager猜測用戶是否使用該對象,而是由用戶直接標明他的態度,直接發出指令。
參
考一下桌面應用中的資源控制手段,我們打開一個窗口,與系統進行交互,此時占用資源,關閉窗口,則該窗口以及其子窗口所占用的資源都釋放。在jsplet
中對象控制策略類似。當用戶從某個功能區退出的時候,即當用戶訪問其它scope中對象而放棄當前objectScope的時候,開始做資源清理工作。即
用戶的行為和意向直接驅動著系統的對象管理層。當然,如果用戶一直不發出調用,那么系統只能猜測用戶的行為,用戶是否已斷線或者正在思考?在這種情況下,
如果控制資源,則需要通過AOP給thisObj 加上類似EJB的功能。