黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

架構(gòu)設(shè)計(jì)的三個(gè)維度

系統(tǒng) 2118 0

架構(gòu)設(shè)計(jì) 是一個(gè)非常大的話題,不管寫幾篇文章,接觸到的始終只是冰山一角,更多的是實(shí)踐中去體會。

??? 這篇文章主要介紹的是面向?qū)ο驩O,面向方面AOP,面向服務(wù)SOA這三個(gè)要素在架構(gòu)設(shè)計(jì)中的位置與作用。

??? 一、架構(gòu)設(shè)計(jì)三個(gè)維度

??? 架構(gòu)設(shè)計(jì)有三個(gè)維度,或者說是我們在考慮架構(gòu)時(shí)需要思考的三個(gè)方向。分別為:面向?qū)ο蟆⒚嫦蚍矫妗⒚嫦蚍?wù)。這三個(gè)維度可以看作是正交的,但不同維度會互相印證,互相支撐。

??? 整個(gè)架構(gòu)的示意圖如下所示:

???? 架構(gòu)設(shè)計(jì)的三個(gè)維度


??? 二、面向?qū)ο?

??? 面向?qū)ο蠹夹g(shù)最初是從面向?qū)ο蟮某绦蛟O(shè)計(jì)開始的,它的出現(xiàn)以60年代simula語言為標(biāo)志,并在Smalltalk語言的完善和標(biāo)準(zhǔn)化過程中得到更多的 擴(kuò)展和對以前的思想的重新注解。80年代中后期,面向?qū)ο蟪绦蛟O(shè)計(jì)逐漸成熟,被計(jì)算機(jī)界理解和接受,人們又開始進(jìn)一步考慮面向?qū)ο蟮拈_發(fā)問題。直到現(xiàn)在, 面向?qū)ο笠呀?jīng)成為一種非常流行的編程方式,以及軟件設(shè)計(jì)的架構(gòu)。

??? 面向?qū)ο筇岢鲇腥齻€(gè)主要目標(biāo):重用性、靈活性和擴(kuò)展性,強(qiáng)調(diào)對象的“抽象”、“封裝”、“繼承”、“多態(tài)”。它能讓人們以更加接近于現(xiàn)實(shí)世界的方式來思考程序,這點(diǎn)可以說是面向?qū)ο笞畲蟮倪M(jìn)步。

??? 在OO思想的運(yùn)用上,業(yè)界出現(xiàn)了很多好的經(jīng)驗(yàn)與技巧,從而涌現(xiàn)出大量的設(shè)計(jì)模式。可以說面向?qū)ο笫窍到y(tǒng)分析與設(shè)計(jì)時(shí)的一個(gè)很重要的方面。

??? 三、面向方面

??? 面向方面最初來源于hook技術(shù),本質(zhì)上就是滿足擴(kuò)展的需求,可以在程序中自由擴(kuò)展功能。

??? 面向方面不僅僅是一門編程技術(shù),同樣也是一種架構(gòu)設(shè)計(jì)的思路。如果說OO是縱向地分析、切割整個(gè)系統(tǒng),那么可以認(rèn)為AOP是橫向地對系統(tǒng)作切片。簡單地理 解,OO與AOP分別從兩個(gè)不同的角度給我們提供了分析系統(tǒng)的思路。面向方面可以彌補(bǔ)面向?qū)ο蟮娜毕荩瑑煞N方式有機(jī)的結(jié)合在一起可以更加有效地分析系統(tǒng)。

??? 我們認(rèn)為OO是接近于人類認(rèn)識自然的思維方式,但對于東方來說卻并不是這樣。當(dāng)西方人看到一個(gè)復(fù)雜系統(tǒng)的時(shí)候,只會有一種思路,就是“分解”——將系統(tǒng)分 解成一塊一塊,然后每個(gè)部分作研究。當(dāng)東方人看到一個(gè)復(fù)雜系統(tǒng)的時(shí)候,更多地會關(guān)注系統(tǒng)中存在的關(guān)系,將系統(tǒng)作為一個(gè)有機(jī)的整體進(jìn)行研究。

