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

正文內(nèi)容

高級軟件架構(gòu)設(shè)計(存儲版)

2025-09-15 00:15上一頁面

下一頁面
  

【正文】 對象的層次結(jié)構(gòu)。每當(dāng)出現(xiàn)一種新操作系統(tǒng)時 , 就必須更改該接口并重新部署所有的調(diào)制解調(diào)器軟件。 167 VlSITOR模式的解決方法 168 其它模式 ? 問題: ? 考慮前面的 Modem層次結(jié)構(gòu)。 ? 例如 , 可能希望用 LogoutExitModem來裝飾 Modem層次結(jié)構(gòu) , 當(dāng) Hangup被調(diào)用時 ,它會發(fā)送字符串 exit。顯然,這樣的決定必定是有關(guān)系統(tǒng)設(shè)計成敗的最重要決定,必須經(jīng)過慎重的研究和考察。 178 ? 客戶體驗(yàn)( Customer Experience): – 軟件系統(tǒng)必須易于使用。 ? 邏輯元件: – 一個軟件系統(tǒng)中的元件首先是邏輯元件。簡單說就是使用別人搭好的舞臺,你來做表演。 ? 框架一般處在低層應(yīng)用平臺(如 J2EE)和高層業(yè)務(wù)邏輯之間的中間層。這些中等尺度的結(jié)構(gòu)實(shí)現(xiàn)了一些大尺度組件的行為和它們之間的關(guān)系。完成這一目標(biāo)的一種好方法就是在層上工作,將一個應(yīng)用程序的主要功能分離到不同的層或者級中。 197 ? 表示層:從中間層獲得信息并顯示給用戶。每個過濾器可以單獨(dú)修改,功能單一,并且它們之間的順序可以進(jìn)行配置。 – 不同的語境中小的處理步驟要比大的組件更易于重用。也就是除了輸入和輸出外,每個過濾器不受任何其他過濾器運(yùn)行的影響。轉(zhuǎn)換通常不適合交互式的應(yīng)用。已被激活并且準(zhǔn)備接收請求的任何服務(wù)器都將向代理程序注冊自己,以便下一次客戶端向代理程序請求這種類型的服務(wù)器時,代理程序能夠使用它。ICQ以及 Web Service技術(shù)的大多數(shù)應(yīng)用,都是典型的點(diǎn)對點(diǎn)結(jié)構(gòu)。 ? 視圖: ? 視圖將模型的當(dāng)前狀態(tài)展示給用戶 ,具體的顯示方法由視圖負(fù)責(zé) ,因此一個模型可以適用多個不同的視圖。 ? SOA 架構(gòu)的出現(xiàn)為企業(yè)系統(tǒng)架構(gòu)提供了更加靈活的構(gòu)建方式,如果企業(yè)架構(gòu)設(shè)計師基于 SOA 來構(gòu)建系統(tǒng)架構(gòu),就可以從底層架構(gòu)的級別來保證整個系統(tǒng)的松耦合性以及靈活性,這都為未來企業(yè)業(yè)務(wù)邏輯的擴(kuò)展打好了基礎(chǔ)。 214 ? OO vs. SOA ––OO的擴(kuò)展遇到了挑戰(zhàn) ? 隨著時間的推移,接口繼承的復(fù)雜度在累積 ? 隨著系統(tǒng)間距離的延伸,調(diào)用成本在上升,類型系統(tǒng)的不同步 ? 擴(kuò)展組件的功能成本高,不可確定未來需求,不可堆疊的擴(kuò)展方式 ? 重用與標(biāo)準(zhǔn)化,重用是 OO的第一原則,難以維持和維護(hù)復(fù)雜的重用標(biāo)準(zhǔn)和機(jī)制 215 ? –OO vs. SOA – OO仍然適用于服務(wù)的開發(fā) ? 明顯的性能優(yōu)勢 ? 成熟的設(shè)計與開發(fā)方法 – SOA適用于系統(tǒng)的互聯(lián) ? 互操作性的要求強(qiáng)于性能的要求 216 ? SOA 既不是一種語言,也不是一種具體的技術(shù),它是一種新的軟件系統(tǒng)架構(gòu)模型。任何和整個應(yīng)用有關(guān)的持久性數(shù)據(jù)都應(yīng)該放在模型中。 208 點(diǎn)對點(diǎn)( Peer to Peer) ? 系統(tǒng)中的節(jié)點(diǎn)都處于平等的地位,每個節(jié)點(diǎn)都可以連接其他節(jié)點(diǎn)。 204 經(jīng)紀(jì)人 (Broker) ? 客戶和服務(wù)器通過一個經(jīng)紀(jì)人部件進(jìn)行通信,經(jīng)紀(jì)人負(fù)責(zé)協(xié)調(diào)客戶和服務(wù)器之間的操作,并且為客戶和服務(wù)器發(fā)送請求和結(jié)果信息。 ? 各過濾器可以并發(fā)運(yùn)行。每個處理步驟由一個過濾器組件實(shí)現(xiàn),它處理或者轉(zhuǎn)化數(shù)據(jù),并且系統(tǒng)的輸入可以是多種數(shù)據(jù)源。通過加入這樣的靈活性,采用現(xiàn)有處理組件構(gòu)建是可以辦到的。 198 管道和過濾器( Pipes and Filters) ? 管道和過濾器架構(gòu)模式是為處理數(shù)據(jù)流的系統(tǒng)提供的一種模式。 ? 中間層:包括一個或者多個組件服務(wù),它們應(yīng)用商務(wù)規(guī)則、實(shí)現(xiàn)應(yīng)用程序邏輯并完成應(yīng)用程序運(yùn)行所需要的數(shù)據(jù)處理。 ? 軟件為什么要分層? 為了實(shí)現(xiàn)“高內(nèi)聚、低耦合”。架構(gòu)模式的好壞可以影響到總體布局和框架性結(jié)構(gòu)。 ? 框架一般是成熟,穩(wěn)健的,可以處理系統(tǒng)很多細(xì)節(jié)問題,比如,事物理,安全性,數(shù)據(jù)流控制等問題。 184 軟件框架 ? 什么是框架 ? 框架與架構(gòu)的區(qū)別 ? 常見的框架 185 框架 ? 什么是框架? – 框架,即 framework。 ? 系統(tǒng)架構(gòu)的設(shè)計要求架構(gòu)師具備軟件和硬件的功能和性能的過硬知識,這一工作是架構(gòu)設(shè)計工作中最困難的工作。 ? 可擴(kuò)展性( Extensible): – 在新技術(shù)出現(xiàn)的時候,一個軟件系統(tǒng)應(yīng)當(dāng)允許導(dǎo)入新技術(shù),從而對現(xiàn)有系統(tǒng)進(jìn)行功能和性能的擴(kuò)展 ? 可維護(hù)性( Maintainable): – 軟件系統(tǒng)的維護(hù)包括兩方面,一是排除現(xiàn)有的錯誤,二是將新的軟件需求反映到現(xiàn)有系統(tǒng)中去。 175 ? 建造一個系統(tǒng)所作出的最高層次的、以后難以更改的,商業(yè)的和技術(shù)的決定。它捕獲對 dial函數(shù)的調(diào)用并在委托前把音量設(shè)高。從該數(shù)據(jù)結(jié)構(gòu)可以生成無數(shù)的報表。(假設(shè)每個不同的調(diào)制解調(diào)器在 UNIX中都有自己獨(dú)特的配置方法和行為特征)。這個對象可被存儲并像其他的對象一樣被傳遞。 152 描述變化 ? 下一步是描述出現(xiàn)的特定變化: Shape類擁有矩形和圓形 。 V2Rectangle類的實(shí)現(xiàn)方 法是:保存一個 DP2對象 的引用 , 使用這個對象的 drawline方法 。 4. 把 setWeapon() 方法放到正確的類中。包括代表游戲角色的類,以及武器行為的類。 } } 當(dāng)客戶需要調(diào)用日志的功能時,可以創(chuàng)建日志對象,完成日志的記錄: Log log = new Log()。 ? 改善代碼的可修改性。容易添加很多實(shí)際上不能服務(wù)于任何目的層次。 129 ? 當(dāng)心少數(shù)幾個非常龐大的類 ─上述的反面是,模型具有很少的類,但每個類都是具有職責(zé)數(shù) 量( 5)的龐大的類。 128 分析類經(jīng)驗(yàn)法則 ? 以下是創(chuàng)建形式良好的分析類的一些經(jīng)驗(yàn)法則。 ? 同樣,向 ShoppingBasket 中添加如下職責(zé): 127 分析類的職責(zé) ? 驗(yàn)證信用卡; ? 接收付款; ? 打印收據(jù)?;旧希袠I(yè)務(wù)軟件開發(fā)服 務(wù)于某種業(yè)務(wù)需求,自動化一個已有業(yè)務(wù)過程或者開發(fā)具有有意義的軟件組件的新產(chǎn)品。 ? 選用架構(gòu)模式 ? 識別關(guān)鍵抽象:尋找那些無論在問題域或方案領(lǐng)域都具有普遍意義的概念點(diǎn)。 ? 每個用例都是獨(dú)立的。 ? 可以泛化 ? 不是可有可無的東西。 P e r s o n C o m p a n y0 . . 1*+ e m p l o y e e + e m p l o y e re m p l o y e eJ o e D o eM a r y B r o w nJ e a n S m i t he m p l o y e rS i m p le xS i m p le xU n it e d W id g e t s112 ? 在創(chuàng)建類圖時,應(yīng)該為使用正確的角色名,而不是為每個引用引入一個獨(dú)立的類。 – 如果用 SQL 數(shù)據(jù)庫、 XML 文件、 web service,或者另一種格式的文本文件來存儲影片清單: ? 用另一個具體的類來獲取數(shù)據(jù)。 – 這個方法只能引用一個 finder對象, – 而 finder對象必須知道如何實(shí)現(xiàn) findAll的細(xì)節(jié)。 class MovieLister { ... public Movie[] moviesDirectedBy(String arg) { List allMovies = ()。 while ((c = (ptFlag ? Rdpt() : Rdkbd())) != EOF) WrtPtr(c)。 – 例如:函數(shù) A的參數(shù)是基類型,調(diào)用時傳遞的對象是子類型,正常情況下,增加子類型都不會影響到函數(shù) A的,如果違反了 LSP,則函數(shù) A必須小心的判斷傳進(jìn)來的具體類型,否則就會出錯,這就已經(jīng)違反了 OCP原則。 復(fù)雜的 SQL固然不好維護(hù),但業(yè)務(wù)真是復(fù)雜到簡單的 SQL都難以描述的程度,采用面向?qū)ο竺枋鰟t更加困難,維護(hù)也更困難,同時還損失了效率。此外 ,諸如 Account、 BankingTransaction和OverdraftPolicy類都與現(xiàn)實(shí)世界的概念對應(yīng) , 因此易于理解。 ? 事務(wù)由 Spring框架而非 EJB容器進(jìn)行管理。 ? 提供大量服務(wù): – 聲明型事務(wù) , EIB容器自動啟動、提交和回滾事務(wù)。 ? Service層封裝事務(wù),須對所有的 DO邏輯提供相應(yīng)的事務(wù)封裝方法,造成重定義所有的 Domain logic。 ? Service(業(yè)務(wù)邏輯,事務(wù)封裝 ) ? DAO ? DO ? 優(yōu)點(diǎn): ? 各層單向依賴,結(jié)構(gòu)清楚,易于實(shí)現(xiàn)和維護(hù)。服務(wù)和 facade很像 , 但不一樣 , 它不處理以下事情: 1)執(zhí)行事務(wù)。類的責(zé)任是指該類要做、知道、或決定的一切,由一個或多個方法完成。 ? (4)對 .Net或 Java技術(shù)及整個解決方案有深刻的理解及熟練的應(yīng)用,精通 Web Service,熟練掌握流行的架構(gòu)。 ? 21 ? (6)分布式系統(tǒng)設(shè)計:包括分布式通信協(xié)議的設(shè)計、基于對象與 web的分布式設(shè)計、基于消息和協(xié)同的分布式設(shè)計和異構(gòu)分布式系統(tǒng)的互操作性設(shè)計等。 19 ? (6)標(biāo)準(zhǔn)化:包括標(biāo)準(zhǔn)化的基礎(chǔ)知識、標(biāo)準(zhǔn)化分級、編碼標(biāo)準(zhǔn)、數(shù)據(jù)交換標(biāo)準(zhǔn)、軟件工程標(biāo)準(zhǔn)、信息安全標(biāo)準(zhǔn)、基于構(gòu)件的軟件標(biāo)準(zhǔn)和標(biāo)準(zhǔn)化組織機(jī)構(gòu)等方面的知識。 15 軟件架構(gòu)師的知識結(jié)構(gòu) ? 業(yè)務(wù)知識 – 深入了解系統(tǒng)建設(shè)的業(yè)務(wù)需求。因此一個優(yōu)秀的軟件架構(gòu)師必須具備相當(dāng)豐富的知識、技能和經(jīng)驗(yàn)。 6 ? 角色 ? 軟件架構(gòu)師 Software Architect ? 定義 ? 主導(dǎo)系統(tǒng)全局分析設(shè)計和實(shí)施、負(fù)責(zé)軟件構(gòu)架和關(guān)鍵技術(shù)決策的角色 7 ? 職責(zé) – 領(lǐng)導(dǎo)與協(xié)調(diào)整個項(xiàng)目中的技術(shù)活動(分析、設(shè)計和實(shí)施等) – 推動主要的技術(shù)決策,并最終表達(dá)為軟件構(gòu)架 – 確定和文檔化系統(tǒng)的相對構(gòu)架而言意義重大的方面,包括系統(tǒng)的需求、設(shè)計、實(shí)施和部署等“視圖” – 確定設(shè)計元素的分組以及這些主要分組之間的接口 – 為技術(shù)決策提供規(guī)則,平衡各類涉眾的不同關(guān)注點(diǎn),化解技術(shù)風(fēng)險,并保證相關(guān)決定被有效的傳達(dá)和貫徹 – 理解、評價并接收系統(tǒng)需求 – 評價和確認(rèn)軟件架構(gòu)的實(shí)現(xiàn) 8 ? 專業(yè)技能 ? 技術(shù)全面、成熟練達(dá)、洞察力強(qiáng)、經(jīng)驗(yàn)豐富,具備在缺乏完整信息、眾多問題交織一團(tuán)、模糊和矛盾的情況下,迅速抓住問題要害,并做出合理的關(guān)鍵決定的能力。并解決系統(tǒng)開發(fā)、運(yùn)行中出現(xiàn)的各種問題。 ? 具備領(lǐng)導(dǎo)素質(zhì),以在各小組之間推進(jìn)技術(shù)工作,并在項(xiàng)目壓力下做出牢靠的關(guān)鍵決策。 11 ? 成為一名合格的軟件架構(gòu)師必須具備的知識 – 信息系統(tǒng)綜合知識體系 – 軟件架構(gòu)知識體系 12 ? ? MFC, MSF, MOF, RUP, J2EE, Spring, SOA,JUnit, ORM, .Net ? MVC, UML, XML, Corba, MDA, MDD, WebService ? RSS, , AJAX, Serverlet, Hibernate ? IOC, AOP ? Ruby On Rails ? Rup ? BPEL ? Workflow Engine ? LBS ? Oracle ? CMMI ? MQ ? ? 13 軟件架構(gòu)師在干什么? ? 思考、思考、再思考 – 深入理解、準(zhǔn)確把握建設(shè)的業(yè)務(wù)需求 – 分析所有可見的問題、障礙、風(fēng)險 – 充分參考已有的成功方案,降低風(fēng)險 ? 交流、討論、博弈、質(zhì)疑 – 對構(gòu)思中的方案不斷提出質(zhì)疑,避免漏洞 – 廣泛聽取各層面的意見,開拓思路 – 反復(fù)質(zhì)疑、逐步完善已有的設(shè)計構(gòu)思 ? 在動手實(shí)現(xiàn)之前驗(yàn)證設(shè)計方案的正確性 14 軟件架構(gòu)師的知識結(jié)構(gòu) ? 軟件知識 – 最好要有系統(tǒng)開發(fā)全過程經(jīng)驗(yàn)。 16 軟件架構(gòu)師的思維方式 ? 基于框架的思維 – 架構(gòu)設(shè)計的層次( Enterprise, Application, etc) – IT 的生命周期( What, Why, Where, How, When, etc) – 成功經(jīng)驗(yàn)以及方法論的指導(dǎo) ? 合理把握技術(shù)細(xì)節(jié) – 把握各個層次應(yīng)有的內(nèi)容 – 合理忽略不應(yīng)有的技術(shù)細(xì)節(jié) 17 軟件架構(gòu)師的思維方式 ? 風(fēng)險管理意識 – 采用成功經(jīng)驗(yàn)、避免不應(yīng)有的風(fēng)險 ? 多方位的開放思維 – 多維度、多方向、包容性、避免排他性 – 分析、質(zhì)疑、抽象、歸納 – 沒有絕對好的架構(gòu)設(shè)計,只有相對優(yōu)秀的方案 18 信息系統(tǒng)綜合知識體系 ? (1)計算機(jī)系統(tǒng)綜合知識:包括計算機(jī)組成與體系結(jié)構(gòu)、嵌入式系統(tǒng)和操作系統(tǒng)等方面的知識。 20 軟件架構(gòu)知識體系 ? (1)系統(tǒng)計劃:包括項(xiàng)目的提出和可行性分析、系統(tǒng)方案的制定、評價和改進(jìn)、新舊系統(tǒng)的分析與比較、現(xiàn)有軟、硬件
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1