NET網(wǎng)站開發(fā)項(xiàng)目化教程PPT單元設(shè)計(jì)8-1 搭建“新知書店”系統(tǒng)三層架構(gòu)_第1頁
NET網(wǎng)站開發(fā)項(xiàng)目化教程PPT單元設(shè)計(jì)8-1 搭建“新知書店”系統(tǒng)三層架構(gòu)_第2頁
NET網(wǎng)站開發(fā)項(xiàng)目化教程PPT單元設(shè)計(jì)8-1 搭建“新知書店”系統(tǒng)三層架構(gòu)_第3頁
NET網(wǎng)站開發(fā)項(xiàng)目化教程PPT單元設(shè)計(jì)8-1 搭建“新知書店”系統(tǒng)三層架構(gòu)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

PAGEPAGE1《ASP.Net應(yīng)用開發(fā)》課程單元教學(xué)設(shè)計(jì)8_1教學(xué)單元搭建“新知書店”系統(tǒng)三層架構(gòu)授課班級(jí)授課學(xué)時(shí)課時(shí)授課日期年月日第周周第節(jié)授課教師授課地點(diǎn)教學(xué)目標(biāo)知識(shí)目標(biāo)三層架構(gòu)(表示層,業(yè)務(wù)邏輯層,數(shù)據(jù)訪問層)、各層之間的依賴關(guān)系、對(duì)象模型層(實(shí)體類)在三層架構(gòu)中的作用能力目標(biāo)能夠創(chuàng)建出三層架構(gòu)的系統(tǒng)結(jié)構(gòu)素質(zhì)目標(biāo)規(guī)范管理能力;自我學(xué)習(xí)能力;相互協(xié)作能力。教學(xué)重點(diǎn)三層架構(gòu)的理解和搭建教學(xué)難點(diǎn)熟悉三層架構(gòu)(表示層,業(yè)務(wù)邏輯層,數(shù)據(jù)訪問層)、各層之間的依賴關(guān)系、對(duì)象模型層(實(shí)體類)在三層架構(gòu)中的作用。能力訓(xùn)練任務(wù)或案例搭建“新知書店”系統(tǒng)三層架構(gòu)教學(xué)策略(教學(xué)方法與組織形式)1.課件:根據(jù)本節(jié)課程設(shè)計(jì)的內(nèi)容及教學(xué)計(jì)劃,逐步展現(xiàn)知識(shí)點(diǎn)。2.板書:針對(duì)學(xué)生在學(xué)習(xí)和練習(xí)過程中出現(xiàn)的問題,進(jìn)行補(bǔ)充講解。調(diào)節(jié)課堂節(jié)奏,給學(xué)生思考的時(shí)間。3.教師程序編寫:讓學(xué)生體驗(yàn)搭建“新知書店”系統(tǒng)三層架構(gòu),與所學(xué)知識(shí)點(diǎn)一一對(duì)應(yīng),加深理解。4.問答:就一些知識(shí)點(diǎn)的靈活性與學(xué)生進(jìn)行問答互動(dòng)。5.就(3)和(4)中同學(xué)們的表現(xiàn)給出部分平時(shí)分,為了鼓勵(lì)同學(xué)們的參與積極性,參與者加1分,答對(duì)者加2-3分。課后練習(xí)搭建“新知圖書”前臺(tái)圖書詳細(xì)信息顯示頁面。教學(xué)后記教學(xué)過程教學(xué)引入:討論:怎樣可以使數(shù)據(jù)操作與業(yè)務(wù)邏輯分開,使項(xiàng)目的可讀性更強(qiáng)?教學(xué)內(nèi)容:8.1系統(tǒng)架構(gòu)設(shè)計(jì)和分層8.1.1系統(tǒng)架構(gòu)設(shè)計(jì)到目前為止,我們已經(jīng)完成“新知書店”項(xiàng)目的頁面框架的搭建,從現(xiàn)在開始我們將學(xué)習(xí)三層架構(gòu)在ASP.NET中的應(yīng)用,理解多層結(jié)構(gòu)思想在項(xiàng)目開發(fā)中的突出優(yōu)勢。搭建什么樣的系統(tǒng)架構(gòu)取決于項(xiàng)目的具體需求,有的企業(yè)站點(diǎn)只是公司的介紹,數(shù)據(jù)庫的內(nèi)容可能就幾篇新聞。在這種情況下,基本不需要做太多的系統(tǒng)架構(gòu)設(shè)計(jì)工作,有一個(gè)通用的數(shù)據(jù)庫訪問類就足夠了。有的站點(diǎn)非常龐大,比如新浪、網(wǎng)易等站點(diǎn),這類項(xiàng)目往往需要很多部門的協(xié)作才能完成。而且由于功能模塊復(fù)雜,程序員也有各自的分工:有負(fù)責(zé)用戶管理模塊的、有負(fù)責(zé)權(quán)限管理模塊的。如果模塊功能上有交叉,就有必要制定一個(gè)統(tǒng)一的標(biāo)準(zhǔn),大家都按照一致的標(biāo)準(zhǔn)來,這就有必要設(shè)計(jì)一個(gè)完善的系統(tǒng)架構(gòu)。高內(nèi)聚、低耦合是系統(tǒng)架構(gòu)設(shè)計(jì)的原則,高內(nèi)聚是指每一層都有統(tǒng)一的職能,對(duì)外不公開,低耦合是指層與層之間相互獨(dú)立。比如根據(jù)客戶需求變動(dòng),要求將基于三層架構(gòu)的WinForms應(yīng)用程序“MySchool”項(xiàng)目改成Web應(yīng)用程序,那么我們只需要重新編寫“MySchool”項(xiàng)目的表示層,繼續(xù)使用原來的業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層即可,而不需要全部重新開發(fā)。使用多層結(jié)構(gòu)時(shí)還必須注意要遵循不能跨層訪問的原則。8.1.2三層架構(gòu)概述在軟件體系設(shè)計(jì)中,分層式結(jié)構(gòu)最常見,也是最重要的一種結(jié)構(gòu)。微軟公司推薦的分層式結(jié)構(gòu)一般分為三層,從下至上分別為數(shù)據(jù)訪問層(DAL)、業(yè)務(wù)邏輯層(BLL)和表現(xiàn)層(UI)。三層架構(gòu)(3-TierArchitecture)是基于模塊化程序設(shè)計(jì)的思想,為實(shí)現(xiàn)分解應(yīng)用程序的需求,而逐漸形成的一種標(biāo)準(zhǔn)模式的模塊劃分方法。三層架構(gòu)的軟件系統(tǒng)不必為了業(yè)務(wù)邏輯上的微小變化而導(dǎo)致修改整個(gè)整個(gè)程序,只需要修改業(yè)務(wù)邏輯層中的方法(函數(shù)),增強(qiáng)了代碼的可重用性,便于不同層次的開發(fā)人員之間的合作,只要遵循一定的標(biāo)準(zhǔn)就可以進(jìn)行并行開發(fā),最終將各個(gè)部分拼接到一起即可構(gòu)成最終的應(yīng)用程序。釋疑:所謂”分層”,就是將應(yīng)用程序按照不同的功能劃分成不同的模塊加以實(shí)現(xiàn),其中每一層實(shí)現(xiàn)應(yīng)用程序一個(gè)方面的邏輯功能。1.三層架構(gòu)的構(gòu)成三層架構(gòu)包含數(shù)據(jù)訪問層(DAL)、業(yè)務(wù)邏輯層(BLL)和表現(xiàn)層(UI),分層的目的是為了體現(xiàn)“高內(nèi)聚、低耦合”的思想,各層之間的關(guān)系如圖8-1所示。圖8-1三層的分層式結(jié)構(gòu)各層的功能和作用如下:數(shù)據(jù)訪問層(DAL):負(fù)責(zé)對(duì)數(shù)據(jù)庫的訪問,主要實(shí)現(xiàn)對(duì)數(shù)據(jù)表的增、刪、改、查操作。業(yè)務(wù)邏輯層(BLL):負(fù)責(zé)業(yè)務(wù)處理和數(shù)據(jù)傳遞,它包含了與核心業(yè)務(wù)相關(guān)的邏輯,實(shí)現(xiàn)業(yè)務(wù)規(guī)則和業(yè)務(wù)邏輯。業(yè)務(wù)邏輯層處于數(shù)據(jù)訪問層與表示層之間,還作為表示層和數(shù)據(jù)訪問層的橋梁,實(shí)現(xiàn)數(shù)據(jù)的傳遞和處理,起到了數(shù)據(jù)交換中承上啟下的作用,對(duì)于數(shù)據(jù)訪問層而言,它是調(diào)用者;對(duì)于表示層而言,它卻是被調(diào)用者。表示層(UI):負(fù)責(zé)內(nèi)容的展示和與用戶的交互。它位于最外層(最上層),離用戶最近,給予用戶直接的體驗(yàn)。通俗地講就是展現(xiàn)給用戶的界面。該層主要完成兩個(gè)任務(wù):從業(yè)務(wù)邏輯層獲取數(shù)據(jù)并顯示;與用戶進(jìn)行交互,將相關(guān)數(shù)據(jù)送回業(yè)務(wù)邏輯層進(jìn)行處理。模型層(Model)是標(biāo)準(zhǔn)和規(guī)范,它包含了與數(shù)據(jù)庫表相對(duì)應(yīng)的實(shí)體類,作為數(shù)據(jù)容器貫穿各層之間,用于傳遞數(shù)據(jù)。三層架構(gòu)中各層的依賴順序是:表示層依賴業(yè)務(wù)邏輯層,業(yè)務(wù)邏輯層依賴數(shù)據(jù)訪問層,表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層都依賴模型層。層是一種弱耦合的結(jié)構(gòu),三層之間的依賴時(shí)向下的,上層可以使用下層的功能,而下層不能使用下層的功能,改變上層的設(shè)計(jì)對(duì)于其調(diào)用的下層而言沒有任何影響。例如,單獨(dú)修改表示層(即網(wǎng)站的頁面)不會(huì)影響到下面的業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。分層設(shè)計(jì)具有、便于應(yīng)用程序維護(hù)和重用等2.三層架構(gòu)的優(yōu)缺點(diǎn)優(yōu)點(diǎn)開發(fā)人員可以只關(guān)注整個(gè)結(jié)構(gòu)中的其中某一層;可以很容易用新的實(shí)現(xiàn)來替換原有層次的實(shí)現(xiàn);可以降低層與層之間的依賴;提高應(yīng)用程序內(nèi)聚程度、降低應(yīng)用程序耦合程度;有利于標(biāo)準(zhǔn)化;利于各層邏輯的復(fù)用。在后期維護(hù)的時(shí)候,極大地降低了維護(hù)成本和維護(hù)時(shí)間缺點(diǎn)降低了系統(tǒng)的性能。這是不言而喻的。如果不采用分層式結(jié)構(gòu),很多業(yè)務(wù)可以直接造訪數(shù)據(jù)庫,以此獲取相應(yīng)的數(shù)據(jù),如今卻必須通過中間層來完成。有時(shí)會(huì)導(dǎo)致級(jí)聯(lián)的修改。這種修改尤其體現(xiàn)在自上而下的方向。如果在表示層中需要增加一個(gè)功能,為保證其設(shè)計(jì)符合分層式結(jié)構(gòu),可能需要在相應(yīng)的業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層中都增加相應(yīng)的代碼。增加了開發(fā)成本。任務(wù)實(shí)施:搭建“新知書店”系統(tǒng)三層架構(gòu)1.任務(wù)描述:以開發(fā)“新知

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論