freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

j2ee項(xiàng)目實(shí)訓(xùn)uml及設(shè)計(jì)模式——第7章架構(gòu)設(shè)計(jì)中的架構(gòu)模式第1部分-wenkub

2022-11-27 17:12:21 本頁面
 

【正文】 模 式(通用職責(zé)分配軟件模式 ) 它能夠幫助軟件系統(tǒng)的開發(fā)者把握基本的對(duì)象設(shè)計(jì)技術(shù),并且用一種系統(tǒng)的、可推理的、可說明的方式來應(yīng)用面向?qū)ο蠹夹g(shù)中的各種設(shè)計(jì)理論和思想、原則,并指導(dǎo)軟件系統(tǒng)的設(shè)計(jì)人員正確地進(jìn)行類的職責(zé)的分配和類之間關(guān)系的決定;另外,通用職責(zé)分配軟件模式也是學(xué)習(xí)使用 GOF 代碼設(shè)計(jì)模式的基礎(chǔ)。但一般從設(shè)計(jì)模式所涉及的解決問題的層次性,分為如下三種層次: ( 1)系統(tǒng)架構(gòu)模式(如 J2EE 核心模式 中的各種 架構(gòu)模式) ( 2)通用職責(zé)分配軟件模式( GRASP 模式 General Responsibility Assignment Software Patterns ) ( 3)代碼設(shè)計(jì)模式(如 GOF 的 23 種代碼設(shè)計(jì)模式) Gamma、 Helm、 Johnson 和 Vissides(簡稱為 GOF)在其中文版《設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖A(chǔ)》(機(jī)械工業(yè)出版社, 2020 年 9 月)中所提出的 23 種 設(shè)計(jì)模 式 。否則就會(huì)出現(xiàn)“技術(shù)至上論”,因?yàn)闈M足用戶的需要是開發(fā)者首先要考慮的問題。 ( 3) 正確使用設(shè)計(jì)模式是軟件系統(tǒng)的設(shè)計(jì)人員必須掌握的基本技能 因此對(duì)于任何想開發(fā)出靈活高效、健壯的軟件產(chǎn)品的開發(fā)者特別是系統(tǒng)的設(shè)計(jì)人員,熟練掌握并正確使用設(shè)計(jì)模式都是必須掌握的基本技能。 比如 下面 所羅 列出的是 在一般的軟件系統(tǒng)的 開 發(fā) 過程中都會(huì) 面臨到的 一些 問題: 1) 如何充分利用容器管理事務(wù)、持久性和安全性 2) 把會(huì)話數(shù)據(jù)存放在哪里 ?是由表示層地組件 負(fù)責(zé)數(shù)據(jù)驗(yàn)證 還是由業(yè)務(wù)層組件來負(fù)責(zé)? 3) 如何定義 系統(tǒng)中地各個(gè)業(yè)務(wù) 實(shí)體 組件 之間的關(guān)系 ? 各 層之間 如何傳送參 數(shù) ? 4) 如何減少 對(duì) 遠(yuǎn)程 系統(tǒng)中的 方法調(diào)用 的次數(shù)?以及 如何集成現(xiàn)有應(yīng)用 系統(tǒng) 程序 ? 這些問題是 軟件系統(tǒng)的開發(fā)者 都會(huì)碰到的 , 而設(shè)計(jì)模式( GOF 設(shè)計(jì)模式和 J2EE 核心 架楊教授工作室 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 楊教授工作室,版權(quán) 所有,盜版必究 , 3/17 頁 構(gòu) 設(shè)計(jì)模式)能夠更好地幫助 開發(fā)者 解決這些問題。使用設(shè)計(jì)模式的 主要 目的是為了能夠更好地獲得可重用性,這包括體系結(jié)構(gòu)和 實(shí)現(xiàn)代碼等方面 ,并能夠 讓所開發(fā)出的軟件系統(tǒng)更容易被他人理解、同時(shí)也保證系統(tǒng)的體系結(jié)構(gòu)的正確性和代碼的可靠性。各種架構(gòu)模式和代碼模式越來越被廣泛地 應(yīng)用在各種不同的軟件系統(tǒng)的 設(shè)計(jì)和 開發(fā) 實(shí)現(xiàn) 中。也能夠說明當(dāng)時(shí)的開發(fā)思路 ;而對(duì)于一個(gè)大規(guī)模的復(fù)雜軟件系統(tǒng)來說,軟件體系架構(gòu)比起對(duì)程序的算法和數(shù)據(jù)結(jié)構(gòu)的選擇來說現(xiàn)在已經(jīng)變得明顯重要得多。 而系統(tǒng)地學(xué)習(xí)和掌握在軟件體系架構(gòu)設(shè)計(jì)中的一些常見的設(shè)計(jì)模式、并靈活和合理地應(yīng)用這些架構(gòu)模式是獲得在體系架構(gòu)這一層次軟件重用的主要技術(shù)手段。本章則主要探討在軟件系統(tǒng)設(shè)計(jì)中與架構(gòu)模式相關(guān)的設(shè)計(jì)思想、原則和方法等內(nèi)容,這主要包括層模 式及應(yīng)用、 MVC 架構(gòu)模式及應(yīng)用、控制器模式及應(yīng)用、門面模式及應(yīng)用等方面的內(nèi)容。 此時(shí)軟件系統(tǒng)的開發(fā)者開始認(rèn)識(shí)到軟件體系架構(gòu)的重要,如 Rational 公司提出了“以架構(gòu)為中心”的統(tǒng)一軟件開發(fā)過程 (RUP)。 因?yàn)檐浖_發(fā)過程中的一個(gè)永恒的主題是“ 軟件復(fù)用 ”。 利用 設(shè)計(jì) 模式來進(jìn)行軟件系統(tǒng)開發(fā)所體現(xiàn)出的主要優(yōu)點(diǎn) ( 1) 不必做重復(fù)勞動(dòng),因?yàn)槟J绞且环N指導(dǎo) 在一個(gè)良好的指導(dǎo)下(包括解決某種問題的思想和方法),會(huì)得到解決問題的最佳辦法 —— 包括系統(tǒng)架構(gòu)和實(shí)現(xiàn)代碼。 另外在 分布式企業(yè)應(yīng)用 系統(tǒng)的開發(fā)中,由于需要 涉及 對(duì) 多種 不同的 技術(shù) 的具體應(yīng)用 , 這將 對(duì)設(shè)計(jì) 和編程 開發(fā)人員提出了 更 高的要求。 ( 4)應(yīng)用 設(shè)計(jì) 模式時(shí)所應(yīng)該注意的要點(diǎn) ? 模式有不同的領(lǐng)域 和應(yīng)用的場(chǎng) 景 設(shè)計(jì) 模式 也不是萬能的,只針對(duì)某種場(chǎng)景下的問題提供了解決方案和實(shí)現(xiàn)的示例代碼 。 ? 不要為了 設(shè)計(jì)模式而 亂用 設(shè)計(jì)模式 通過系統(tǒng)地學(xué)習(xí)和了解設(shè)計(jì)模式,將使開發(fā)者對(duì)系統(tǒng)的設(shè)計(jì)中所涉及的架構(gòu)和實(shí)現(xiàn)代碼會(huì)有更深地理解。 架構(gòu)模式 架構(gòu)模式一般著眼于不同業(yè)務(wù)系統(tǒng)中共性問題的解決方案的設(shè)計(jì),是 有關(guān)大尺度和粗粒度的設(shè)計(jì)方案的重用;它 主要描述軟件系統(tǒng)中的程序的基本結(jié)構(gòu)組織或綱要,通常提供一組事先定義好的子系統(tǒng),并指定它們的責(zé)任,同時(shí)給出把它們組織在一起的法則和指南。 有關(guān)對(duì)通用職責(zé)分配軟件模式的細(xì)節(jié)內(nèi)容的學(xué)習(xí),請(qǐng)讀者參考本書的第八章“通用職責(zé)分配軟件模式( GRASP)”的章節(jié)。 ( 2)正確地區(qū)分 GRASP 模式和 GOF 代碼設(shè)計(jì)模式的不同。 架構(gòu)和模式兩者最主要的不同 ( 1)架構(gòu) (Architecture)更加關(guān)注的是所謂的“高層設(shè)計(jì)”( HighLevel Design) 架構(gòu)是一組有關(guān)如何決定軟件系統(tǒng)的組織 結(jié)構(gòu) 的重要決策,以及 接口和它們相互協(xié)作的行為的選擇。 如何學(xué)習(xí)和掌握設(shè)計(jì)模式 ( 1)學(xué)習(xí) 并最終掌握 設(shè)計(jì)模式是成為一個(gè)高級(jí)軟件設(shè)計(jì)師的必由之路 但由于 設(shè)計(jì)模式是一種方法論的抽象,應(yīng)該建立在經(jīng)驗(yàn)的基礎(chǔ)上。 架構(gòu)設(shè)計(jì)中的層模式 及應(yīng)用 層架構(gòu)模式的典型應(yīng)用 軟件系統(tǒng)中的層( layer) 軟件系統(tǒng)中的 層是一個(gè)大 尺度的元素,通常 是 由一些 系統(tǒng) 包或者子系統(tǒng) (如組件) 組裝而成 的。因此,相信讀者對(duì)層和分層等方面的基本概念應(yīng)該是不陌生的。 ( 2)利用層架構(gòu)模式來組織系統(tǒng)時(shí)能夠構(gòu)造出一個(gè)層次化的系統(tǒng)結(jié)構(gòu) 楊教授工作室 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 楊教授工作室,版權(quán) 所有,盜版必究 , 7/17 頁 應(yīng)用系統(tǒng)經(jīng)過合理地分層和隔離,從而使得每一層都能夠?yàn)槠渌鶎?duì)應(yīng)的上一層提供服務(wù)而成 為服務(wù)的提供者,同時(shí)也作為下層的客戶端而獲得所需要的服務(wù); 由于層是一種弱耦合結(jié)構(gòu),層與層之間的依賴是向下的,底層對(duì)于上層而言是“無知”的,改變上層的設(shè)計(jì)對(duì)于其調(diào)用的底層而言沒有任何影響。 將系統(tǒng)進(jìn)行合理地分層的另一個(gè)好處是,這些層形成了應(yīng)用系統(tǒng)開發(fā)小組的自然分界—— 因?yàn)閷?duì)每層的開發(fā)人員所需要的技巧是不同的 、項(xiàng)目分工時(shí)可以根據(jù)人員的技術(shù)水平和對(duì)相關(guān)的層所涉及的技術(shù)熟練程度進(jìn)行合理地任務(wù)分配 。 ( 2) J2EE 平臺(tái)系統(tǒng)開發(fā)中常見的分層策略 但是在實(shí)際的項(xiàng)目開發(fā)中, 應(yīng)用系統(tǒng)的設(shè)計(jì)人員 通常 會(huì) 對(duì) 標(biāo)準(zhǔn)的 三層 架 構(gòu)進(jìn)行擴(kuò)展 以滿足 應(yīng)用系統(tǒng)中 的具體要求。 中間 業(yè)務(wù) 層 的具體實(shí)現(xiàn)時(shí) , 可以 不依賴 系統(tǒng)中 具體的表示層技術(shù),也不依賴 于系統(tǒng)中 具體 的 數(shù)據(jù) 層的 技術(shù) 實(shí)現(xiàn) 。在這種分層體系的結(jié)構(gòu)中,應(yīng)用系統(tǒng)都被 表示為由一系列相關(guān)聯(lián)的各層單獨(dú)的子系統(tǒng)所構(gòu)成,而每個(gè)層中的子系統(tǒng)又都采用組件技術(shù)來設(shè)計(jì)和構(gòu)造,每個(gè)組件系統(tǒng)也可以對(duì)其上、下層中的組件進(jìn)行調(diào)用。 將系統(tǒng)劃分成多層結(jié)構(gòu)的最大好處是提高了開發(fā)速度、增強(qiáng)系統(tǒng)的健壯性和穩(wěn)定性、提高了系統(tǒng)的可維護(hù)性和拓展性,也能夠 大大節(jié)約系統(tǒng)開發(fā)成功后的維護(hù) 、完善 修改 的 成本。 ( 2)降低了系統(tǒng)的可重用性 由于整個(gè)應(yīng)用系統(tǒng)中的各個(gè)功能模塊是相互
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1