Lập trình mạng trong NET FRAMEWORK - Chương 4
Số trang: 24
Loại file: pdf
Dung lượng: 728.77 KB
Lượt xem: 11
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tài liệu tham khảo giáo trình Lập trình mạng trong NET FRAMEWORK - Chương 3 Xây dựng ứng dụng nhiều lớp dành cho sinh viên khoa công nghệ thông tin
Nội dung trích xuất từ tài liệu:
Lập trình mạng trong NET FRAMEWORK - Chương 4 CHƯƠNG 4: XÂY D NG NG D NG NHI U L P4.1. Mô hình 2 l p (two tier), 3 l p (three tier) và n l p.Trư c ñây, ñ i v i các ph n m m có s d ng liên quan ñ n d li u, thư ng khi làmngư i l p trình thư ng tích h p vi c giao ti p v i ngư i s d ng , x lý r i ghi xu ngd li u trên cùng m t form (ñây là mô hình m t l p). Nhưng trong ki n trúc 3 l p (môhình 3 l p), ph i có vi c phân bi t r ch ròi gi a các l p này. Mô hình 3 l p có thñư c mô t như sau:- L p th nh t : L p giao di n (giao ti p v i ngư i s d ng) : ch thu n x lý vi c giaoti p v i ngư i s d ng, nh p xu t, … mà không th c hi n vi c tính toán, ki m tra, xlý, hay các thao tác liên quan ñ n cơ s d li u.- L p th hai : L p x lý : L p này chuyên th c hi n các x lý , ki m tra các ràngbu c, các qui t c ng x c a ph n m m , các ch c năng c t y u, … Vi c th c hi n nàyñ c l p v i cách thi t k cũng như cài ñ t giao di n. Thông tin cho l p này th c hi ncác x lý c a mình ñư c l y t l p giao di n.- L p th ba : L p d li u : L p này chuyên th c hi n các công vi c liên quan ñ n dli u. D li u có th l y t cơ s d li u (Access, SQL Server …) ho c t p tin (text,binary, XML …). ð i v i cơ s d li u, l p này th c hi n k t n i tr c ti p v i cơ sd li u và th c hi n t t c các thao tác liên quan ñ n cơ s d li u mà ph n m m c nthi t. ð i v i t p tin, l p này th c hi n vi c ñ c, ghi t p tin theo yêu c u c a ph nm m. Vi c th c hi n này do l p x lý g i. 94 Rõ ràng, v i mô hình này, các công vi c c a t ng l p là ñ c l p v i nhau. Vi cthay ñ i m t l p không làm thay ñ i các l p còn l i, thu n ti n hơn cho quá trìnhphát tri n và b o trì ph n m m. M t s lưu ý: Phân bi t vai trò Business Layer và khái ni m “x lý” M i Layer v n có x lý riêng, ñ c trưng c a Layer ñó ðôi khi vi c quy t ñ nh 1 x lý n m layer nào ch mang tính ch t tương ñ i Chúng ta cũng c n phân bi t khái ni m 3 tier và 3 layer: 3 tier là mô hình 3 l pv t lý còn 3 layer là mô hình logic. GUI Browser Presentation Local Web Physical view Logical view Web Application Web Business logic Business tier Data Access Data tier DataVí d minh h a: Xây d ng chương trình tính t ng 2 phân s theo ki n trúc 3 l p. Theo ñó dli u c a phân s ñư c ñ c lên t t p tin XML, k t qu sau khi ñư c tính s ñư c ghixu ng t p tin XML. Cách làm thông thư ng là m i vi c ñ u ñư c ñ y vào trong 1 form và x lýtr c ti p trong form ñó. Tuy nhiên, khi có s thay ñ i x y ra v giao di n, x lý, hayd li u thì vi c ch nh s a khá khó khăn. Do v y, vi c xây d ng theo ki n trúc 3 l p skh c ph c như c ñi m này. Ki n trúc c a chương trình như sau: 95Xây d ng l p th hi n phân s (TH_PHANSO)S d ng User Control ñ cài ñ t cho TH_PHANSO. Thêm User Control vào projectb ng cách ch n Project > Add User Control. ð t tên User Control ñó.Ta có TH_PHANSO.cs 96Do th hi n t s và th hi n m u s ñ u là TextBox do ñó trong l p TH_PHANSOc n thi t l p các properties là tuso và mauso có ki u int.public int tuso{ set{ this.txtTuSo.Text = value.ToString(); } get{ return int.Parse(this.txtTuSo.Text); }} public int mauso { set { this.txtMauSo.Text = value.ToString(); } get { return int.Parse(this.txtMauSo.Text); }}L p lưu tr phân s (LT_PHANSO)T p tin XML lưu tr có ñ nh d ng như sau: 5 3ð th c hi n vi c ñ c và ghi d li u XML ta s d ng DOM.Khai báo tuso và mauso ñ th c hi n vi c lưu trpublic int tuso;public int mauso;Th c hi n cài ñ t hàm kh i t o m c ñ nh v i tham s truy n vào là ñư ng d n fileXMLpublic LT_PHANSO(string strFilename){ // // TODO: Add constructor logic here // XmlDocument doc = LT_XML.DocTaiLieu(strFilename); if(doc == null) { tuso = 0; 97 mauso = 0; return; } XmlElement ele = doc.DocumentElement; tuso = int.Parse(ele.SelectSingleNode(Tu_so).InnerText); mauso = int.Parse(ele.SelectSingleNode(Mau_so).InnerText);}Th c hi n cài ñ t hàm ghi phân s v i tham s truy n vào là ñư ng d n file XMLpublic void GhiPhanSo(string strFilename){ XmlDocument doc = new XmlDocument(); XmlElement root = doc.CreateElement(PHANSO); doc.AppendChild(root); XmlElement ele_Tuso =root.OwnerDocument.CreateElement(Tu_so); ele_Tuso.InnerText = this.tuso.ToString(); root.AppendChild(ele_Tuso); XmlElement ele_Mauso =root.OwnerDocument.CreateElement(Mau_so); ele_Mauso.InnerText = this.mauso.ToString(); root.AppendChild(ele_Mauso); LT_XML.GhiTaiLieu(strFilename,doc);}L p lưu tr XML (LT_XML)Vi c load và save XmlDocument ñư c tách ra thành m t l p riêng là l p LT_XMLpublic static XmlDocument DocTaiLieu(string strFilename) { XmlDocument kq = new XmlDocument(); try { kq.Load(strFilename); } catch{ return null; } return kq;} public static void GhiTaiLieu(string strFilename, XmlDocument doc) { try{ doc.Save(strFilename); } catch{ }}L p x lý phân s (XL_PHANSO) ...
Nội dung trích xuất từ tài liệu:
Lập trình mạng trong NET FRAMEWORK - Chương 4 CHƯƠNG 4: XÂY D NG NG D NG NHI U L P4.1. Mô hình 2 l p (two tier), 3 l p (three tier) và n l p.Trư c ñây, ñ i v i các ph n m m có s d ng liên quan ñ n d li u, thư ng khi làmngư i l p trình thư ng tích h p vi c giao ti p v i ngư i s d ng , x lý r i ghi xu ngd li u trên cùng m t form (ñây là mô hình m t l p). Nhưng trong ki n trúc 3 l p (môhình 3 l p), ph i có vi c phân bi t r ch ròi gi a các l p này. Mô hình 3 l p có thñư c mô t như sau:- L p th nh t : L p giao di n (giao ti p v i ngư i s d ng) : ch thu n x lý vi c giaoti p v i ngư i s d ng, nh p xu t, … mà không th c hi n vi c tính toán, ki m tra, xlý, hay các thao tác liên quan ñ n cơ s d li u.- L p th hai : L p x lý : L p này chuyên th c hi n các x lý , ki m tra các ràngbu c, các qui t c ng x c a ph n m m , các ch c năng c t y u, … Vi c th c hi n nàyñ c l p v i cách thi t k cũng như cài ñ t giao di n. Thông tin cho l p này th c hi ncác x lý c a mình ñư c l y t l p giao di n.- L p th ba : L p d li u : L p này chuyên th c hi n các công vi c liên quan ñ n dli u. D li u có th l y t cơ s d li u (Access, SQL Server …) ho c t p tin (text,binary, XML …). ð i v i cơ s d li u, l p này th c hi n k t n i tr c ti p v i cơ sd li u và th c hi n t t c các thao tác liên quan ñ n cơ s d li u mà ph n m m c nthi t. ð i v i t p tin, l p này th c hi n vi c ñ c, ghi t p tin theo yêu c u c a ph nm m. Vi c th c hi n này do l p x lý g i. 94 Rõ ràng, v i mô hình này, các công vi c c a t ng l p là ñ c l p v i nhau. Vi cthay ñ i m t l p không làm thay ñ i các l p còn l i, thu n ti n hơn cho quá trìnhphát tri n và b o trì ph n m m. M t s lưu ý: Phân bi t vai trò Business Layer và khái ni m “x lý” M i Layer v n có x lý riêng, ñ c trưng c a Layer ñó ðôi khi vi c quy t ñ nh 1 x lý n m layer nào ch mang tính ch t tương ñ i Chúng ta cũng c n phân bi t khái ni m 3 tier và 3 layer: 3 tier là mô hình 3 l pv t lý còn 3 layer là mô hình logic. GUI Browser Presentation Local Web Physical view Logical view Web Application Web Business logic Business tier Data Access Data tier DataVí d minh h a: Xây d ng chương trình tính t ng 2 phân s theo ki n trúc 3 l p. Theo ñó dli u c a phân s ñư c ñ c lên t t p tin XML, k t qu sau khi ñư c tính s ñư c ghixu ng t p tin XML. Cách làm thông thư ng là m i vi c ñ u ñư c ñ y vào trong 1 form và x lýtr c ti p trong form ñó. Tuy nhiên, khi có s thay ñ i x y ra v giao di n, x lý, hayd li u thì vi c ch nh s a khá khó khăn. Do v y, vi c xây d ng theo ki n trúc 3 l p skh c ph c như c ñi m này. Ki n trúc c a chương trình như sau: 95Xây d ng l p th hi n phân s (TH_PHANSO)S d ng User Control ñ cài ñ t cho TH_PHANSO. Thêm User Control vào projectb ng cách ch n Project > Add User Control. ð t tên User Control ñó.Ta có TH_PHANSO.cs 96Do th hi n t s và th hi n m u s ñ u là TextBox do ñó trong l p TH_PHANSOc n thi t l p các properties là tuso và mauso có ki u int.public int tuso{ set{ this.txtTuSo.Text = value.ToString(); } get{ return int.Parse(this.txtTuSo.Text); }} public int mauso { set { this.txtMauSo.Text = value.ToString(); } get { return int.Parse(this.txtMauSo.Text); }}L p lưu tr phân s (LT_PHANSO)T p tin XML lưu tr có ñ nh d ng như sau: 5 3ð th c hi n vi c ñ c và ghi d li u XML ta s d ng DOM.Khai báo tuso và mauso ñ th c hi n vi c lưu trpublic int tuso;public int mauso;Th c hi n cài ñ t hàm kh i t o m c ñ nh v i tham s truy n vào là ñư ng d n fileXMLpublic LT_PHANSO(string strFilename){ // // TODO: Add constructor logic here // XmlDocument doc = LT_XML.DocTaiLieu(strFilename); if(doc == null) { tuso = 0; 97 mauso = 0; return; } XmlElement ele = doc.DocumentElement; tuso = int.Parse(ele.SelectSingleNode(Tu_so).InnerText); mauso = int.Parse(ele.SelectSingleNode(Mau_so).InnerText);}Th c hi n cài ñ t hàm ghi phân s v i tham s truy n vào là ñư ng d n file XMLpublic void GhiPhanSo(string strFilename){ XmlDocument doc = new XmlDocument(); XmlElement root = doc.CreateElement(PHANSO); doc.AppendChild(root); XmlElement ele_Tuso =root.OwnerDocument.CreateElement(Tu_so); ele_Tuso.InnerText = this.tuso.ToString(); root.AppendChild(ele_Tuso); XmlElement ele_Mauso =root.OwnerDocument.CreateElement(Mau_so); ele_Mauso.InnerText = this.mauso.ToString(); root.AppendChild(ele_Mauso); LT_XML.GhiTaiLieu(strFilename,doc);}L p lưu tr XML (LT_XML)Vi c load và save XmlDocument ñư c tách ra thành m t l p riêng là l p LT_XMLpublic static XmlDocument DocTaiLieu(string strFilename) { XmlDocument kq = new XmlDocument(); try { kq.Load(strFilename); } catch{ return null; } return kq;} public static void GhiTaiLieu(string strFilename, XmlDocument doc) { try{ doc.Save(strFilename); } catch{ }}L p x lý phân s (XL_PHANSO) ...
Tìm kiếm theo từ khóa liên quan:
mạng máy tính NET FRAMEWORk ứng dụng mạng xây dựng ứng dụng ứng dụng nhiều lớpGợi ý tài liệu liên quan:
-
Giáo án Tin học lớp 9 (Trọn bộ cả năm)
149 trang 246 0 0 -
Ngân hàng câu hỏi trắc nghiệm môn mạng máy tính
99 trang 235 1 0 -
47 trang 234 3 0
-
Đề cương chi tiết học phần Thiết kế và cài đặt mạng
3 trang 228 0 0 -
Giáo trình Hệ thống mạng máy tính CCNA (Tập 4): Phần 2
102 trang 227 0 0 -
Giáo trình Hệ thống mạng máy tính CCNA (Tập 4): Phần 1
122 trang 196 0 0 -
80 trang 195 0 0
-
122 trang 191 0 0
-
Giáo trình môn học/mô đun: Mạng máy tính (Ngành/nghề: Quản trị mạng máy tính) - Phần 1
68 trang 182 0 0 -
Giáo trình căn bản về mạng máy tính -Lê Đình Danh 2
23 trang 170 0 0