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

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

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

    心內(nèi)求法

    制心一境,住心觀性,澄心外照,攝心內(nèi)證

      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      37 隨筆 :: 0 文章 :: 120 評(píng)論 :: 0 Trackbacks

    《面向?qū)ο笫鞘裁础?/a>中,說(shuō)得過(guò)于抽象。看來(lái)要把問(wèn)題說(shuō)清楚,還得畫(huà)圖才行。

    前面說(shuō)過(guò),由于計(jì)算機(jī)體系結(jié)構(gòu)的原因,所有的編程最終都會(huì)歸結(jié)為數(shù)據(jù)結(jié)構(gòu)和算法,二者一陰一陽(yáng),一靜一動(dòng),陰中有陽(yáng),陽(yáng)中有陰,恰如太極圖,映射了現(xiàn)實(shí)世界。

    如果用形式化的方式來(lái)表示,用圓圈表示數(shù)據(jù),用方框表示過(guò)程,則計(jì)算的過(guò)程可以如下表示:

    對(duì)于過(guò)程,輸入數(shù)據(jù),處理后輸出數(shù)據(jù);

    對(duì)于數(shù)據(jù),由過(guò)程產(chǎn)生,又輸入新的過(guò)程。

    歷史上曾經(jīng)有過(guò)數(shù)據(jù)為主還是過(guò)程為主之爭(zhēng),似乎到現(xiàn)在也沒(méi)有定論。在我看來(lái),二者地位相等,不能厚此薄彼。

    隨著問(wèn)題的復(fù)雜化,上述的計(jì)算過(guò)程會(huì)變得相當(dāng)復(fù)雜。于是人們研究出了“結(jié)構(gòu)化方法”。“結(jié)構(gòu)化方法”來(lái)自屢試不爽的“模塊思想”:對(duì)于復(fù)雜問(wèn)題,先劃分成一個(gè)個(gè)模塊,再逐步細(xì)化各個(gè)模塊,直到問(wèn)題能夠解決。結(jié)構(gòu)化的思想直接產(chǎn)生了面向過(guò)程的編程思想。如下圖:

    其中,屬于整個(gè)程序的數(shù)據(jù)稱為“全局變量”,可以被任何函數(shù)/過(guò)程使用;

    屬于函數(shù)/過(guò)程內(nèi)部的數(shù)據(jù)稱為“局部變量”,只能在函數(shù)內(nèi)使用。

    面向過(guò)程的思想在最初的混亂情形下增加了一層結(jié)構(gòu),使得全局變量極大地減少;似乎這種結(jié)構(gòu)根據(jù)需要迭代下去,可以解決任何問(wèn)題了;而且面向過(guò)程的研究還有一項(xiàng)重要的成果,就是把過(guò)程抽象為順序、循環(huán)和分支三種結(jié)構(gòu)的有限次組合。

    如果人的欲望是有止境的,世界將是多么美好啊!可惜不是!隨著問(wèn)題的進(jìn)一步復(fù)雜化,面向過(guò)程的方式又不能解決問(wèn)題了。這是面向?qū)ο蟮姆椒ǔ霈F(xiàn)了。面向?qū)ο蟮囊粋€(gè)關(guān)鍵的概念是類。所有面向?qū)ο蟮姆椒ǘ际窃陬惿献鑫恼隆D敲搭惖降资鞘裁茨兀科鋵?shí)從上圖的結(jié)構(gòu)中可以看出,如果進(jìn)一步把一些數(shù)據(jù)結(jié)構(gòu)(不是數(shù)據(jù))和一些函數(shù)組合起來(lái),賦予其明確的意義,就構(gòu)成了類。類體現(xiàn)了一種抽象,這種抽象有助于人思考問(wèn)題,但是并不會(huì)有助于計(jì)算機(jī)思考問(wèn)題,在計(jì)算機(jī)看來(lái),程序還是由數(shù)據(jù)和過(guò)程組成的。所以,雖然我們按照類來(lái)思考,卻要按照對(duì)象來(lái)運(yùn)行程序。對(duì)象是類的實(shí)例,是實(shí)際程序中數(shù)據(jù)和函數(shù)的組合。我想這也是稱之為“面向?qū)ο蟆倍皇恰懊嫦蜻^(guò)程”的原因吧。

    面向?qū)ο蟮姆椒ㄊ前讶说某橄笏季S中的類映射到計(jì)算機(jī)思維中的對(duì)象的一種編程方法。這種方法是向計(jì)算機(jī)解釋現(xiàn)實(shí)世界的諸多方式中的一種。其進(jìn)步意義在于:人們可以按照自己的方式來(lái)思考問(wèn)題,而不必按照計(jì)算機(jī)的方式進(jìn)行思考。

    既然是安裝人的思維方式來(lái)思考問(wèn)題,就可以搞很多名堂,比如繼承,組合,多態(tài),虛函數(shù)/接口等等。這都是人們?yōu)榱酥谔岣叱绦虻馁|(zhì)量,特別是提高“可復(fù)用性”與“可擴(kuò)充性”想出來(lái)的辦法。關(guān)于這些最基本的概念,且聽(tīng)下回分解。

    附1:如果參考 邏輯學(xué)中概念內(nèi)涵和外延的定義 ,類是概念,屬性和方法都是概念的內(nèi)涵;對(duì)象是概念的外延。

    附2:最近好像“Function Programming(函數(shù)編程)”被提得比較多,我認(rèn)為函數(shù)式編程是建立了這樣一種結(jié)構(gòu):

    HigherFunction可以把LowerFunction作為輸入和輸出(甚至可以把另一個(gè)HF作為輸入?)。

    這種方法對(duì)過(guò)程本身進(jìn)行了“運(yùn)算”,可以處理復(fù)雜的問(wèn)題。究竟這種方式適合處理哪些問(wèn)題,呵呵,我沒(méi)有研究過(guò)。



    本人的最新博客遷移到http://thinkinside.tk,使用GitHub Pages建立。
    我會(huì)陸續(xù)將所寫(xiě)的文章遷移過(guò)去,并進(jìn)行補(bǔ)充和修正,
    歡迎過(guò)來(lái)圍觀。
    posted on 2006-11-24 10:18 心內(nèi)求法 閱讀(2246) 評(píng)論(6)  編輯  收藏 所屬分類: 1.制心一境

    評(píng)論

    # re: 動(dòng)靜結(jié)合話編程 2006-11-24 10:37 BeanSoft[匿名]
    頂了! 大哥有做培訓(xùn)講師的天賦!  回復(fù)  更多評(píng)論
      

    # re: 動(dòng)靜結(jié)合話編程 2006-11-24 10:43 SeamanWang
    呵呵,沒(méi)有沒(méi)有,做了快7年才有這么點(diǎn)體會(huì)  回復(fù)  更多評(píng)論
      

    # re: 動(dòng)靜結(jié)合話編程 2006-11-24 13:22 黃金時(shí)代已過(guò)
    推薦:
    1.老莊的"敲響OO時(shí)代的喪鐘-面向?qū)ο笠阉?quot;系列
    http://zbw25.spaces.live.com/blog/cns!BD4EFBFAF436336C!220.entry?_c=BlogPart
    2."喪鐘為誰(shuí)而鳴"系列
    http://www.tkk7.com/raimundox/archive/2005/12/20/24851.html
    3.javaeye中的相關(guān)討論
      回復(fù)  更多評(píng)論
      

    # re: 動(dòng)靜結(jié)合話編程 2006-11-24 14:37 SeamanWang
    @黃金時(shí)代已過(guò)
    老莊的系列很長(zhǎng)啊,粗粗過(guò)了47篇文章(LiveSpace的導(dǎo)航真的很不爽),內(nèi)容太多,看來(lái)要慢慢研究了。

      回復(fù)  更多評(píng)論
      

    # re: 動(dòng)靜結(jié)合話編程 2006-11-24 15:03 兵臨城下
    JAVA也用了四五年了,可要被問(wèn)到何謂面向?qū)ο缶幊蹋摇!!!!?nbsp; 回復(fù)  更多評(píng)論
      

    # re: 動(dòng)靜結(jié)合話編程 2006-11-24 15:07 心內(nèi)求法
    @兵臨城下
    共同探討吧,這里只是拋磚引玉  回復(fù)  更多評(píng)論
      

    我常用的博客搜索
    主站蜘蛛池模板: 亚洲成a人片在线观看国产| 精品无码人妻一区二区免费蜜桃| 毛片免费视频观看| 亚洲成年人电影在线观看| 免费无码成人AV在线播放不卡| 亚洲va无码手机在线电影| 久久免费高清视频| 色婷婷六月亚洲婷婷丁香| 最近最新高清免费中文字幕 | 无码亚洲成a人在线观看| 国内一级一级毛片a免费| 18禁亚洲深夜福利人口| 又大又硬又爽免费视频| 天堂亚洲免费视频| 亚洲国产成人久久精品99| 国产伦精品一区二区免费| 亚洲AV午夜福利精品一区二区| 全免费a级毛片免费看| 亚洲最大在线观看| 18禁超污无遮挡无码免费网站国产| 中文文字幕文字幕亚洲色| 韩国免费三片在线视频| 国产VA免费精品高清在线| 亚洲人成网7777777国产| 亚洲免费观看视频| 亚洲国产成人精品无码区在线秒播 | 亚洲日韩中文字幕| 成年女人视频网站免费m| 国产亚洲成在线播放va| 亚洲毛片网址在线观看中文字幕| a级毛片毛片免费观看久潮| 亚洲视频国产精品| 日本免费人成视频播放| 久久免费视频一区| 亚洲欧洲日本国产| 日本一区免费电影| a级毛片免费观看视频| 亚洲资源最新版在线观看| 免费在线视频一区| 一区二区三区在线免费看| 亚洲国产成人久久一区二区三区 |