版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> C#及數(shù)據(jù)庫的開發(fā)</b></p><p><b> C#的介紹</b></p><p> C#在某種程度上可以看作是.NET面向Windows環(huán)境的一種編程語言。在去去的十幾年里,Microsoft給Windows和 Windows API添加了許多功能,VB和C++也經(jīng)歷了許多變化。雖然VB和C++最終已成為
2、非常強大的語言,但這兩種語言也存在問題,因為它們保留了原來的一些內(nèi)容。</p><p> 對于Visual Basic來說,它的主要優(yōu)點是很容易理解,許多編程工作都很容易完成,基本上隱藏了Windows API和COM組件結(jié)構(gòu)的內(nèi)涵。其缺點是Visual Basic從來沒有實現(xiàn)真正意義上的面向?qū)ο?,所以大型?yīng)用程序很難分解和維護。另外,因為VB的語法繼承于BASIC的早期版本(BASIC主要是為了讓初學(xué)者更容易
3、理解,而不是為了編寫大型商業(yè)應(yīng)用程序),所以不能真正成為結(jié)構(gòu)化或面向?qū)ο蟮木幊陶Z言。</p><p> 另一方面,C++在ANSI C++語言定義中有其自己的根。它與ANSI不完全兼容,因為Microsoft是在ANSI定義標準化之前編寫C++編譯器的,但已經(jīng)相當接近了。遺憾的是,這導(dǎo)致了兩個問題。其一,ANSI C++是在十幾年前的技術(shù)條件下開發(fā)的,因此不支持現(xiàn)在的概念(例如Unicode字符串和生成XML文
4、檔),某些古老的語法結(jié)構(gòu)是為以前的編譯器設(shè)計的(例如成員函數(shù)的聲明和定義是分開的)。其二,Microsoft同時還試圖把C++演變?yōu)橐环N用于在Windows上執(zhí)行高性能任務(wù)的語言—— 在語言中避免添加大量Microsoft專用的關(guān)鍵字和各種庫。其結(jié)果是在Windows中,該語言成為了一種非常雜亂的語言。讓一個C++開發(fā)人員說說字符串有多少個定義方式就可以說明這一點:char*、LPTSTR、string、CString (MFC 版本)
5、、CString (WTL 版本)、wchar_t*和 OLECHAR*等。</p><p> 現(xiàn)在進入.NET時代—— 一種全新的環(huán)境,它對這兩種語言都進行了新的擴展。Microsoft給C++添加了許多Microsoft專用的關(guān)鍵字,并把VB演變?yōu)閂B.NET,保留了一些基本的VB語法,但在設(shè)計上完全不同,從實際應(yīng)用的角度來看,VB.NET是一種新語言。</p><p> 在這里,
6、Microsoft決定給開發(fā)人員另一個選擇—— 專門用于.NET、具有新起點的語言, 即Visual C# .NET。Microsoft在正式場合把C#描述為一種簡單、現(xiàn)代、面向?qū)ο?、類型非常安全、派生于C和C++的編程語言。大多數(shù)獨立的評論員對其說法是“派生于C、 C++ 和Java”。這種描述在技術(shù)上是非常準確的,但沒有涉及到該語言的真正優(yōu)點。從語法上看,C#非常類似于C++和Java,許多關(guān)鍵字都是相同的,C#也使用類似于C++和
7、Java的塊結(jié)構(gòu),并用括號({})來標記代碼塊,用分號分隔各行語句。對C#代碼的第一印象是它非常類似于C++或Java代碼。但在這些表面上的類似性后面,C#學(xué)習(xí)起來要比C++容易得多,但比Java難一些。其設(shè)計與現(xiàn)代開發(fā)工具的適應(yīng)性要比其他語言更高,它同時具有Visual Basic的易用性、高性能以及C++的低級內(nèi)存訪問性。C#包括以下一些特性:</p><p> 完全支持類和面向?qū)ο缶幊蹋ń涌诤屠^承、虛
8、函數(shù)和運算符重載的處理。</p><p> 定義完整、一致的基本類型集。</p><p> 對自動生成XML文檔說明的內(nèi)置支持。</p><p> 自動清理動態(tài)分配的內(nèi)存。</p><p> 可以用用戶定義的特性來標記類或方法。這可以用于文檔說明,對編譯有一定的影響(例如,把方法標記為只在調(diào)試時編譯)。</p><
9、p> 對.NET基類庫的完全訪問權(quán),并易于訪問Windows API。</p><p> 可以使用指針和直接內(nèi)存訪問,但C#語言可以在沒有它們的條件下訪問內(nèi)存。</p><p> 以VB的風(fēng)格支持屬性和事件。</p><p> 改變編譯器選項,可以把程序編譯為可執(zhí)行文件或.NET組件庫,該組件庫可以用與ActiveX控件(COM組件)相同的方式由其他代
10、碼調(diào)用。</p><p> C#可以用于編寫ASP.NET動態(tài)Web頁面和XML Web服務(wù)。</p><p> 應(yīng)該指出,對于上述大多數(shù)特性,VB.NET和Managed C++也具備。但C#從一開始就使用.NET,對.NET特性的支持不僅是完整的,而且提供了比其他語言更合適的語法。C#語言本身非常類似于Java,但其中有一些改進,因為Java并不是為應(yīng)用于.NET環(huán)境而設(shè)計的。&l
11、t;/p><p> 在結(jié)束這個主題前,還要指出C#的兩個局限性。其一是該語言不適用于編寫時間急迫或性能非常高的代碼,例如一個要運行1000或1050次的循環(huán),并在不需要這些循環(huán)時,立即清理它們所占用的資源。在這方面,C++可能仍是所有低級語言中的佼佼者。其二是C#缺乏性能極高的應(yīng)用程序所需要的關(guān)鍵功能,包括保證在代碼的特定地方運行的內(nèi)聯(lián)函數(shù)和析構(gòu)函數(shù)。但這類應(yīng)用程序非常少。</p><p>
12、<b> 數(shù)據(jù)庫開發(fā)過程</b></p><p> 基于信息工程的信息系統(tǒng)規(guī)劃是數(shù)據(jù)庫開發(fā)項目的一個來源。這些開發(fā)新數(shù)據(jù)庫的項目通常是為了滿足組織的戰(zhàn)略需求,例如改善客戶支持、提高產(chǎn)品和庫存管理或進行更精確的銷售預(yù)測。然而許多數(shù)據(jù)庫開發(fā)項目更多的是以自底向上的方式出現(xiàn)的,例如信息系統(tǒng)的用戶需要特定的信息來完成他們的工作,從而請求開始一個項目,又如其他信息系統(tǒng)的專家發(fā)現(xiàn)組織需要改進數(shù)據(jù)管理
13、而開始新的項目。即使在自底向上的情況下,建立企業(yè)數(shù)據(jù)模型也是必須的,以便理解現(xiàn)有的數(shù)據(jù)庫是否可以提供所需的數(shù)據(jù),否則,新的數(shù)據(jù)庫、數(shù)據(jù)實體和屬性都應(yīng)該加到當前的組織數(shù)據(jù)資源中去。</p><p> 無論是戰(zhàn)略需求還是操作信息的需求,每個數(shù)據(jù)庫開發(fā)項目通常集中在一個數(shù)據(jù)庫上。一些數(shù)據(jù)庫項目僅僅集中在定義、設(shè)計和實現(xiàn)一個數(shù)據(jù)庫,以作為后續(xù)信息系統(tǒng)開發(fā)的基礎(chǔ)。然而在大多數(shù)情況下,數(shù)據(jù)庫及其相關(guān)信息處理功能是作為一個完
14、整的信息系統(tǒng)開發(fā)項目的一部分而被開發(fā)的。</p><p> 1、系統(tǒng)開發(fā)生命周期</p><p> 指導(dǎo)管理信息系統(tǒng)開發(fā)項目的傳統(tǒng)過程是系統(tǒng)開發(fā)生命周期(SDLC)。系統(tǒng)開發(fā)生命周期是指一個組織中由數(shù)據(jù)庫設(shè)計人員和程序員組成的信息系統(tǒng)專家小組詳細說明、開發(fā)、維護和替換信息系統(tǒng)的全部步驟。這個過程比作瀑布是因為每一步都流到相鄰的下一步,即信息系統(tǒng)的規(guī)格說明是一塊一塊地開發(fā)出來的,每一塊的
15、輸出是下一塊的輸入。然而如圖所示,這些步驟并不是純線性的,每個步驟在時間上有所重疊(因此可以并行地管理步驟),而且當需要重新考慮先前的決策時,還可以回滾到前面某些步驟。(因而水可以在瀑布中倒流?。?lt;/p><p> 圖4對系統(tǒng)開發(fā)生命周期每一階段的目的和可交付的產(chǎn)品進行了簡明注解。系統(tǒng)開發(fā)生命周期的每一階段都包括與數(shù)據(jù)庫開發(fā)相關(guān)的活動,所以,數(shù)據(jù)庫管理的問題遍布整個系統(tǒng)開發(fā)過程。我們在圖5中重復(fù)了系統(tǒng)開發(fā)生命周
16、期的七個階段,并概述了每個階段常見的數(shù)據(jù)庫開發(fā)活動。請注意,系統(tǒng)開發(fā)生命周期的階段和數(shù)據(jù)庫開發(fā)步驟之間不存在一一對應(yīng)的關(guān)系,概念數(shù)據(jù)建模發(fā)生在兩個系統(tǒng)開發(fā)生命周期階段之間。</p><p><b> 企業(yè)建模 </b></p><p> 數(shù)據(jù)庫開發(fā)過程從企業(yè)建模(系統(tǒng)開發(fā)生命周期中項目論證和選擇階段的一部分)開始設(shè)定組織數(shù)據(jù)庫的范圍和一般內(nèi)容。企業(yè)建模發(fā)生在信息系
17、統(tǒng)規(guī)劃和其他活動期間,這些活動確定信息系統(tǒng)的哪個部分需要改變和加強并概述出全部組織數(shù)據(jù)的范圍。在這一步中,檢查當前數(shù)據(jù)庫和信息系統(tǒng),分析作為開發(fā)項目主體的業(yè)務(wù)領(lǐng)域的本質(zhì),用非常一般的術(shù)語描述每個信息系統(tǒng)在開發(fā)時所需要的數(shù)據(jù)。每個項目只有當它達到組織的預(yù)期目標時才可以進行下一步。</p><p> 概念數(shù)據(jù)建模對一個已經(jīng)開始的信息系統(tǒng)項目而言,概念數(shù)據(jù)建模階段分析信息系統(tǒng)的全部數(shù)據(jù)需求。它分為兩個階段。首先,它在
18、項目開始和規(guī)劃階段建立一張類似于圖1的圖。同時建立其他文檔來概述不考慮現(xiàn)存數(shù)據(jù)庫的情況下特定開發(fā)項目中所需的數(shù)據(jù)范圍。此時僅僅包括高層類別的數(shù)據(jù)(實體)和主要聯(lián)系。然后在系統(tǒng)開發(fā)生命周期的分析階段產(chǎn)生確定信息系統(tǒng)必須管理的全部組織數(shù)據(jù)的詳細數(shù)據(jù)模型,定義所有數(shù)據(jù)屬性,列出全部數(shù)據(jù)類別,表示數(shù)據(jù)實體間所有的業(yè)務(wù)聯(lián)系,確定描述數(shù)據(jù)完整性的全部規(guī)則。在分析階段,還要檢查概念數(shù)據(jù)模型(在后面也稱作概念模式)與用來解釋目標信息系統(tǒng)其他方面的模型類
19、別的一致性,例如處理步驟、處理數(shù)據(jù)的規(guī)則以及時間的時序。然而,即使是這樣詳細的概念數(shù)據(jù)模型也只是初步的,因為后續(xù)的信息系統(tǒng)生命周期中的活動在設(shè)計事務(wù)、報表、顯示和查詢時可能會發(fā)現(xiàn)遺漏的元素或錯誤。因此,經(jīng)常說到的概念數(shù)據(jù)建模是以一種自頂向下的方式完成的,它由業(yè)務(wù)領(lǐng)域的一般理解所驅(qū)動,而不是由特定的信息處理活動所驅(qū)動。</p><p><b> 2、邏輯數(shù)據(jù)庫設(shè)計</b></p>
20、<p> 邏輯數(shù)據(jù)庫設(shè)計從兩個角度進行數(shù)據(jù)庫開發(fā)。首先,將概念數(shù)據(jù)模型變換成基于關(guān)系數(shù)據(jù)庫理論的標準表示方法——關(guān)系。然后像設(shè)計信息系統(tǒng)的每個計算機程序(包括程序的輸入和輸出格式)那樣,對數(shù)據(jù)庫支持的事務(wù)、報表、顯示和查詢進行詳細的檢查。在這個所謂的自底向上的分析中,精確地驗證數(shù)據(jù)庫中需要維護的數(shù)據(jù)和在每個事務(wù)、報表等等中需要的那些數(shù)據(jù)的性質(zhì)。</p><p> 對于每個單獨的報表、事務(wù)等等的分
21、析都要考慮一個特定的、有限制的但是完全的數(shù)據(jù)庫視圖。當報表、事務(wù)等被分析時有可能根據(jù)需要而改變概念數(shù)據(jù)模型。尤其在大型的項目中,不同的分析人員和系統(tǒng)開發(fā)者的團隊可以獨立地工作在不同的程序或程序集中,他們所有工作的細節(jié)直到邏輯設(shè)計階段才可能會顯示出來。在這種情況下,邏輯數(shù)據(jù)庫設(shè)計階段必須將原始的概念數(shù)據(jù)模型和這些獨立的用戶視圖合并或集成到一個全面的設(shè)計中。在進行邏輯信息系統(tǒng)設(shè)計時也可以確定額外的信息處理需求,此時這些新的需求必須集成到前面
22、確定的邏輯數(shù)據(jù)庫設(shè)計中。</p><p> 邏輯數(shù)據(jù)庫設(shè)計的最后一步是根據(jù)為生成結(jié)構(gòu)良好的數(shù)據(jù)規(guī)格說明而確定的規(guī)則,將組合的、協(xié)商后的數(shù)據(jù)規(guī)格說明轉(zhuǎn)換成基本的或原子的元素。對當今的大部分數(shù)據(jù)庫而言,這些規(guī)則來自關(guān)系數(shù)據(jù)庫理論和稱作規(guī)范化的過程。這一步的結(jié)果是產(chǎn)生管理這些數(shù)據(jù)的、不引用任何數(shù)據(jù)庫管理系統(tǒng)的完整的數(shù)據(jù)庫描述圖。在完成邏輯數(shù)據(jù)庫設(shè)計后,開始確定詳細的計算機程序的邏輯和維護、報告數(shù)據(jù)庫內(nèi)容所需的查詢。&
23、lt;/p><p> 3、物理數(shù)據(jù)庫設(shè)計和定義</p><p> 物理數(shù)據(jù)庫設(shè)計和定義階段決定計算機存儲器(通常是磁盤)中數(shù)據(jù)庫的組織,定義數(shù)據(jù)庫管理系統(tǒng)的物理結(jié)構(gòu),概述處理事務(wù)的程序,產(chǎn)生期望的管理信息和決策支持的報表。本階段的目標是設(shè)計能夠有效、安全地管理所有數(shù)據(jù)處理的數(shù)據(jù)庫,因此物理數(shù)據(jù)庫設(shè)計需緊密結(jié)合物理信息系統(tǒng)其他方面的設(shè)計,包括程序、計算機硬件、操作系統(tǒng)和數(shù)據(jù)通信網(wǎng)絡(luò)。<
24、/p><p><b> 4、數(shù)據(jù)庫實現(xiàn)</b></p><p> 數(shù)據(jù)庫實現(xiàn)階段編寫、測試和安裝處理數(shù)據(jù)庫的程序。設(shè)計人員可以使用標準的編程語言(如COBOL、C或Visual Basic)、專用的數(shù)據(jù)庫處理語言(如SQL),或?qū)S玫姆沁^程化語言來編程,以產(chǎn)生固定格式的報表、顯示結(jié)果,可能還包括圖表。在實現(xiàn)階段,還要完成所有的數(shù)據(jù)庫文檔,培訓(xùn)用戶,為信息系統(tǒng)(和數(shù)據(jù)庫
25、)的用戶安裝程序。最后一步是利用現(xiàn)存的信息源(遺留應(yīng)用中的文件和數(shù)據(jù)庫以及現(xiàn)在需要的新數(shù)據(jù))加載數(shù)據(jù)。加載數(shù)據(jù)的第一步經(jīng)常是將數(shù)據(jù)從現(xiàn)存的文件和數(shù)據(jù)庫中轉(zhuǎn)到一種中間的格式(如二進制或文本文件),然后再將這些中間數(shù)據(jù)加載到新的數(shù)據(jù)庫中。最后,運行數(shù)據(jù)庫以及相關(guān)的應(yīng)用以供實際的用戶維護和檢索數(shù)據(jù)。在運轉(zhuǎn)期間,定期備份數(shù)據(jù)庫,并當數(shù)據(jù)庫損壞或受到影響時恢復(fù)數(shù)據(jù)庫。</p><p><b> 5、數(shù)據(jù)庫維護&
26、lt;/b></p><p> 數(shù)據(jù)庫在數(shù)據(jù)庫維護期間逐漸發(fā)展。在這一步,為了滿足變化的業(yè)務(wù)條件,為了改正數(shù)據(jù)庫設(shè)計的錯誤,或數(shù)據(jù)庫應(yīng)用的處理速度而增加、刪除或改變數(shù)據(jù)庫的結(jié)構(gòu)特征。當一個程序或計算機發(fā)生故障而使數(shù)據(jù)庫受到影響或損壞時也可能應(yīng)該重建數(shù)據(jù)庫。這一步通常是數(shù)據(jù)庫開發(fā)過程中最長的一步,因為它持續(xù)數(shù)據(jù)庫及相關(guān)應(yīng)用的整個生命周期,每次數(shù)據(jù)庫的發(fā)展都可看作一個簡略的數(shù)據(jù)庫開發(fā)過程,其中會出現(xiàn)概念數(shù)據(jù)建
27、模、邏輯和物理數(shù)據(jù)庫設(shè)計以及數(shù)據(jù)庫實現(xiàn)以處理提出的變化。</p><p> 數(shù)據(jù)庫開發(fā)的三層模式體系結(jié)構(gòu)</p><p> 在本文前面關(guān)于數(shù)據(jù)庫開發(fā)過程的解釋中提到了一個系統(tǒng)開發(fā)項目上建立的幾個不同的、但是相關(guān)的數(shù)據(jù)庫視圖或模型:</p><p> ● 概念模式(在分析階段建立)。</p><p> ● 外部模式或用戶視圖(在分析階段
28、和邏輯設(shè)計階段建立)。</p><p> ● 物理模式或內(nèi)部模式(在物理設(shè)計階段建立)。</p><p> 圖7描述了數(shù)據(jù)庫這三個視圖之間的關(guān)系,重要的是要記住,它們是同一個組織數(shù)據(jù)庫的視圖或模型。也就是說,每一個組織數(shù)據(jù)庫都有一個物理模式、一個概念模式以及一個或多個用戶視圖。因此,三層模式體系結(jié)構(gòu)用觀察同一數(shù)據(jù)集的不同方式定義數(shù)據(jù)庫。</p><p> 概念
29、模式 關(guān)于全部數(shù)據(jù)庫結(jié)構(gòu)的、與技術(shù)無關(guān)的規(guī)格說明。概念模式定義了整個數(shù)據(jù)庫而不涉及數(shù)據(jù)怎樣存儲在計算機的二級存儲器中。通常,概念模式用實體-聯(lián)系(E-R)圖或?qū)ο蠼7栠@樣的圖形格式來描述,我們把這種類型的概念模式稱為數(shù)據(jù)模型。另外,概念模式的規(guī)格說明作為元數(shù)據(jù)存儲在信息庫或數(shù)據(jù)字典中。</p><p> 物理模式 包括概念模式的數(shù)據(jù)怎樣存儲在計算機二級存儲器中的規(guī)格說明。對數(shù)據(jù)庫分析員和設(shè)計人員來說,重要的
30、是物理數(shù)據(jù)庫(物理模式)的定義,它提供了關(guān)于分配和管理存儲和訪問的數(shù)據(jù)所在的物理二級存儲器空間的數(shù)據(jù)庫技術(shù)的全部規(guī)格說明。</p><p> 數(shù)據(jù)庫開發(fā)和數(shù)據(jù)庫技術(shù)是以數(shù)據(jù)庫這三個模式間的區(qū)分為基礎(chǔ)的。數(shù)據(jù)庫開發(fā)項目的一個角色可能僅需處理與這三個視圖中的一個相關(guān)的工作。例如,一個初學(xué)者可能設(shè)計用于一個或多個程序的外部模式,而一個有經(jīng)驗的開發(fā)者將設(shè)計物理模式或概念模式。數(shù)據(jù)庫設(shè)計問題在不同的層次上有很大的不同。&
31、lt;/p><p> 三層數(shù)據(jù)庫定位體系結(jié)構(gòu)</p><p> 顯然,所有數(shù)據(jù)庫中的好的事情都和“三”有關(guān)!</p><p> 當設(shè)計一個數(shù)據(jù)庫時,你要選擇把數(shù)據(jù)存放在何處。這個選擇在物理數(shù)據(jù)庫設(shè)計階段作出。數(shù)據(jù)庫分為個人數(shù)據(jù)庫、工作組數(shù)據(jù)庫、部門數(shù)據(jù)庫、企業(yè)數(shù)據(jù)庫和因特網(wǎng)數(shù)據(jù)庫。個人數(shù)據(jù)庫經(jīng)常由最終用戶自己設(shè)計和開發(fā),僅僅由數(shù)據(jù)庫專家給予培訓(xùn)和咨詢幫助,它僅包含
32、最終用戶個人感興趣的數(shù)據(jù)。有時候,個人數(shù)據(jù)庫是從工作組數(shù)據(jù)庫或企業(yè)數(shù)據(jù)庫中提取出來的,這種情況下數(shù)據(jù)庫專家經(jīng)常編寫一些提取例程來創(chuàng)建本地數(shù)據(jù)庫。工作組數(shù)據(jù)庫和部門數(shù)據(jù)庫經(jīng)常被最終用戶、業(yè)務(wù)部門中的系統(tǒng)專家和中心數(shù)據(jù)庫專家一起開發(fā)。這些人員的協(xié)同工作是必須的,因為在設(shè)計共享的數(shù)據(jù)庫時必須權(quán)衡大量的問題:處理速度、易于使用、數(shù)據(jù)定義的差別和其他類似的問題。由于企業(yè)數(shù)據(jù)庫和因特網(wǎng)數(shù)據(jù)庫影響廣、規(guī)模大,所以,通常由在集中的數(shù)據(jù)庫開發(fā)小組中受過專
33、業(yè)培訓(xùn)的數(shù)據(jù)庫專家來開發(fā)。</p><p><b> 1.客戶層</b></p><p> 一個臺式計算機或筆記本也稱作表示層,它專門管理用戶系統(tǒng)界面和本地化數(shù)據(jù),在這一層上可以執(zhí)行Web腳本任務(wù)。</p><p> 2.服務(wù)器/Web服務(wù)器層</p><p> 處理HTTP協(xié)議、腳本任務(wù),執(zhí)行計算和提供數(shù)據(jù)訪問
34、,所以該層稱作處理服務(wù)層。</p><p> 3.企業(yè)服務(wù)器(小型機或大型機)層</p><p> 執(zhí)行復(fù)雜的計算和管理來自組織間多個數(shù)據(jù)源的數(shù)據(jù)的合并,也稱作數(shù)據(jù)服務(wù)層。</p><p> 在一個組織中,數(shù)據(jù)庫和信息系統(tǒng)分層的體系結(jié)構(gòu)與用于分布式計算的客戶/服務(wù)器體系結(jié)構(gòu)的概念相關(guān)??蛻?服務(wù)器體系結(jié)構(gòu)基于一個局域網(wǎng)環(huán)境,其中服務(wù)器上(稱作數(shù)據(jù)庫服務(wù)器或數(shù)據(jù)
35、庫引擎)的數(shù)據(jù)庫軟件執(zhí)行來自客戶工作站的數(shù)據(jù)庫命令,每個客戶的應(yīng)用程序?qū)W⒂谒鼈兊挠脩艚涌诠δ堋嶋H上,整個概念數(shù)據(jù)庫(以及訪問這些數(shù)據(jù)庫的應(yīng)用處理例程)作為一個分布式數(shù)據(jù)庫或單獨但是相關(guān)的物理數(shù)據(jù)庫而分布在本地的PC工作站、中間的服務(wù)器(工作組或部門)和一個中心服務(wù)器(部門或企業(yè))上。簡單地說,使用客戶/服務(wù)器體系結(jié)構(gòu)的原因是:</p><p> ● 它可以在多個處理器上同時處理同一個應(yīng)用,因此改善了應(yīng)用的響
36、應(yīng)時間和數(shù)據(jù)處理速度。</p><p> ● 它可以利用每個計算機平臺最好的數(shù)據(jù)處理特性(如PC的高級用戶界面與小型機和大型機的計算速度)。</p><p> ● 可以混合使用各種客戶端的技術(shù)(裝配Intel或Motorola處理器的個人計算機、網(wǎng)絡(luò)計算機、信息站等)和共享公共數(shù)據(jù)。另外,你可以在任何層改變技術(shù)而僅對其他層系統(tǒng)模塊的影響很小。</p><p>
37、 ● 能夠使處理靠近需處理的數(shù)據(jù)源,從而改進響應(yīng)時間并減少網(wǎng)絡(luò)通信量。</p><p> ● 它允許和鼓勵接受開放系統(tǒng)標準。</p><p> 對于數(shù)據(jù)庫開發(fā)而言,使用一個多層的客戶/服務(wù)器體系結(jié)構(gòu)開發(fā)數(shù)據(jù)庫最有意義之處在于易于將數(shù)據(jù)庫開發(fā)和維護數(shù)據(jù)庫的模塊與向最終用戶表示數(shù)據(jù)庫內(nèi)容的信息系統(tǒng)模塊分隔開。表示例程能夠使用像PowerBuilder、Java和Visual Basic這樣
38、的語言來提供易于使用的圖形化的用戶界面。通過中間件,表示例程能夠通過層間相互作用來訪問例程,該例程訪問所需數(shù)據(jù)并分析這些數(shù)據(jù)以形成所需信息。作為一個數(shù)據(jù)庫開發(fā)人員和程序員,你可以在這三層中的任何一層工作,開發(fā)必需的軟件。</p><p> C# and Database Development</p><p> The Introduce of C#</p><p&
39、gt; In one sense, C# can be seen as being the same thing to programming languages as .NET is to the Windows environment. Just as Microsoft has been adding more and more features to Windows and the Windows API over the p
40、ast decade, Visual Basic and C++ have undergone expansion. Although Visual Basic and C++ have ended up as hugely powerful languages as a result of this, both languages also suffer from problems due to the legacies of how
41、 they have evolved.</p><p> In the case of Visual Basic 6 and earlier, the main strength of the language was the fact that it was simple to understand and didn’t make many programming tasks easy, largely hi
42、ding the details of the Windows API and the COM component infrastructure from the developer. The downside to this was that Visual Basic was never truly object-oriented, so that large applications quickly become disorgani
43、zed and hard to maintain. As well as this, because Visual Basic’s syntax was inherited from early vers</p><p> C++, on the other hand, has its roots in the ANSI C++ language definition. It isn’t completely
44、ANSIcompliant for the simple reason that Microsoft first wrote its C++ compiler before the ANSI definition had become official, but it comes close. Unfortunately, this has led to two problems. First, ANSI C++ has
45、its roots in a decade-old state of technology, and this shows up in a lack of support for modern concepts (such as Unicode strings and generating XML documentation), and in some archaic</p><p> The result i
46、s that on Windows, the language has become a complete mess. Just ask C++ developers how many definitions for a string they can think of: char*, LPTSTR, string, CString (MFC version), CString (WTL version), wchar_t*, OLEC
47、HAR*, and so on.</p><p> Now enter .NET—a completely new environment that is going to involve new extensions to both languages. Microsoft has gotten around this by adding yet more Microsoft-specific keyword
48、s to C++, and by completely revamping Visual Basic into Visual Basic .NET, a language that retains some of the basic VB syntax but that is so different in design that we can consider it to be, for all practical purposes,
49、 a new language. </p><p> It’s in this context that Microsoft has decided to give developers an alternative—a language designed specifically for .NET, and designed with a clean slate. Visual C# .NET is the
50、result. Officially, Microsoft describes C# as a “simple, modern, object-oriented, and type-safe programming language derived from C and C++.” Most independent observers would probably change that to “derived from C, C++
51、, and Java.” Such descriptions are technically accurate but do little to convey the beauty or elegan</p><p> ? Full support for classes and object-oriented programming, including both interface and implemen
52、tation</p><p> inheritance, virtual functions, and operator overloading.</p><p> ? A consistent and well-defined set of basic types.</p><p> ? Built-in support for automatic gene
53、ration of XML documentation.</p><p> ? Automatic cleanup of dynamically allocated memory.</p><p> ? The facility to mark classes or methods with user-defined attributes. This can be useful for
54、 documentation</p><p> and can have some effects on compilation (for example, marking methods to be</p><p> compiled only in debug builds).</p><p> ? Full access to the .NET base
55、 class library, as well as easy access to the Windows API (if you</p><p> really need it, which won’t be all that often).</p><p> ? Pointers and direct memory access are available if required,
56、 but the language has been designed</p><p> in such a way that you can work without them in almost all cases.</p><p> ? Support for properties and events in the style of Visual Basic.</p>
57、;<p> ? Just by changing the compiler options, you can compile either to an executable or to a library of</p><p> .NET components that can be called up by other code in the same way as ActiveX contr
58、ols</p><p> (COM components).</p><p> ? C# can be used to write ASP.NET dynamic Web pages and XMLWeb services.</p><p> Most of the above statements, it should be pointed out, do
59、also apply to Visual Basic .NET and Managed C++. The fact that C# is designed from the start to work with .NET, however, means that its support for the features of .NET is both more complete, and offered within the conte
60、xt of a more suitable syntax than for those other languages. While the C# language itself is very similar to Java, there are some improvements: in particular, Java is not designed to work with the .NET environment.</p
61、><p> Before we leave the subject, we should point out a couple of limitations of C#. The one area the language is not designed for is time-critical or extremely high performance code—the kind where you really
62、 are worried about whether a loop takes 1,000 or 1,050 machine cycles to run through, and you need to clean up your resources the millisecond they are no longer needed. C++ is likely to continue to reign supreme among lo
63、w-level languages in this area. C# lacks certain key facilities needed for ex</p><p> database development process </p><p> Based on information engineering information systems planning databa
64、se is a source of development projects. These new database development projects is usually in order to meet the strategic needs of organizations, such as improving customer support, improve product and inventory manageme
65、nt, or a more accurate sales forecast. However, many more database development project is the bottom-up approach emerging, such as information system user needs specific information to complete their work, thus b</p&g
66、t;<p> Both the strategic needs or operational information needs of each database development projects normally concentrated in a database. Some projects only concentrated in the database definition, design and i
67、mplementation of a database, as a follow-up to the basis of the development of information systems. However, in most cases, the database and associated information processing function as a complete information systems de
68、velopment project was part of the development. </p><p> 1、 System Development Life Cycle </p><p> Guide management information system development projects is the traditional process of system
69、development life cycle (SDLC). System development life cycle is an organization of the database designers and programmers information system composed of the Panel of Experts detailed description, development, maintenance
70、 and replacement of the entire information system steps. This process is because Waterfall than for every step into the adjacent the next step, that is, the information system is a speci</p><p> Figure 4 on
71、 the system development life cycle and the purpose of each stage of the product can be delivered concise notes. The system development life cycle including each stage and database development-related activities, therefor
72、e, the question of database management systems throughout the entire development process. In Figure 5 we repeat of the system development life cycle stage of the seven, and outlines the common database at each stage of d
73、evelopment activities. Please note that the syste</p><p> Enterprise Modeling </p><p> Database development process from the enterprise modeling (system development life cycle stage of the pro
74、ject feasibility studies, and to choose a part), Organizations set the scope and general database content. Enterprise modeling in information systems planning and other activities, these activities determine which part o
75、f information systems need to change and strengthen the entire organization and outlines the scope of data. In this step, check the current database and information systems, d</p><p> Conceptual Data Modeli
76、ng </p><p> One has already begun on the Information System project, the concept of data modeling phase of the information systems needs of all the data. It is divided into two stages. First, it began the p
77、roject in the planning stage and the establishment of a plan similar to Figure 1. At the same time outlining the establishment of other documents to the existing database without considering the circumstances specific de
78、velopment projects in the scope of the required data. This category only includes high</p><p> 2、 Logical Database Design </p><p> Logical database design from two perspectives database develo
79、pment. First, the concept of data model transform into relational database theory based on the criteria that means - between. Then, as the design of information systems, every computer procedures (including procedures fo
80、r the input and output format), database support services, statements, and inquiries revealed that a detailed examination. In this so-called Bottom-up analysis, accurate verification of the need to maintain the database&
81、lt;/p><p> For each separate statements, services, and so on the analysis must take into account a specific, limited but complete database view. When statements, services, and other analysis might be necessary
82、 to change the concept of data model. Especially in large-scale projects, the different analytical systems development staff and the team can work independently in different procedures or in a centralized, the details of
83、 their work until all the logic design stage may be displayed. In these circumstan</p><p> Logical database design is based on the final step for the formation of good data specifications and determine the
84、rules, the combination, the data after consultation specifications or converted into basic atomic element. Most of today's database, these rules from the relational database theory and the process known as standardiz
85、ation. This step is the result of management of these data have not cited any database management system for a complete description of the database map. Logical database</p><p> 3、 Physical database design
86、and definition </p><p> Physical database design and definition phase decisions computer memory (usually disk) database in the organization, definition of According to the library management system for phys
87、ical structure, the procedures outlined processing services, produce the desired management information and decision support statements. The objective of this stage is to design an effective and safe management of all da
88、ta-processing database, the physical database design to closely integrate the information systems </p><p> 4、 Database Implementation </p><p> The database prepared by the realization stage, t
89、esting and installation procedures for handling databases. Designers can use the standard programming language (such as COBOL, C or Visual Basic), the dedicated database processing languages (such as SQL), or the process
90、 of the non-exclusive language programming in order to produce a statement of the fixed format, the result will be displayed, and may also include charts. In achieving stage, but also the completion of all the database f
91、iles, train</p><p> 5、 Database maintenance </p><p> During the database in the progressive development of database maintenance. In this step, in order to meet changing business conditions, in
92、 order to correct the erroneous database design, database applications or processing speed increase, delete or change the structure of the database. When a procedure or failure of the computer database affect or damage t
93、he database may also be reconstruction. This step usually is the longest in the database development process step, as it continued to databas</p><p> 3 database development of the three-tier architecture mo
94、del </p><p> In this article on the front of the database development process mentioned in the interpretation of a system development project on the establishment of the several different, but related datab
95、ase view or model: </p><p> ● conceptual model (in the analysis stage of the establishment). </p><p> ● external model or user view (in the analysis phase and the establishment of logical desi
96、gn phase). </p><p> ● physical model or internal model (in the physical design phase of the establishment). </p><p> Figure 7 describes the database view that the relationship between the thre
97、e, it is important to remember that they are the same organizations database view or model. In other words, each organization has a database of the physical model, a concept model and one or more users view. Therefore, t
98、he three-tier architecture model using the same data set observe the different ways definition database. </p><p> Concept models on the full database structure, has nothing to do with the technical specific
99、ations. Conceptual model definition do not involve the entire database data stored in the computer how the secondary memory. Usually, the conceptual model by entities - links (E-R) map or object modeling symbols such a g
100、raphical format to describe, we have this type of concept model called the data model. In addition, the conceptual model specification as a metadata stored in the database or data dictiona</p><p> Physical
101、models including conceptual model of how data stored in computer memory in the two specifications. Analysts and the database design is as important to the physical database (physical mode) definition, it provides informa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 外文文獻及翻譯-倉庫管理系統(tǒng)(wms)
- 財務(wù)管理外文文獻翻譯 企業(yè)財務(wù)管理研究外文文獻翻譯
- 在線圖書管理系統(tǒng)外文文獻原文及譯文
- 成本管理外文文獻及翻譯
- 在線圖書管理系統(tǒng)外文文獻原文及譯文
- 經(jīng)濟財務(wù)管理外文文獻英文文獻外文翻譯財務(wù)風(fēng)險管理
- 外文文獻翻譯
- 倉庫管理系統(tǒng)外文文獻
- 財務(wù)管理外文文獻及翻譯
- 外文文獻翻譯--數(shù)據(jù)庫管理系統(tǒng)的介紹
- 交通工程專業(yè)外文翻譯外文文獻英文文獻
- plc外文文獻翻譯
- 外文文獻翻譯.doc
- 外文文獻翻譯.doc
- 外文文獻翻譯.doc
- 外文文獻翻譯.pdf
- 外文文獻翻譯.doc
- 外文文獻翻譯.docx
- 外文文獻翻譯.doc
- 外文文獻翻譯.doc
評論
0/150
提交評論