Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 171 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
171
Dung lượng
1,55 MB
Nội dung
Đề cương: Các Ví Dụ Nâng Cao Công Nghệ Phần Mềm Biên tập bởi: Khoa CNTT ĐHSP KT Hưng Yên Đề cương: Các Ví Dụ Nâng Cao Công Nghệ Phần Mềm Biên tập bởi: Khoa CNTT ĐHSP KT Hưng Yên Các tác giả: Khoa CNTT ĐHSP KT Hưng Yên Phiên bản trực tuyến: http://voer.edu.vn/c/6fa85991 MỤC LỤC 1. Lời mở đầu 2. Bài 1: Lập trình hướng thành phần (HTP) 2.1. Giới thiệu và Định nghĩa 2.2. Hợp lệ hoá dữ liệu. Ngôn ngữ vấn tin cơ sở dữ liệu. Kết nối cơ sở dữ liệu sử dụng công nghệ ADO. 2.2.1. Công cụ hợp lệ hoá dữ liệu trong Visual Basic 2.2.2. Ngôn ngữ vấn tin cơ sở dữ liệu (Structure Query Language) 2.2.3. Kết nối cơ sở dữ liệu sử dụng công nghệ ADO (ActiveX Data Objects) 2.2.4. Truy xuất dữ liệu sử dụng công nghệ ADO 3. Bài 2: Lập trình đa tầng 3.1. Giới thiệu 3.2. Kiến trúc đa tầng 3.3. Phát triển ứng dụng đa tầng 4. Bài 3: Lập trình mạng 4.1. Lập trình mạng 5. Bài 4: Kiến trúc hướng dịch vụ (webservice) 5.1. Kiến trúc hướng dịch vụ (webservice) 6. Bài 5: Thiết kế mẫu (Design Pattern) 6.1. Thiết kế mẫu (Design Pattern) 7. Bài 6: Công nghệ Hibernate 7.1. Công nghệ Hibernate 8. Bài 7: Công nghệ Ajax 8.1. Công nghệ Ajax 9. Bài 8: Mã nguồn mở 9.1. Mã nguồn mở 10. Tài liệu tham khảo Tham gia đóng góp 1/169 Lời mở đầu Công nghệ thông tin đang phát triển mạnh mẽ, để phát triển được những dụng trong thực tế thì việc sử dụng một số phương pháp và công nghệ phát triển phần mềm tiên là điều không thể thiếu đối với người phát triển. Module giới thiệu cho người học một số chủ đề nâng cao của Công nghệ phần mềm: Giới thiệu một số phương pháp phát triển phần mềm tiến, áp dụng cho những bài toán có qui mô lớn như phát triển phần mềm theo mô hình Client-Server; Component-Based; web-service, design pattern ; Giới thiệu một số công nghệ phát triển phần mềm mà tại thời điểm tương ứng đang được áp dụng trong các công ty phần mềm, như: Công nghệ Hibernate, Ajax, ; Trên cơ sở đó giao các chủ đề cụ thể cho từng sinh viên/ nhóm sinh viên tìm hiểu và cài đặt ứng dụng, sau đó trình bày trước lớp nhắm hiện thực hóa những phương pháp và công nghệ tiên tiến phát triển phần mềm. 2/169 Bài 1: Lập trình hướng thành phần (HTP) Giới thiệu và Định nghĩa Giới thiệu Lập trình hướng thành phần (HTP)- component-oriented programming Xuất phát từ lập trình hướng đối tượng, tư duy lập trình hướng thành phần (component- oriented programming) theo ý tưởng: • Giải quyết bài toán bằng cách xây dựng một tập các thành phần (component) có tính độc lập tương đối với nhau. Mỗi thành phần đảm nhiệm một phần công việc nhất định. • Sau đó, người ta ghép các thành phần với nhau để thu được một phần mềm thoả mãn một tập các yêu cầu xác định Với lập trình hướng thành phần, người ta có thể tiến hành lập trình theo phương pháp sau: • Xây dựng một thư viện các thành phần, mỗi thành phần thực hiện một công việc xác định. • Khi cần phát triển một phần mềm cụ thể, người ta chỉ cần chọn những thành phần có sẵn trong thư viện để ghép lại với nhau. Người lập trình chỉ phải phát triển thêm các thành phần mình cần mà chưa có trong thư viện. Phương pháp này có những ưu điểm rất lớn: • Lập trình viên có thể chia sẻ với nhau những thành phần mình đã xây dựng cho nhiều người khác dùng chung. Khi cần, lập trình viên có thể lắp ghép các thành phần có sẵn khác nhau để tạo thành các chương trình có chức năng khác nhau. Tất cả chỉ cần dựa trên công nghệ lắp ghép thành phần, tiết kiệm được rất nhiều công sức lập trình. Định nghĩa về lập trình HTP Một số định nghĩa về "lập trình hướng thành phần": Thành phần (component): là một phần không tầm thường của hệ thống, gần như độc lập và có thể thay thế được, giữ một chức năng rõ ràng trong hệ thống. Một component 3/169 có thể là một trong ba loại: source code component; runtime component; executable component. Lập trình hướng thành phần là kiểu lập trình có xu hướng chia hệ thống phần mềm thành những thành phần, giữ các chức năng khác nhau, mà khi phối hợp chúng ta sẽ hệ thống phần mềm đó. Lập trình hướng thành phần sử dụng chung nhiều quan niệm của "lập trình hướng đối tượng", nhưng hai khái niệm này là độc lập với nhau. 4/169 Hợp lệ hoá dữ liệu. Ngôn ngữ vấn tin cơ sở dữ liệu. Kết nối cơ sở dữ liệu sử dụng công nghệ ADO. Công cụ hợp lệ hoá dữ liệu trong Visual Basic Hợp lệ hoá dữ liệu là làm cho dữ liệu nhập vào đảm bảo tính hợp lệ. Hợp lệ hoá sử dụng sự kiện LostFocus và phương thức SetFocus Sự kiện LostFocus xảy ra mỗi khi một điều kiểm mất tiêu điểm. Ta có thể viết mã lệnh trong sự kiện này để kiểm soát xem dữ liệu khi dời khỏi điều kiểm đã hợp lệ chưa. Nếu như dữ liệu chưa hợp lệ ta có thể yêu cấu người nhập dữ liệu phải nhập lại. Như vậy ta phải dời tiêu điểm về điều kiểm. Khi đó ta sẽ sử dụng phương thức SetFocus để đặt lại tiêu điểm cho điều kiểm. Khung của thủ tục LostFocus như sau: Private Sub ControlName_ LostFocus() ‘ Mã Code End Sub Ví dụ: Private Sub TxtTen_ LostFocus() If len(TxtTen.Text)=0 then Msgbox “Tên không được rỗng !” TxtTen.SetFocus End If End Sub Hợp lệ hoá sử dụng sự kiện Validate Sự kiện Validate xảy ra trước khi người dùng có thể dịch chuyển tiêu điểm ra xa điều kiểm đó. Do đó ta có thể đặt mã lệnh để kiểm soát tính hợp lệ của dữ liệu trong sự kiện 5/169 Validate nhằm ngăn cản người dùng dịch chuyển tiêu điểm cho đến khi các tiêu chuẩn về hình dạng dữ liệu được thoả mãn. Khung của thủ tục Validate như sau: Private Sub ControlName_ Validate(Cancel As Boolean) ‘ Mã Code End Sub Nếu bạn xác lập Cancel là True thì người dùng sẽ không có khả năng dời khỏi điều kiểm này cho đến khi người đó nhận được đữ liệu đúng VD: Private Sub TxtTen_ Validate(Cancel As Boolean) If len(TxtTen.Text)=0 then Msgbox “Tên không được rỗng !” Cancel=True End If End Sub Trên thực tế VB cung cấp cho bạn một dòng lệnh để bảo vệ VB còn tạo ra biến cố Validate cho điều khiển dữ liệu mỗi khi bản ghi hiện hành sắp được thay đổi Ví dụ bằng phương pháp Move First hoặc trứơc khi xử lý phương pháp Update, Delete hoặc Close. Cú pháp cho thủ tục biến cố này như sau: Sub DataControlName_ Validate([Index As Integer,] Action As Integer, Save_ As Integer) End Sub ≅ Chú y: Bạn không nên đặt phương pháp bất kỳ trong biến cố Validate làm thay đổi bản ghi hiện hành. Kết quả sẽ là sự chuyển đổi biến cố vô tận. Các phương pháp truy cập dữ liệu bạn có thể đặt vào biến cố này chỉ gồm UpdateRecord, UpdateControls, bởi vì chúng đều không sinh ra biến cố Validate. Điều này cung cấp cho bạn phương pháp cập nhật cở dữ liệu hoặc các điều khiển gắn kết trong thủ tục biến cố đó 6/169 Trong đó tham số tuỳ chon Index được dùng nếu điều khiển dữ liệu là phần của mảng điều khiển một mảng điều khiển. Tham số Action được gởi bởi VB cho thủ tục biến cố và báo nguyên nhân thực sự để biến cố Validate được tạo ra. Dưới đây là danh sách các hằng kí hiệu được xây dựng trong VB khả dĩ cho sự kiện Validate Constant Value Description vbDataActionCancel 0 Cancel the operation when the Sub exits vbDataActionMoveFirst 1 MoveFirst method vbDataActionMovePrevious 2 MovePrevious method vbDataActionMoveNext 3 MoveNext method vbDataActionMoveLast 4 MoveLast method vbDataActionAddNew 5 AddNew method vbDataActionUpdate 6 Update operation (not UpdateRecord) vbDataActionDelete 7 Delete method vbDataActionFind 8 Find method vbDataActionBookmark 9 The Bookmark property has been set vbDataActionClose 10 The Close method vbDataActionUnload 11 The form is being unloaded Nếu bạn thay đổi tham số Action thành vbDataActionCancel thì VB sẽ xoá thao tác này trước khi rời khỏi thủ tục Sub. Ngoài ra nếu bạn thay đổi tham số Action sang một trong các giá trị khác, VB sẽ thực thi thao tác đó thay vì thao tác ban đầu khi thủ tục trải qua. Ví dụ, nếu thủ tục biến cố Validate đã được xảy ra do phương pháp MoveFirst và trong tiến trình của thủ tục bạn có dòng Action=vbDataActionMoveLast Thì VB sẽ dịch chuyển bản ghi hiện hành đến cuối bảng đó. Bạn chỉo có thể dùng khả năng này nếu các hành động đó là tương thích. VD: bạn không thể thay đổi tham số hành động MoveFirst sang tham số vbDataActionUnload mà không có lỗi. Tham số Save nhận hai giá trị True, False. Nếu thông tin bất kỳ trong các điều khiển gắn kết data-aware đã được thay đổi, tham số này là True. Điều đó cho bạn một phương pháp phân tích thông tin có trong điêug khiển gắn kết trước khi cập nhật cơ sở dữ liệu. Để xác định các điều khiển data-aware nào đã được thay đổi, bạn dùng tính chất DataChanged 7/169 của điều khiển đó. Tính chất này là True nếu nội dung của điều khiển đã được thay đổi và là False nếu không được thay đổi. Hợp lệ hoá sử dụng sự kiện KeyPress, KeyUp, KeyDown - Các sự kiện trên xảy ra trên các điều kiểm theo bảng sau: Sự kiện Xảy ra khi KeyPress Người sử dụng nhấn và thả một phím trên bàn phím trong khi một đối tượng đang trong tầm ngắm KeyDown Người sử dụng nhấn một phím trên bàn phím trong khi một đối tượng đang trong tầm ngắm KeyUp Người sử dụng thả một phím trên bàn phím trong khi một đối tượng đang trong tầm ngắm Cú pháp của các biến cố này như sau: Private Sub ControlName_ KeyPress(KeyAscii As Integer) End Sub Private Sub ControlName_ KeyDown(KeyCode As Integer, Shift As Integer) End Sub Private Sub ControlName_ KeyUp(KeyCode As Integer, Shift As Integer) End Sub Trong đó tham số KeýyAscii và KeyCode là mã ASCII của kýy tự vừa được nhấn. Tham số Shift có thể nhận các giá trị sau Constant Value Description vbShiftMask 1 SHIFT key bit mask. VbCtrlMask 2 CTRL key bit mask. VbAltMask 4 ALT key bit mask. 8/169 [...]... liệu sử dụng công nghệ ADO (ActiveX Data Objects) Công nghệ Open Database Connectivity (ODBC) ODBC là công nghệ Windows cho phép sử dụng client nối với cơ sở dữ liệu từ xa Lưu trú trên máy Cilent, ODBC tìm cách làm cho nguồn dữ liệu quan hệ trở thành tổng quát đối với ứng dụng Client Điều này có nghĩa là ứng dụng Client không cần quan tâm kiểu dữ liệu cơ sở mà nó đang nối là gì Bởi vì đây là công nghệ. .. trọng Các Recordset thể hiện như là các đối tượng, về khái niệm tương tự như là các đối tượng giao diện người sử dụng Cũng như các đói tượng khác trong VB các đối tượng Recordset có các thuộc tính và phương thức riêng Ta có thể lập trình để tạo và sử dụng các Recordset theo một trong ba thư viện truy cập dữ liệu: • Các đối tượng truy cập dữ liệu (DAO) • Các đối tượng truy cập dữ liệu từ xa (RDO) • Các. .. liệu phổ biến nhất hiện nay Một cơ sở dữ liệu bao gồm: • Chứa dữ liệu trong các bảng, đựơc cấu tạo bởi các dòng còn gọi là các mẩu tin,và cột còn gọi là các trường • Cho phép lấy về (hay truy vấn) các tập dữ liệu con từ các bảng • Cho phép nối các bảng với nhau cho mục điứch truy cập các mẩu tin liên quan đến nhau chứa trong các bảng khác nhau Bộ máy (Engine) cơ sở dữ liệu là gì? Chức năng cơ bản của... cho công nghệ dữ liệu mới OLE DB 33/169 Truy xuất dữ liệu sử dụng công nghệ ADO Truy xuất dữ liệu sử dụng điều khiển ADO Data Control Tạo một ứng dụng dừng điều khiển ADO Data rất đơn giản Ta chỉ quan tâm đến việc duyệt cơ sở dữ liệu, không cần quan tâm đến lập trình Thông qua hai thuộc tính ConnectionString và RecordSource của điều khiển Data, sau đó ràng buộc điều khiển với giao diện người sử dụng Các. .. bằng công việc tạo chuỗi kết nối ODBC gồm các phần tử thông dụng: UID Tên login của người sử dụng PID Mật khẩu của người sử dụng DSN Tên nguồn dữ liệu ta tạo trong trình Quản lý Điều khiển ODBC SRIVER Điều khiển ODBC mà ta muốn dùng DATABASE Tên cơ sở dữ liệu mà ta muốn kết nối APP Tên ứng dụng kết nối với CSDL 30/169 LANGUAGE Ngôn ngữ quốc tế được dùng bởi Server SERVER Tên của SQL Server mà ứng dụng... nối đến Ta không nhất thiết phải dùng toàn bộ các tham biến Ví dụ: DSN=DSNQLBH; UID=hue;PWD=minhhue Nếu không cung cấp tên login và mật khẩu ngời sử dụng vào trong chuỗi kết nối, khi ứng dụng nối đến server, trình điều khiển ODBC sẽ hiển thị hộp thoại yêu cầu ngời sử dụng cung cấp thông tin vào Thi hành phơng thức EstablishConnection để thi hành kết nối Ví dụ: Set rdo = New rdoConnection rdo.Connect... cung cấp bởi một bộ máy cơ sở dữ liệu, là hệ thống chương trình quản lý cách thức chứa và trả về dữ liệu Như bộ máy cơ sở dữ liệu Microsoft Jet, Microsoft SQL Server… Bảng và trường Các cơ sở dữ liệu được cấu tạo từ các bảng dừng thể hiện các phân nhóm dữ liệu Ví dụ nếu ta tạo một cơ sở dữ liệu để quản lýy các tài khoản trong công việc kinh doanh, ta phải tạo một bảng cho khách hàng, một bảng cho hoá... Ucase(rs!maloai) = Ucase("mb") then Rs.Edit Rs!tenloai = “Máy bay moi” Rs.Update End if Rs.MoveNext Loop rs.Close End sub Công nghệ Remote Data Access Object (RDO) + Định cấu hình và sử dụng ODBC ODBC là một công nghệ của Windows cho phép ứng dụng Client kết nối với CSDL từ xa ODBC gồm 3 phần: 1 Trình quản lý điều khiển (Driver manager) 2 Một hay nhiều trình điều khiển (Driver) 26/169 3 Một hay nhiều nguồn... môi trường lập trình Visual Basic 6.0, với DAO ta có thể thi hành các câu truy vấn, cập nhật giá trị, trong các bảng CSDL và tạo cấu trúc CSDL bao gồm các bảng, các câu truy vấn chứa sẵn và mối quan hệ giữa các bảng Mô hình đối tượng DAO khá phức tạp với hàng trăm yếu tố, hàng tá kiểu tập hợp chứa rất nhiều đối tượng xử lý CSDL Thông qua các tập hợp sở hữu bởi đối tượng DataBase, ta có thể thao tác trên... Delete, phương thức Refresh Fields Các trường hiện có trong một cấu trúc dữ liệu Thuộc tính Count, Append, Delete, phương thức Refresh Groups Nhoms bảo mật sở hữu bởi CSDL (tham khảo phần CSDL nhiều người sử dụng) Thuộc tính Count, Append, Delete, phương thức Refresh Users Danh sách người sử dụng xác định bởi tính năng bảo mật CSDL (tham khảo phần CSDL nhiều người sử dụng) Thuộc tính Count, Append, Delete, . Đề cương: Các Ví Dụ Nâng Cao Công Nghệ Phần Mềm Biên tập bởi: Khoa CNTT ĐHSP KT Hưng Yên Đề cương: Các Ví Dụ Nâng Cao Công Nghệ Phần Mềm Biên tập bởi: Khoa CNTT ĐHSP KT Hưng Yên Các tác. thiệu một số công nghệ phát triển phần mềm mà tại thời điểm tương ứng đang được áp dụng trong các công ty phần mềm, như: Công nghệ Hibernate, Ajax, ; Trên cơ sở đó giao các chủ đề cụ thể cho. người học một số chủ đề nâng cao của Công nghệ phần mềm: Giới thiệu một số phương pháp phát triển phần mềm tiến, áp dụng cho những bài toán có qui mô lớn như phát triển phần mềm theo mô hình Client-Server;