版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
VS.NET開發(fā)基礎培訓(C#)U8客戶化開發(fā)及管理部馮優(yōu)波fengyb@62438429課程安排Unit1C/S架構與B/S架構Unit2示例演示Unit3軟件三層架構Unit4VS.NET快速開發(fā)工具Unit5示例演示總結Unit1C/S架構與B/S架構C/S架構介紹
C/S(Client/Server)架構,即大家熟知的客戶機和服務器結構。它是軟件系統(tǒng)體系結構,通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢,將任務合理分配到Client端和Server端來實現(xiàn),降低了系統(tǒng)的通訊開銷。目前很多應用軟件系統(tǒng)都是Client/Server形式的兩層結構,由于現(xiàn)在的軟件應用系統(tǒng)正在向分布式的Web應用發(fā)展,Web和Client/Server應用都可以進行同樣的業(yè)務處理,應用不同的模塊共享邏輯組件;因此,內部的和外部的用戶都可以訪問新的和現(xiàn)有的應用系統(tǒng),通過現(xiàn)有應用系統(tǒng)中的邏輯可以擴展出新的應用系統(tǒng)。這也就是目前應用系統(tǒng)的發(fā)展方向。
傳統(tǒng)的C/S體系結構雖然采用的是開放模式,在特定的應用中無論是Client端還是Server端都還需要特定的軟件支持。由于沒能提供用戶真正期望的開放環(huán)境,C/S結構的軟件需要針對不同的操作系統(tǒng)系統(tǒng)開發(fā)不同版本的軟件,加之產品的更新?lián)Q代十分快,已經很難適應百臺電腦以上局域網用戶同時使用。而且代價高,效率低。
C/S代表性產品:U8-ERPUnit1C/S架構與B/S架構B/S架構介紹
B/S(Browser/Server)架構即瀏覽器和服務器結構。它是隨著Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,用戶工作界面是通過WWW瀏覽器來實現(xiàn),極少部分事務邏輯在前端(Browser)實現(xiàn),但是主要事務邏輯在服務器端(Server)實現(xiàn),形成所謂三層3-tier結構。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本(TCO)。
以目前的技術看,局域網建立B/S結構的網絡應用,并通過Internet/Intranet模式下數(shù)據(jù)庫應用,相對易于把握、成本也是較低的。它是一次性到位的開發(fā),能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護數(shù)據(jù)平臺和管理訪問權限,服務器數(shù)據(jù)庫也很安全。特別是在JAVA和.NET等高級語言出現(xiàn)之后,B/S架構管理軟件更是方便、快捷、高效。B/S代表性產品:U9-ERP/NCUnit1C/S架構與B/S架構C/S和B/S之比較
C/S和B/S是當今世界開發(fā)模式技術架構的兩大主流技術。C/S是美國
Borland公司最早研發(fā),B/S是美國微軟公司研發(fā)。目前,這兩項技術以被世界各國所掌握,國內公司以C/S和B/S技術開發(fā)出產品也很多。這兩種技術都有自己一定的市場份額和客戶群。C/S和B/S對比:名稱C/SB/S應用范圍建立在局域網的基礎上的建立在廣域網的基礎上的硬件環(huán)境一般建立在專用的網絡上,小范圍里的網絡環(huán)境,局域網之間再通過專門服務器提供連接和數(shù)據(jù)交換服務建立在廣域網之上的,不必是專門的網絡硬件環(huán)境,例如電話上網,租用設備,信息自己管理,有比C/S更強的適應范圍,一般只要有操作系統(tǒng)和瀏覽器就行Unit1C/S架構與B/S架構C/S和B/S對比:名稱C/SB/S安全要求一般面向相對固定的用戶群,對信息安全的控制能力很強。一般高度機密的信息系統(tǒng)采用C/S結構適宜,可以通過B/S發(fā)布部分可公開信息。建立在廣域網之上,對安全的控制能力相對弱,面向是網絡的用戶群。程序架構程序可以更加注重流程,可以對權限多層次校驗,對系統(tǒng)運行速度可以較少考慮。對安全以及訪問速度的多重的考慮,建立在需要更加優(yōu)化的基礎之上。系統(tǒng)維護程序必須整體考察,處理出現(xiàn)的問題以及系統(tǒng)升級難,維護工作量大。發(fā)布的組件可以個別的更換,實現(xiàn)系統(tǒng)的無縫升級。系統(tǒng)維護開銷減到最小,用戶從網上自己下載安裝就可以實現(xiàn)升級。Unit1C/S架構與B/S架構C/S和B/S對比:名稱C/SB/S處理問題程序可以處理用戶面固定,并且在相同區(qū)域,安全要求高的需求,與操作系統(tǒng)相關,應該都是相同的系統(tǒng)。建立在廣域網上,面向不同的用戶群,分散地域,這是C/S無法作到的,與操作系統(tǒng)平臺關系最小。用戶接口多是建立在Window平臺上,表現(xiàn)方法有限,對程序員普遍要求較高。建立在瀏覽器上,有更加豐富和生動的表現(xiàn)方式與用戶交流,并且大部分難度減低,降低開發(fā)成本。信息流程序一般是典型的中央集權的機械式處理,交互性相對低。信息流向可變化,
B-B、
B-C、
B-G等信息流向的變化,更象交易中心。課程安排Unit1C/S架構與B/S架構Unit2示例演示Unit3軟件三層架構Unit4VS.NET快速開發(fā)工具Unit5示例演示總結Unit2示例演示VS2005創(chuàng)建C/S用戶登錄實例Unit2示例演示C/S用戶登錄實例在新建的窗體上加入相關控件,注意“密碼”框的屬性設置Unit2示例演示C/S用戶登錄代碼privatevoidbtnOK_Click(objectsender,EventArgse)
{………….//查詢sqlStringBuilderstrSql=newStringBuilder();strSql.Append("selectCount(*)asCCfromLogin");strSql.Append("whereUserName=@UserNameandPassWord=@PassWord");
//參數(shù)SqlParameter[]parameters={newSqlParameter("@UserName",SqlDbType.VarChar,50),newSqlParameter("@PassWord",SqlDbType.VarChar,50)};parameters[0].Value=this.txtUserName.Text;parameters[1].Value=this.txtPassWord.Text;//DB鏈接DbHelperSQL.connectionString="server=(local);uid=sa;pwd=ufida;Trusted_Connection=no;database=demo";
//返回結果集DataSetds=DbHelperSQL.Query(strSql.ToString(),parameters);
//處理結果if(ds.Tables[0].Rows.Count>0)
{if(int.Parse(ds.Tables[0].Rows[0]["CC"].ToString())>0)
{MessageBox.Show("登錄成功!");
}else
{MessageBox.Show("非法用戶!");
}
}else
{MessageBox.Show("非法用戶!");
}
Unit2示例演示MSSQLHELPERSqlHelper數(shù)據(jù)訪問組件是Microsoft提供的開源的數(shù)據(jù)訪問助手,其封裝很嚴密,且應用簡單,它是一組通用的訪問數(shù)據(jù)庫的代碼,在所有項目中都可以用,一般不需要修改。主要功能:(1)執(zhí)行不返回數(shù)據(jù)的T-Sql命令。例如增加、修改、刪除信息等。(2)返回一組數(shù)據(jù)。例如一個記錄集:DataSet等。(3)返回記錄指針DataReader。(4)緩存參數(shù)列表。在執(zhí)行一條語句時,可能有多個參數(shù),為了提高速度,將參數(shù)緩存。(5)讀取緩存的參數(shù)。Unit2示例演示VS2005創(chuàng)建B/S用戶登錄實例Unit2示例演示B/S用戶登錄實例在新建的頁面上加入相關控件,注意“密碼”框的屬性設置Unit2示例演示B/S用戶登錄代碼privatevoidbtnOK_Click(objectsender,EventArgse)
{………….//查詢sqlStringBuilderstrSql=newStringBuilder();strSql.Append("selectCount(*)asCCfromLogin");strSql.Append("whereUserName=@UserNameandPassWord=@PassWord");
//參數(shù)SqlParameter[]parameters={newSqlParameter("@UserName",SqlDbType.VarChar,50),newSqlParameter("@PassWord",SqlDbType.VarChar,50)};parameters[0].Value=this.txtUserName.Text;parameters[1].Value=this.txtPassWord.Text;//DB鏈接DbHelperSQL.connectionString="server=(local);uid=sa;pwd=ufida;Trusted_Connection=no;database=demo";
//返回結果集DataSetds=DbHelperSQL.Query(strSql.ToString(),parameters);
//處理結果if(ds.Tables[0].Rows.Count>0)
{if(int.Parse(ds.Tables[0].Rows[0]["CC"].ToString())>0)
{Page.ClientScript.RegisterStartupScript(Page.GetType(),"message","<scriptlanguage='javascript'defer>alert('登錄成功!');</script>");
}else
{
Page.ClientScript.RegisterStartupScript(Page.GetType(),“message”,“<scriptlanguage=‘javascript’defer>alert(‘非法用戶!');</script>");
}
}else
{MessageBox.Show("非法用戶!");
}
課程安排Unit1C/S架構與B/S架構Unit2示例演示Unit3軟件三層架構Unit4VS.NET快速開發(fā)工具Unit5示例演示總結Unit3軟件三層架構三層架構介紹
軟件系統(tǒng)最常用的一般會講到三層架構,其實就是將整個業(yè)務應用劃分為表示層、業(yè)務邏輯層、數(shù)據(jù)訪問層等,有的還要細一些,通過分解業(yè)務細節(jié),將不同的功能代碼分散開來,更利于系統(tǒng)的設計和開發(fā),同時為可能的變更提供了更小的單元,十分有利于系統(tǒng)的維護和擴展。
常見的三層架構基本包括如下幾個部分,如圖:數(shù)據(jù)訪問層DAL:用于實現(xiàn)與數(shù)據(jù)庫的交互和訪問,從數(shù)據(jù)庫獲取數(shù)據(jù)或保存數(shù)據(jù)到數(shù)據(jù)庫的部分。業(yè)務邏輯層BLL:業(yè)務邏輯層承上啟下,用于對上下交互的數(shù)據(jù)進行邏輯處理,實現(xiàn)業(yè)務目標。表示層UI:主要實現(xiàn)和用戶的交互,接收用戶請求或返回用戶請求的數(shù)據(jù)結果的展現(xiàn),而具體的數(shù)據(jù)處理則交給業(yè)務邏輯層和數(shù)據(jù)訪問層去處理。Unit3軟件三層架構復雜三層架構介紹
日常開發(fā)的很多情況下為了復用一些共同的東西,會把一些各層都用的東西抽象出來。如我們將數(shù)據(jù)對象實體和方法分離,以便在多個層中傳遞,例如稱為Model。一些共性的通用輔助類和工具方法,如數(shù)據(jù)校驗、緩存處理、加解密處理等,為了讓各個層之間復用,也單獨分離出來,作為獨立的模塊使用,例如稱為Common。
演變后的三層架構基本包括如下幾個部分,如圖:數(shù)據(jù)庫訪問類是對ADO.NET的封裝,封裝了一些常用的重復的數(shù)據(jù)庫操作。如微軟的企業(yè)庫SQLHelper.cs,DBUtility/DbHelperSQL等,為DAL提供訪問數(shù)據(jù)庫的輔助工具類。課程安排Unit1C/S架構與B/S架構Unit2示例演示Unit3軟件三層架構Unit4VS.NET快速開發(fā)工具Unit5示例演示總結Unit4VS.NET快速開發(fā)工具動軟.Net代碼生成器
動軟.Net代碼生成器是一款為C#數(shù)據(jù)庫程序員設計的自動代碼生成器,Codematic生成的代碼基于面向對象的思想和三層架構設計,結合了Petshop中經典的思想和設計模式,融入了工廠模式,反射機制等等一些思想。主要實現(xiàn)在對應數(shù)據(jù)庫中表的基類代碼的自動生成,包括生成屬性、添加、修改、刪除、查詢、存在性、Model類構造等基礎代碼片斷,支持不同3種架構代碼生成,使程序員可以節(jié)省大量機械錄入的時間和重復勞動,而將精力集中于核心業(yè)務邏輯的開發(fā)。Codematic同時提供便捷的數(shù)據(jù)庫管理功能和多項其他開發(fā)工作中常用到的輔助工具功能,可以很方便輕松地進行項目開發(fā),讓開發(fā)變得輕松而快樂!界面視圖:Unit4動軟.Net代碼生成器主要功能自動生成C#代碼:可以生成3種不同架構的代碼:簡單三層結構;基于工廠模式三層架構;自定義結構模版。
數(shù)據(jù)庫服務器管理:類似SQLServer2005的管理界面,方便平常在代碼編輯的時候想查看數(shù)據(jù)庫的信息,并且可以很直觀的查看字段類型,長度,主鍵,默認值等詳細信息,省去了在代碼和數(shù)據(jù)庫管理器之間的來回切換,方便快捷。自動生成存儲過程和SQL腳本。自動生成數(shù)據(jù)庫文檔。Web項目文件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 校長新年寄語祝福九年級(初三)同學
- 小學考試管理制度
- 買賣合同(供進口成套設備用)5篇
- 二零二五年度駕校應急處理與安全保障合同3篇
- 第17章-第1節(jié)-總需求曲線教材課程
- 《科幻小說賞析與寫作》 課件 第3、4章 “太空歌劇”的探索與開拓-《2001太空漫游》;“生命奇跡”的重述與復魅-《弗蘭肯斯坦》
- 二零二五年度網絡安全風險評估與維保服務合同3篇
- 2024年隴南市精神病康復醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點附帶答案
- 二零二五年度高端制造項目反擔保協(xié)議3篇
- 2024年陽江市人民醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點附帶答案
- 大氣喜慶迎新元旦晚會PPT背景
- 山區(qū)道路安全駕駛教案
- 常見浮游植物圖譜(1)
- 心電圖中的pan-tompkins算法介紹
- 羊絨性能對織物起球的影響
- 《跪跳起》教案 (2)
- 丙酮-水連續(xù)精餾塔的設計
- 菜鳥也上手:最最完整的Cool Edit Pro 圖文操作手冊
- 現(xiàn)金流量表附表的編制方法
- 新年寒假安全春節(jié)安全教育PPT課件(帶內容)
- 廣州證券責任公司員工薪酬管理辦法
評論
0/150
提交評論