<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 176, comments - 240, trackbacks - 0, articles - 7

    [導入]關于對象的兩個注解

    Posted on 2006-03-25 11:36 canonical 閱讀(956) 評論(0)  編輯  收藏 所屬分類: 設計理論

    1. 對象的一個特性是局域化。每一個對象函數(非靜態函數)都是在對象的上下文中調用的,因而隱含假設了一定的環境信息,這些信息以封裝的形式被使用。
    ?? 一個具體的體現是函數的命名,如果沒有對象,我們必須給函數進行全局命名,例如 find_friends, find_users, find_departments, 而在對象的環境下,我們可以抽象出一個采用局域化命名的接口 IQueriable.find(),實現系統的深度分解。
    ?? 在對象成員函數的內部,我們通過統一預定的名字(this指針)來訪問對象環境中的變量。而在 jsplet web框架中的action和前臺jsp中,我們通過thisObj變量來訪問后臺邏輯對象的上下文,而不需要知道對象的具體名稱 (objectName)。

    2. 對象的另一個特性是靜態化。我們從面向過程走向面向對象時,我們思維中的圖像出現了一個重大的變化:在面向過程的程序中,我們想象中存在的是一個個動態的處理過程,它們在時間軸上按照一定的順序依次執行。而在面向對象的圖景中,我們考慮的主要是一個靜態化的世界,系統分解為對象,而對象是同時存在于我們的思維中的。這里一個重要的技術手段就是成員函數。例如我們編寫一個成員函數getChildren(), 這個函數的語義是返回一個數據變量,概念上它是靜態的,但其內部實現其實可能是很復雜的,非常的動態化:可能需要查詢數據庫,可能需要校驗權限等等。
    理想的情況下,我們可以利用成員函數封裝可以實現對象圖的遍歷。例如? x.getParent().getChilldren(), 在微軟的COM模型或者Sun的JavaBean標準下,我們可以寫成
    x.parent.children。
    特別注意這里的屬性語法原則上是與時間無關的,即在同一個時刻我們認為這些屬性同時存在著,是一個靜態的關系。而以下的調用出現了明確的步驟,因而明確引入了時間因素
    ITree parent = node.getParent();
    if(parent == null)
    ?? return null;
    List children = node.getChildren();
    return children;

    在witrix平臺的tpl模板引擎中使用的EL(Expressin Language)表達式語法會自動處理函數返回值為null的情況,因而維護了對象圖的語義,不需要中斷調用過程來進行異常處理,是簡化界面編程的一個重要方面。

    這里順便提一句:人的思維是傾向于靜態化的,但現實世界卻是在不斷的變動中的。正所謂不變的只有變化。Von Neumann體系結構強迫我們在最細節處引入變化過程,很多時候是過分的負擔。我們需要的是識別出各種可以靜態描述的部分,集中精力于那些真正需要隨需應變的應用。

    主站蜘蛛池模板: 国产免费看JIZZ视频| 四虎影视久久久免费观看| 四虎成人精品永久免费AV| 亚洲热线99精品视频| a级毛片免费全部播放无码| 亚洲日韩国产精品第一页一区| 免费看又黄又爽又猛的视频软件| 亚洲国产精品狼友中文久久久| 搜日本一区二区三区免费高清视频| 亚洲精品一级无码鲁丝片| 中国一级特黄高清免费的大片中国一级黄色片 | 国产一区二区三区免费在线观看| 国产成人亚洲精品播放器下载| 亚洲欧洲精品成人久久曰影片| 最近的2019免费中文字幕| 久久亚洲精品成人综合| 成年黄网站色大免费全看| 亚洲αⅴ无码乱码在线观看性色| 免费在线视频一区| 丝瓜app免费下载网址进入ios| 亚洲综合婷婷久久| 免费毛片在线播放| 久久精品免费大片国产大片| 蜜芽亚洲av无码精品色午夜| 曰批全过程免费视频在线观看 | jzzjzz免费观看大片免费| 久久亚洲精品AB无码播放| 四虎在线视频免费观看视频| 国产精品亚洲一区二区无码 | 亚洲国产精品免费在线观看| 四虎必出精品亚洲高清| 亚洲精品无码永久在线观看| 2015日韩永久免费视频播放| 亚洲av无码成人影院一区| 亚洲精品高清国产一线久久| 成人毛片18女人毛片免费| 久久久久免费视频| 亚洲AV日韩综合一区尤物| 国产成人综合亚洲AV第一页 | 老汉色老汉首页a亚洲| 国产成人免费片在线观看|