中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

基于自然語言的軟件工程和程序設(shè)計(下)

系列文章導航:

基于自然語言的軟件工程和程序設(shè)計(上)

基于自然語言的軟件工程和程序設(shè)計(中)

基于自然語言的軟件工程和程序設(shè)計(下)


  軟件發(fā)展至今,無論是編程語言,還是軟件工程,乃至是互聯(lián)網(wǎng)的趨勢發(fā)展,都是飛速發(fā)展。于是,我們便迷茫于這樣形形色色的語言和概念之間,無所適從。其實,我們不妨返璞歸真,回到最初,讓我們從語義出發(fā),來討論這形形色色的種種,你是否恍然大悟呢?

  10. 面向?qū)ο笈c語義分析

  我們都知道,面向?qū)ο笫亲皂斚蛳碌姆治鲞^程和自底向上的設(shè)計過程。在這里,首先,我們先不談分析過程,只談設(shè)計過程。

  系統(tǒng)有多少個類,不是一拍腦袋想出來的,不是經(jīng)驗累積而成的,而是根據(jù)需求分析中提煉出來的。

  類的產(chǎn)生是名詞提煉的過程,我們知道,每個對象都是對應著現(xiàn)實中的一個實體,而每個類都是對具有相同特征的對象的抽象。越是恰當?shù)某橄螅覀兙驮侥芴釤挸鼍_的類。

  這時,讓我們不得不感嘆古人詩詞的精妙:

  枯藤老樹昏鴉,小橋流水人家,古道西風瘦馬。夕陽西下,斷腸人在天涯。

  詩詞,是對文章高度的抽象過程;面向?qū)ο蟮脑O(shè)計過程,也是對現(xiàn)實世界的抽象過程;何時,我們能將需求分析文檔精確提煉成古詩詞,此時乃大悟面向?qū)ο笾酪病?/p>

  11. 設(shè)計是違反語義的過程

  與其說面向?qū)ο罂芍赜茫拙S護,不如說面向?qū)ο蟾N近我們的現(xiàn)實設(shè)計,讓我們的每一個類的產(chǎn)生都有章可循。此乃為面向?qū)ο笾钜病?/p>

  在之前的一部,我們將現(xiàn)實社會映射成了我們的程序中對應的類,可是這時肯定會有人跳出來說,這是面向?qū)ο竺??繼承,多態(tài),封裝,你這什么都沒有??!

  這就是我在本節(jié)中要提到的,在我看來:設(shè)計是一個違反語義的過程。

  例如:”老師講課,學生聽課。“這樣的語義環(huán)境,自然會產(chǎn)生老師和學生兩個類,可是大家這時都會想到,此時應該提取出來”人“作為老師和學生的基類(父類)??墒牵覀冎溃嗽诖苏Z義中是不存在的,他只是我們根據(jù)經(jīng)驗來假設(shè)出來的。我們在之前說過,類是對對象(現(xiàn)實事物)的抽象,而父類又是對類的再抽象過程。因此,我認為:繼承是對抽象的再抽象。

  提到設(shè)計,我們就要提到設(shè)計模式,我們來想想常見的設(shè)計模式,工廠,適配器,策略等等,這些在我們的語義中都是無法分析出來的,因此,在我看來,設(shè)計模式實際上是犧牲了語義的自然性,來換取軟件的可重用性和可維護性。

  12. 數(shù)據(jù)庫設(shè)計與自然語義的沖突

  在此,我指的數(shù)據(jù)庫特指關(guān)系型數(shù)據(jù)庫。因此我說,數(shù)據(jù)庫設(shè)計與自然語義的沖突,其實就是說關(guān)系型數(shù)據(jù)庫與面向?qū)ο笳Z言之間無可調(diào)和的矛盾。

  換句話說,在面向?qū)ο笾校瑢傩圆灰欢ㄊ窃拥?,?shù)據(jù)也不一定沒有冗余,因此數(shù)據(jù)庫的三大范式對于面向?qū)ο笤O(shè)計來說,是不適用的,這也就間接導致了,關(guān)系型數(shù)據(jù)庫和面向?qū)ο笤O(shè)計時沖突的。

 ?。ㄗⅲ河捎诒救藢?ORM了解甚少,以下言論請大家選擇性相信,也希望大家不吝賜教)其中ORM就是為了解決面向?qū)ο笈c關(guān)系型數(shù)據(jù)庫不匹配而產(chǎn)生的技術(shù)。很多人在用ORM時有一個誤區(qū),就是首先建立數(shù)據(jù)庫,然后由數(shù)據(jù)庫生成實體對象,但是在我看來,數(shù)據(jù)庫只應該是存儲數(shù)據(jù)的工具,而絕不應該成為整個項目設(shè)計的核心,正確使用ORM的辦法應該是把程序自動持久化到關(guān)系數(shù)據(jù)庫中,而我們在程序中對數(shù)據(jù)庫是一無所知的,我們操作的只是一個對象的集合罷了。我不清楚ORM當今的發(fā)展,但是在我看來,一個完美的ORM系統(tǒng)應該具備解析對象,然后將對象轉(zhuǎn)換為符合范式的數(shù)據(jù)庫結(jié)構(gòu)的能力。

  另外,視圖和緩存表也是解決方案之一。

  最后,我們只能期待對象型數(shù)據(jù)庫的進一步成熟了。

  13.  我眼中的未來語言

  在我眼中,語言的發(fā)展方向應該是逐步貼近語義,試想從第一代語言發(fā)展至今,語言的趨勢無非是越來越適合于程序員使用,提高程序員的工作效率,說句再難聽些的,就是逐步降低系統(tǒng)開發(fā)程序員的門檻,其體現(xiàn)一者在于方法封裝的逐步完善,二就在于越來越接近自然語言,越來越接近“大型作文”的寫作過程。

  那么當軟件發(fā)展到一定程度,我認為未來的語言是等同于自然語言的程序設(shè)計語言。從而人人可編程,方法高度封裝,編譯器可識別人們的自然語言語義從而轉(zhuǎn)換成機器可識別的語言。我們需要做的只是把需求整理成“無語病”的需求分析文檔,然后把文檔移交給“編譯器”,返回給我們的是一個個.exe,.ASPx。

  也許到了那一天,程序員這個職業(yè)不復存在了,取而代之的是作家,這一天,我們說,軟件真的發(fā)展到了最高階段。

