四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

為什么OO方法是有本質(zhì)缺陷的?

  今天我在這里說(shuō)OO表達(dá)能力不足, 估計(jì)沒(méi)人會(huì)信, 但是這真有可能是問(wèn)題的核心所在, 如果是這樣, 那么用歪了也罷學(xué)習(xí)困難也罷, 錯(cuò)不在使用者和學(xué)習(xí)者, 而在于OO自身(這種質(zhì)疑也不是一天兩天了,不過(guò)大多數(shù)言論都是外延法,強(qiáng)調(diào)主觀因素, 所以不具說(shuō)服力)。

  這篇文章中的思路首先要?dú)w功于songcan兄弟刨根問(wèn)底的精神和腦袋兄與我的討論和對(duì)我的幫助。

  廢話少說(shuō), 說(shuō)個(gè)關(guān)鍵問(wèn)題吧。 OO最常見(jiàn)的就是 Teacher.Students, Teacher.Speak(), 也就是說(shuō)Students和動(dòng)作Speak作為T(mén)eacher的組成部分, 是我們關(guān)注的切實(shí)存在的概念, 但傳統(tǒng)的OO居然沒(méi)有給出向*系統(tǒng)*描述這個(gè)概念的表達(dá)方式。 是的, 你我都理解字面意思Speak, 可問(wèn)題是這個(gè)概念在系統(tǒng)內(nèi)不能表達(dá), 我們就無(wú)法用其它機(jī)構(gòu)來(lái)處理這些概念。

  為什么C#加入delegate以后, 方便了許多? 因?yàn)镾peak從某種意義上, 可以單獨(dú)提出來(lái), 作為一個(gè)在系統(tǒng)中的實(shí)際存在, 并且開(kāi)始可以對(duì)它進(jìn)行有限的操作了。但這還遠(yuǎn)遠(yuǎn)不夠, 因?yàn)镾peak是作為Action()存在, 它自身在業(yè)務(wù)中的獨(dú)特性沒(méi)有特別好的方式去表達(dá)。

  另外一點(diǎn)就是動(dòng)靜間的鴻溝。 C#在Strustroup這些人的看法里, 并不屬于真正的靜態(tài)語(yǔ)言, 但是它給出了一個(gè)靜態(tài)的外表。當(dāng)我們進(jìn)行描述時(shí)使用的是靜態(tài)的方式, 我們就必須有靜態(tài)的方式處理它們, 否則這里面就存在裂縫。 如果大量的反射, 那么我們何必不直接使用動(dòng)態(tài)語(yǔ)言呢?

  JS大家都接觸過(guò), 比如

  obj["someAction"] = function() {}
  obj.someAction()

  那么C#拿著反射出來(lái)的MethodInfo搞來(lái)稿去,和JS的方式比丑陋的多, 這樣的方式有必要去學(xué)嗎? 如果一門(mén)靜態(tài)語(yǔ)言, 大家越來(lái)越多的是在使用這些, 或者通過(guò)那些框架、工具間接的使用這些, 這難道說(shuō)明這門(mén)靜態(tài)語(yǔ)言, 或者基于這門(mén)語(yǔ)言的OO方法, 越來(lái)越強(qiáng)大不成? 只能說(shuō)這種方法因?yàn)樽陨淼膯?wèn)題, 無(wú)法繼續(xù)提供足夠的支撐了, 不得不求助于外部設(shè)施。

  說(shuō)實(shí)話, 如果一個(gè)語(yǔ)言, 表達(dá)重要的概念用到的那種表達(dá)方式, 比如類(lèi)型, 它本身不能被操作的話, 那么它存在問(wèn)題是必然的。 C#可以操作, 但提供的主要操作方式, 都在運(yùn)行時(shí), 通過(guò)反射。 可我們表達(dá)概念時(shí), 卻在編譯前, 也就是說(shuō)我們的表達(dá)注定是不完整的(或不直接的)。 反觀動(dòng)態(tài)語(yǔ)言, 為什么越搞越火, 還不是因?yàn)槿思腋纱喽挤旁谶\(yùn)行時(shí)了, 完整了; 而且在表達(dá)方式上優(yōu)化過(guò), 直接在語(yǔ)言層面支持, 這不是反射所能比的。

  如果我每句話缺幾個(gè)字, 大家感覺(jué)如何? 一個(gè)不完整的表達(dá), 你覺(jué)得什么樣的工具或者方法論, 讓你能夠毫無(wú)障礙的完成模型的建立呢?

  P.S. 再次感謝以上二位和與我討論過(guò)的各位。

  另外, F#我也試過(guò)了, 這些問(wèn)題全部存在(媽的,終于理解SICP某一頁(yè)的小注釋中質(zhì)疑流行語(yǔ)言的類(lèi)型系統(tǒng)的原因了), 根本是白搭: 實(shí)際上這本來(lái)與是否FP也沒(méi)啥聯(lián)系, 只是我希望作者按照腦袋兄跟我提出的那種意圖和方式, 在編譯器的層面做了一些改良。我的最后一線希望成了夢(mèng)幻泡影。

  我現(xiàn)在的建議是,要么選擇一門(mén)動(dòng)態(tài)語(yǔ)言, 要么選擇C++和D(其實(shí)C++是個(gè)很差的選擇); 如果暫時(shí)不能更換, 那就不要考慮太多了, 承認(rèn)問(wèn)題的存在, 并且盡量彌補(bǔ)就是(似乎.NET平臺(tái)上的語(yǔ)言目前就是這種狀況, 我自己也是在鑒于現(xiàn)實(shí)原因沒(méi)法換的境地)。

  Update:在這篇文章里似乎只針對(duì)了靜態(tài)OO不結(jié)合其它范式的情況下類(lèi)型系統(tǒng)造成的麻煩,看起來(lái)統(tǒng)稱(chēng)為OO的本質(zhì)缺陷似乎不妥。但實(shí)際上,避免了類(lèi)型一棍子打死式的約束的、可以修改對(duì)象的語(yǔ)言只是把問(wèn)題換了一個(gè)地方。它們的麻煩不同,但我初步認(rèn)為,在那個(gè)模模糊糊的深層次上,根源是相同的。

  我在上面推薦動(dòng)態(tài)語(yǔ)言,只是在針對(duì)目標(biāo),問(wèn)題僅僅存在在表達(dá)能力不足時(shí)的一個(gè)選擇。而且是不是動(dòng)態(tài)了或者其它XX了,表達(dá)能力就完善無(wú)缺了,這也有待考證。這個(gè)問(wèn)題容我思考一陣子再來(lái)掰吃。

  另外,不要把結(jié)合了其它范式的OO混到這個(gè)問(wèn)題里來(lái)看,能力來(lái)自于哪里,如何得到的,這是一個(gè)需要分辨的事情。更加多余的我想說(shuō)的就是,是否存在概念或任何其它東西聚合的實(shí)例,這樣的東西就可以叫做OO了?那確實(shí),如果把什么東西都當(dāng)成OO,OO這個(gè)詞也就利于不敗了。一個(gè)簡(jiǎn)單的C Struct,你可以把它叫做對(duì)象嗎?如果可以,這就是OO了嗎?

  所以我想,什么是OO,至少什么是OO的當(dāng)前環(huán)境下的解釋?zhuān)€是要弄清楚的。之所以更新這段話,是因?yàn)閰⒖戳艘恍┕爬系臓?zhēng)論和某些高人高論的反復(fù);覺(jué)得很多事情是在SB的基礎(chǔ)上,進(jìn)行各種NB的推論。這樣確實(shí),周游世界的結(jié)果最終就是回歸原點(diǎn),“返璞歸真”。也許我們覺(jué)得自己的思想境界提高了,但其實(shí)仍舊是一種屁話。

  這樣的研討,除了應(yīng)該得到的,比如了解過(guò)的各種東西使用的更加流暢,就再無(wú)其它建樹(shù)了。因?yàn)樵撘∧愕牡胤饺耘f在那里,僅僅是我們覺(jué)得“自然”了或者認(rèn)為這是“問(wèn)題本質(zhì)帶來(lái)的復(fù)雜”罷了。而多少“自然”的東西最終不自然了呢?


  最后重申一遍: 不要因?yàn)镺O存在這樣那樣的問(wèn)題, 就放棄OO的嘗試。 我的想法是, 作為一種當(dāng)代最流行的方法, 沒(méi)有一定程度的了解是不行的, 就像牛頓定律一樣。 所以我倒是認(rèn)為, 對(duì)OO的深入思考和練習(xí), 雖然一時(shí)疑惑, 也絕非沒(méi)有好處的; 尤其是當(dāng)我們知道它可能存在問(wèn)題這一點(diǎn), 就更可以放開(kāi)心態(tài)了。

  過(guò)去一個(gè)高人對(duì)我說(shuō), 想學(xué)好數(shù)學(xué)先學(xué)好數(shù)學(xué)史; 我數(shù)學(xué)史不咋地。 今天我要說(shuō)我們有一個(gè)大好機(jī)會(huì), 因?yàn)槲覀兙驮跉v史里(這個(gè)歷史看來(lái)還要持續(xù)幾年); 如果我們認(rèn)為OO不過(guò)是個(gè)大忽悠,不屑于學(xué)習(xí)OO體現(xiàn)了自我相對(duì)于云云大眾的明智, 那么明天會(huì)如何, 就不好說(shuō)了。

  剩下的, 就是等腦袋兄的編譯器小改款出爐了, 大家一起拿鞭子抽他干活...

it知識(shí)庫(kù)為什么OO方法是有本質(zhì)缺陷的?,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 林佑星| 叶玲| 曲丹个人资料简介| 大尺度床戏韩国| 电影同船爱歌| 山楂树之恋电影剧情简介| 一个月经代表七个版本| 天与地越南版| 卡通动漫图片| 阴阳先生之阴阳中间站 2016 彭禺厶| 同志激情电影| 5年级英语上册单词| 电影《追求》| 免费播放电影大全免费观看| 陆夏| 王牌空战| 无声真相电影免费播放| 爱播| 121团炮台镇天气预报| 电影《kiskisan》在线观看| 大珍珠演员表介绍| 辕门外三声炮歌词| 德国老太性视频播放| 什么虫子咬了又红又肿又痒硬包| 秀人网周妍希| 好妻子剧情简介| 吴薇| 欢乐钓鱼大师兑换码| 张静初的三级未删减版| 美女舌吻| 黄网站在线观看视频| 画江湖之不良人第一季动漫免费观看| 肢体的诱惑| 2024生物中考真题试卷| 周琳皓| 女明星曝光| 02j331| 养小动物的作文| 永远的经典影片永远的| 河中石兽是几年级的课文| 七度空间卫生巾图片|