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

正文內(nèi)容

軟件工程-關(guān)于代碼自動(dòng)生成技術(shù)的分析-在線(xiàn)瀏覽

2024-09-21 12:24本頁(yè)面
  

【正文】 更加簡(jiǎn)單方便地復(fù)用成功的設(shè)計(jì)和體系結(jié)構(gòu)。一般而言,一個(gè)模式有四個(gè)基本要素:1. 模式名稱(chēng)(pattern name) 一個(gè)助記名2. 問(wèn)題(problem) 描述了應(yīng)該在何時(shí)使用模式。也可能描述了導(dǎo)致不靈活設(shè)計(jì)的類(lèi)或?qū)ο蠼Y(jié)構(gòu)。3. 解決方案(solution) 描述了設(shè)計(jì)的組成成分,它們之間的相互關(guān)系及各自的職責(zé)和協(xié)作方式。4. 效果(consequences) 描述了模式應(yīng)用的效果及使用模式應(yīng)權(quán)衡的問(wèn)題。軟件效果大多關(guān)注對(duì)時(shí)間和空間的衡量,它們也表述了語(yǔ)言和實(shí)現(xiàn)問(wèn)題。設(shè)計(jì)模式常常劃分成不同的種類(lèi),常見(jiàn)的種類(lèi)有: 創(chuàng)建型設(shè)計(jì)模式,如工廠方法(Factory Method)模式、抽象工廠(Abstract Factory)模式、原型(Prototype)模式、單例(Singleton)模式,建造(Builder)模式等 。行為型模式,如模版方法(Template Method)模式、觀察者(Observer)模式、迭代子(Iterator)模式、責(zé)任鏈(Chain of Responsibility)模式、備忘錄(Memento)模式、命令(Command)模式、狀態(tài)(State)模式、訪(fǎng)問(wèn)者(Visitor)模式等等。設(shè)計(jì)模式在特定的編程語(yǔ)言中實(shí)現(xiàn)的時(shí)候,常常會(huì)用到代碼模式。下面介紹重點(diǎn)介紹抽象工廠模式:在軟件系統(tǒng)中,經(jīng)常面臨著“一系列相互依賴(lài)的對(duì)象”的創(chuàng)建工作;同時(shí)由于需求的變化,往往存在著更多系列對(duì)象的創(chuàng)建工作。它的意圖是提供一個(gè)創(chuàng)建一系列相關(guān)或相互依賴(lài)對(duì)象的接口,而無(wú)需指定它們具體的類(lèi)。元數(shù)據(jù)(編譯以后的最基本數(shù)據(jù)單元)就是一大堆的表,當(dāng)編譯程序集或者模塊時(shí),編譯器會(huì)創(chuàng)建一個(gè)類(lèi) 定義表,一個(gè)字段定義表,和一個(gè)方法定義表等。例如: Assembly類(lèi)可以獲得正在運(yùn)行的裝配件信息,也可以動(dòng)態(tài)的加載裝配件,以及在裝配件中查找類(lèi)型信息,并創(chuàng)建該類(lèi)型的實(shí)例。 MethodInfo包含方法的信息,通過(guò)這個(gè)類(lèi)可以得到方法的名稱(chēng)、參數(shù)、返回值等,并且可以調(diào)用之。2. 應(yīng)用程序需要在運(yùn)行時(shí)從某個(gè)特定的程序集中載入一個(gè)特定的類(lèi)型,以便實(shí)現(xiàn)某個(gè)任務(wù)時(shí)可以用到反射。 緩存技術(shù)由數(shù)據(jù)庫(kù)驅(qū)動(dòng)的Web應(yīng)用程序,如果需要改善其性能,最好的方法是使用緩存功能。因?yàn)槠渲猩婕岸鄠€(gè)環(huán)節(jié),例如,Web服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器等。如果能夠?qū)?shù)據(jù)庫(kù)中的數(shù)據(jù)緩存到內(nèi)存(也可以存儲(chǔ)在其他場(chǎng)所),則無(wú)需在請(qǐng)求每個(gè)頁(yè)面時(shí)都訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)。 :頁(yè)面輸出緩存  頁(yè)面輸出緩存是最為簡(jiǎn)單的緩存機(jī)制。在這個(gè)過(guò)程中,緩存內(nèi)容直接發(fā)送給用戶(hù),而不必再次經(jīng)過(guò)頁(yè)面處理生命周期。需要讀者注意的是,頁(yè)面輸出緩存是將頁(yè)面全部?jī)?nèi)容都保存在內(nèi)存中,并用于完成客戶(hù)端請(qǐng)求。頁(yè)面部分緩存的實(shí)現(xiàn)包括兩種方式:控件緩存和替換后緩存。這一方式緩存了頁(yè)面中的特定內(nèi)容,而沒(méi)有緩存整個(gè)頁(yè)面,因此,每次都需重新創(chuàng)建整個(gè)頁(yè)。緩存后替換與控件緩存正好相反。例如,如果要?jiǎng)?chuàng)建一個(gè)在規(guī)定時(shí)間段內(nèi)為靜態(tài)的頁(yè),則可以將整個(gè)頁(yè)設(shè)置為進(jìn)行緩存。使用緩存后替換機(jī)制,可以將頁(yè)配置為進(jìn)行緩存,將頁(yè)的個(gè)別部分標(biāo)記為不可緩存?! ?yīng)用程序數(shù)據(jù)緩存  應(yīng)用程序數(shù)據(jù)緩存提供了一種編程方式,可通過(guò)鍵/值對(duì)將任意數(shù)據(jù)存儲(chǔ)在內(nèi)存中。但是,與應(yīng)用程序狀態(tài)不同的是,應(yīng)用程序數(shù)據(jù)緩存中的數(shù)據(jù)是易失的,即數(shù)據(jù)并不是在整個(gè)應(yīng)用程序生命周期中都存儲(chǔ)在內(nèi)存中。緩存依賴(lài)   。不同版本的SQL Server,其對(duì)于SQL數(shù)據(jù)緩存依賴(lài)具有不同程度的支持,因此,使用方法差異較大。 。并在單個(gè)頁(yè)中引用這些設(shè)置后,就能夠?qū)⒕彺嬖O(shè)置同時(shí)應(yīng)用于多個(gè)頁(yè)面。 XML技術(shù)XML是Extensible Markup Language的縮寫(xiě),是一種類(lèi)似于HTML的標(biāo)記語(yǔ)言。XML使用文檔類(lèi)型定義(DTD)或者模式(Schema)來(lái)描述數(shù)據(jù)。XML是被設(shè)計(jì)用來(lái)描述數(shù)據(jù)的,重點(diǎn)是:什么是數(shù)據(jù),如何存放數(shù)據(jù)。HTML是與顯示信息相關(guān)的, XML則是與描述信息相關(guān)的。XmlReader類(lèi)是一個(gè)虛基類(lèi),它包含了讀XML文檔的方法和屬性。另外,該類(lèi)還提供了ReadString、ReadInnerXml、 ReadOuterXml和ReadStartElement等更高級(jí)的讀方法。XmlWriter類(lèi)為程序員提供了許多寫(xiě)XML文檔的方法。該節(jié)點(diǎn)可以是XML文檔的根節(jié)點(diǎn),這樣它就代表整個(gè)XML文檔了。同時(shí),XmlNode類(lèi)還為程序員提供了獲取雙親節(jié)點(diǎn)、子節(jié)點(diǎn)、最后一個(gè)子節(jié)點(diǎn)、節(jié)點(diǎn)名稱(chēng)以及節(jié)點(diǎn)類(lèi)型等的屬性。這些方法包括了Load、LoadXml和Save等。 語(yǔ)法高亮顯示。比如利用語(yǔ)法加亮編輯器可以顯示C代碼的效果,類(lèi)型、變量等分別用不同的顏色以示區(qū)分。第三章 系統(tǒng)分析與設(shè)計(jì) 系統(tǒng)分析 系統(tǒng)開(kāi)發(fā)環(huán)境A 硬件環(huán)境普通PC ( , 內(nèi)存512M)一臺(tái)。 本系統(tǒng)應(yīng)用的軟件開(kāi)發(fā)工具與環(huán)境:.Microsoft Visual Studio 2005 C,配合數(shù)據(jù)庫(kù):Microsoft SQL Server 2000或者M(jìn)icrosoft SQL Server 2005。圖31 總的功能模塊數(shù)據(jù)庫(kù)連接模塊(圖32)的業(yè)務(wù)流程:數(shù)據(jù)庫(kù)連接模塊支持不同版本的數(shù)據(jù)庫(kù)服務(wù)器(至少支持sqlserver2000、sqlserver2005)。用戶(hù)提供數(shù)據(jù)庫(kù)的連接信息,系統(tǒng)將連接數(shù)據(jù)庫(kù),并做出相應(yīng)的操作提取該數(shù)據(jù)庫(kù)的有用信息。系統(tǒng)為用戶(hù)提供關(guān)于單表的sql語(yǔ)句(包括增、刪、查、改)的模板。圖33 數(shù)據(jù)庫(kù)查詢(xún)分析模塊功能模塊圖代碼生成模塊(圖34)的業(yè)務(wù)流程:根據(jù)用戶(hù)選擇的數(shù)據(jù)庫(kù)表,系統(tǒng)生成相應(yīng)的代碼。(2)自動(dòng)生成數(shù)據(jù)庫(kù)的存儲(chǔ)過(guò)程。(4)自動(dòng)生成實(shí)體Model,DAL(數(shù)據(jù)訪(fǎng)問(wèn)層),IDAL(接口層),DALFactory(類(lèi)工廠),BLL(業(yè)務(wù)邏輯層) 等多層的代碼。圖34 代碼生成模塊的功能模塊圖 系統(tǒng)用例圖及詳細(xì)說(shuō)明本系統(tǒng)用例圖(圖35):圖5系統(tǒng)用例圖每個(gè)用例的詳細(xì)說(shuō)明:用例1:新建連接 用戶(hù)選擇數(shù)據(jù)庫(kù)類(lèi)型,并且輸入相應(yīng)的服務(wù)器名、用戶(hù)名和密碼。錯(cuò)誤情況1:數(shù)據(jù)庫(kù)連接失敗如果用戶(hù)輸入的數(shù)據(jù)庫(kù)信息有誤,彈出消息框提示操作失敗。用例3:刷新連接 系統(tǒng)根據(jù)本次數(shù)據(jù)庫(kù)連接信息重新連接數(shù)據(jù)庫(kù)并且重新得到數(shù)據(jù)庫(kù) 信息。 系統(tǒng)從數(shù)據(jù)庫(kù)中讀取改表中的信息并予以顯示。用例5:生成sql語(yǔ)句 用戶(hù)選擇表,并選擇生成sql語(yǔ)句的選項(xiàng)。用例6:執(zhí)行sql語(yǔ)句 用戶(hù)輸入執(zhí)行的sql語(yǔ)句,點(diǎn)擊執(zhí)行按鈕。錯(cuò)誤情況:執(zhí)行sql語(yǔ)句出錯(cuò)如果系統(tǒng)執(zhí)行sql語(yǔ)句出錯(cuò),系統(tǒng)拋出異常。 用戶(hù)設(shè)置代碼生成需要的參數(shù)(頂級(jí)命名空間、項(xiàng)目名、主鍵、MODEL 類(lèi)名、代碼類(lèi)型(選擇工廠模式下的MODEL代碼)、方法選擇、數(shù)據(jù)層 類(lèi)型)。 系統(tǒng)生成工廠模式MODEL代碼。用例8:工廠模式IDAL代碼用戶(hù)設(shè)選擇生成工廠模式IDAL代碼的表。 用戶(hù)點(diǎn)擊生成按鈕。錯(cuò)誤情況1:代碼生成失敗如果用戶(hù)用戶(hù)沒(méi)有選擇指定的表,系統(tǒng)將不能正常生成代碼,并彈出消 息框予以提示。用戶(hù)設(shè)置代碼生成需要的參數(shù)(頂級(jí)命名空間、項(xiàng)目名、主鍵、MODEL 類(lèi)名、代碼類(lèi)型(選擇工廠模式下的DAL代碼)、方法選擇、數(shù)據(jù)層類(lèi)型)。系統(tǒng)生成工廠模式DAL代碼。用例10:工廠模式IDALFactroy代碼用戶(hù)設(shè)選擇生成工廠模式IDALFactroy代碼的表。用戶(hù)點(diǎn)擊生成按鈕。錯(cuò)誤情況1:代碼生成失敗如果用戶(hù)用戶(hù)沒(méi)有選擇指定的表,系統(tǒng)將不能正常生成代碼,并彈出消 息框予以提示。用戶(hù)設(shè)置代碼生成需要的參數(shù)(頂級(jí)命名空間、項(xiàng)目名、主鍵、MODEL 類(lèi)名、代碼類(lèi)型(選擇工廠模式下的BLL代碼)、方法選擇、數(shù) 據(jù)層類(lèi) 型)。系統(tǒng)生成工廠模式BLL代碼。用例12:簡(jiǎn)單三層MODEL代碼用戶(hù)設(shè)選擇生成簡(jiǎn)單三層MODEL代碼的表。用戶(hù)點(diǎn)擊生成按鈕。錯(cuò)誤情況1:代碼生成失敗如果用戶(hù)用戶(hù)沒(méi)有選擇指定的表,系統(tǒng)將不能正常生成代碼,并彈出消 息框予以提示。用戶(hù)設(shè)置代碼生成需要的參數(shù)(頂級(jí)命名空間、項(xiàng)目名、主鍵、MODEL 類(lèi)名、代碼類(lèi)型(選擇簡(jiǎn)單模式下的DAL代碼)、方法選擇、數(shù)據(jù)層 類(lèi)型)。系統(tǒng)生成簡(jiǎn)單模式DAL代碼。用例14:簡(jiǎn)單三層BLL代碼用戶(hù)設(shè)選擇生成簡(jiǎn)單三層BLL代碼的表。用戶(hù)點(diǎn)擊生成按鈕。錯(cuò)誤情況1:代碼生成失敗如果用戶(hù)用戶(hù)沒(méi)有選擇指定的表,系統(tǒng)將不能正常生成代碼,并彈出消 息框予以提示。用戶(hù)設(shè)置代碼生成需要的參數(shù)(頂級(jí)命名空間、項(xiàng)目名、主鍵、代碼 類(lèi)型(選擇單層代碼)、方法選擇、數(shù)據(jù)層 類(lèi)型)。系統(tǒng)生成單層代碼。用例16:Aspx代碼用戶(hù)設(shè)選擇生成Web頁(yè)面代碼的表。用戶(hù)點(diǎn)擊生成按鈕。錯(cuò)誤情況1:代碼生成失敗如果用戶(hù)用戶(hù)沒(méi)有選擇指定的表,系統(tǒng)將不能正常生成代碼,并彈出消 息框予以提示。用戶(hù)設(shè)置代碼生成需要的參數(shù)(代碼類(lèi)型()、方法選 擇)。用例18:存儲(chǔ)過(guò)程 用戶(hù)選擇生成存儲(chǔ)過(guò)程的表和所要生成的存儲(chǔ)過(guò)程方法,并點(diǎn)擊 生成按鈕。錯(cuò)誤情況1:代碼生成失敗如果用戶(hù)用戶(hù)沒(méi)有選擇指定的表,系統(tǒng)將不能正常生成代碼,并彈出消 息框予以提示。 系統(tǒng)顯示代碼輸出窗口。 用戶(hù)選擇架構(gòu)、方法、保存路徑,輸入命名空間、子文件夾,點(diǎn) 擊導(dǎo)出。錯(cuò)誤情況1:代碼導(dǎo)出失敗如果用戶(hù)選擇的數(shù)據(jù)庫(kù)與表不一致,系統(tǒng)無(wú)法成功生成代碼,系統(tǒng) 將彈出消息框提示。系統(tǒng)分為表示層、邏輯層和數(shù)據(jù)訪(fǎng)問(wèn)層(如圖36所示)三層。它使的表示層、邏輯層不再關(guān)心數(shù)據(jù)庫(kù)的具體問(wèn)題。表示層實(shí)現(xiàn)用戶(hù)接口。數(shù)據(jù)訪(fǎng)問(wèn)包設(shè)計(jì)(圖37):圖37 數(shù)據(jù)訪(fǎng)問(wèn)包每個(gè)類(lèi)說(shuō)明:AntoSqlHelper類(lèi)是進(jìn)行數(shù)據(jù)庫(kù)通信的基類(lèi),通過(guò)此類(lèi)訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)并得到數(shù)據(jù)集。Sqlk2kDBInfo類(lèi)用于獲得SQLSERVER2005數(shù)據(jù)庫(kù)的信息。DBToDBXml2將SQLSERVER2000數(shù)據(jù)庫(kù)的信息轉(zhuǎn)化成表的形式以便對(duì)其數(shù)據(jù)庫(kù)信息的操作。業(yè)務(wù)邏輯包設(shè)計(jì)(圖38):圖38 業(yè)務(wù)邏輯包每個(gè)類(lèi)的說(shuō)明:EntityCode類(lèi)將數(shù)據(jù)庫(kù)指定表的信息以及用戶(hù)要求生成工廠模式的MODEL層代碼。DALCode類(lèi)將數(shù)據(jù)庫(kù)指定表的信息以及用戶(hù)要求生成工廠模式的DAL層代碼。BLLCode類(lèi)將數(shù)據(jù)庫(kù)指定表的信息以及用戶(hù)要求生成工廠模式的BLL層代碼。THBLLCode類(lèi)將數(shù)
點(diǎn)擊復(fù)制文檔內(nèi)容
化學(xué)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1