it知識庫基于自然語言的軟件工程和程序設(shè)計(下),轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 欧美视频1区 | 一级毛片免费看 | 国产传媒毛片精品视频第一次 | 精品久久av | 黄色一级网 | 国产视频久久久久 | 在线观看国产视频 | 亚洲狠狠爱一区二区三区 | 欧美综合一区二区三区 | 国产精品av久久久久久久久久 | 亚洲乱码一区二区三区在线观看 | 久久视频免费观看 | 一区二区三区视频在线观看 | 国产精品自产av一区二区三区 | 99久久精品国产一区二区三区 | 久久精品久久综合 | 欧美日韩国产不卡 | 亚洲国产成人精品女人久久久 | 免费观看的黄色网址 | 国产99久久久国产精品 | 国产乱码一区 | 夜夜操天天操 | 成人在线视频免费观看 | 福利av在线 | 欧美日韩国产精品激情在线播放 | 亚洲3级| 宅男伊人| 国产99久久久国产精品 | 精品国产一区二区三区免费 | 久久久日韩精品一区二区三区 | 精品视频一区二区三区四区 | 亚洲一区二区精品视频 | 色综合色综合 | 一级做a毛片 | 久久国产精品偷 | 91精品国产自产精品男人的天堂 | 欧美一级精品片在线看 | av激情在线 | 久色网| 日韩精品在线一区 | 国产一区二区欧美 |