??? 這兩種思維方式都沒有問題,結(jié)合起來的話分析問題解決問題會更好。面向?qū)ο笈c面向方面也同樣如此,都能對應(yīng)到人類認(rèn)識自然的思維方式上。不過 中國 人理解AOP可能會有不同的感悟——我寫的文章《讀易[13]·閑談中醫(yī)與AOP》有簡單的說明。

??? 四、面向服務(wù)

??? 面向服務(wù)可以說是最近炒得比較火的概念了。包括現(xiàn)在提到的SaaS——Software as a service,軟件即服務(wù)。準(zhǔn)確說來,面向服務(wù)不僅僅是軟件行業(yè)的概念。這個(gè)要從社會的產(chǎn)業(yè)結(jié)構(gòu)說起。

??? 社會產(chǎn)業(yè)總共分為三個(gè),第一產(chǎn)業(yè)農(nóng)業(yè),第二產(chǎn)業(yè)工業(yè),第三產(chǎn)業(yè)服務(wù)業(yè)。最早社會的主要產(chǎn)業(yè)是第一產(chǎn)業(yè)農(nóng)業(yè),將近有幾萬年的歷史。十八世紀(jì)下半葉在英國開始的工業(yè)革命,對人們的生活產(chǎn)生了根本性的影響,社會的主要產(chǎn)業(yè)成了第二產(chǎn)業(yè)工業(yè)。

??? 現(xiàn)在仍然屬于工業(yè)時(shí)代,或者有人說的“后工業(yè)時(shí)代”。而在后工業(yè)時(shí)代,社會的 經(jīng)濟(jì) 體制必定要向第三產(chǎn)業(yè)服務(wù)業(yè)逐漸轉(zhuǎn)型。面向服務(wù)其實(shí)是社會經(jīng)濟(jì)體制重心的一種遷移。

??? 還是說回到軟件行業(yè),社會的主要產(chǎn)業(yè)將轉(zhuǎn)變成服務(wù)業(yè),自然軟件行業(yè)也會出現(xiàn)對應(yīng)的變化,那就是這里提到的面向服務(wù)。面向服務(wù)今后會影響到軟件的交付模式,會對整個(gè)軟件行業(yè)的體制產(chǎn)生影響。

??? 而說到架構(gòu)層面,面向服務(wù)是系統(tǒng)發(fā)布功能的一種方式。并且基于這種方式下不同的系統(tǒng)之間能有效地通信、協(xié)作。常見的實(shí)現(xiàn)技術(shù)就是Web Service。

??? 五、軟件全局觀

??? 軟件架構(gòu)設(shè)計(jì)的三個(gè)維度:面向?qū)ο蟆⒚嫦蚍矫妗⒚嫦蚍?wù)。

??? 最年長的一個(gè)維度就是面向?qū)ο螅l(fā)展了好幾十年,也是相對來說比較成熟的一個(gè)維度。它解決的問題是系統(tǒng)內(nèi)部結(jié)構(gòu)的設(shè)計(jì)。

??? 面向方面的思想提出來能夠彌補(bǔ)面向?qū)ο蟮娜毕荨C嫦驅(qū)ο蟮姆绞讲荒軐?shí)現(xiàn)橫切關(guān)注點(diǎn)的分離,而面向方面正是為了解決這個(gè)問題。面向方面與面向?qū)ο笠粯佣际墙鉀Q系統(tǒng)內(nèi)部結(jié)構(gòu)的設(shè)計(jì)。

??? 面向服務(wù)更多的是涉及到系統(tǒng)的外部,簡單地說就是發(fā)布功能。它并不關(guān)注系統(tǒng)內(nèi)部結(jié)構(gòu)的實(shí)現(xiàn),所以說面向服務(wù)與面向?qū)ο蠡蛘呙嫦蚍矫娌⒉粵_突。

??? 這三個(gè)維度并不是絕對孤立的,它們之間會互相影響、制約。我們在分析架構(gòu)的時(shí)候需要同時(shí)考慮到這三個(gè)維度的問題。這樣有助于我們設(shè)計(jì)出更加優(yōu)秀的架構(gòu)。

架構(gòu)設(shè)計(jì)的三個(gè)維度


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論