Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 172 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
172
Dung lượng
2,37 MB
Nội dung
ỦY BAN NHÂN DÂN TỈNH HÀ NAM TRƯỜNG CAO ĐẲNG NGHỀ HÀ NAM GIÁO TRÌNH MƠ ĐUN: LẬP TRÌNH TRỰC QUAN NGHỀ: QUẢN TRỊ MẠNG MÁY TÍNH TRÌNH ĐỘ: CAO ĐẲNG (Ban hành kèm theo Quyết định số: 285/QĐ-CĐNHN Ngày 21 tháng 07 năm 2017 Hiệu trưởng trường Cao đẳng nghề Hà Nam) Hà Nam, năm 2017 TUYÊN BỐ BẢN QUYỀN Giáo trình sử dụng làm tài liệu giảng dạy nội trường Cao đẳng nghề Hà Nam Trường Cao đẳng nghề Hà Nam không cho phép cá nhân hay tổ chức sử dụng giáo trình với mục đích kinh doanh Mọi trích dẫn, sử dụng giáo trình với mục đích khác hay nơi khác phải đồng ý văn trường Cao đẳng nghề Hà Nam Dựa theo giáo trình này, sử dụng để giảng dạy cho trình độ ngành/ nghề khác nhà trường Lập trình Trực quan Trang LỜI GIỚI THIỆU Giáo trình Lập trình trực quan biên soạn từ đến nâng cao nhằm đáp ứng yêu cầu học tập học sinh, sinh viên có kiến thức lập trình, đồng thời giúp cho học sinh, sinh viên có tài liệu học tập, rèn luyện tốt khả lập trình, tạo tảng vững để giải toán thực tiễn Giáo trình khơng phù hợp cho người có kiến thức lập trình mà phù hợp cho người cần tham khảo để xây dựng sản phẩm hoàn thiện thực tiễn Nội dung giáo trình chia thành bài: Bài 1: Tổng quan C# Bài 2: Làm việc với Visual C#.Net Bài 3: Chương trình C# Bài 4: Nền tảng C# Bài 5: Các đối tượng điều khiển C# Bài 6: File registry Operation Bài 7: Truy xuất liệu với ADO.NET Bài 8: Xây dựng ứng dụng tổng hợp Khi biên soạn, tham khảo giáo trình tài liệu giảng dạy mơ đun số trường Cao đẳng, Đại học Đồng thời kết hợp với vấn đề thực tế thường gặp sản xuất, đời sống để giáo trình có tính thực tế cao, giúp cho người học dễ hiểu, dễ dàng lĩnh hội kiến thức Tôi hy vọng giáo trình bước đầu đạt yêu cầu nội dung vừa thích hợp với đối tượng học sinh, sinh viên trường thuộc hệ thống Cơ sở giáo dục nghề nghiệp Đồng thời mong sớm nhận ý kiến đóng góp, phê bình bạn đọc nội dung, chất lượng hình thức trình bày để giáo trình ngày hồn thiện Hà Nam, ngày … tháng … năm 2017 Tác giả biên soạn: Phạm Tất Thành Lập trình Trực quan Trang MỤC LỤC Bài Tổng quan C# 11 I Tổng quan NET Framework 13 Tổng quan Net Framework 13 Các lợi ích Net Framwork 14 Các ngôn ngữ Net Framework 14 Các thành phần Net Framwork 15 4.1 Common Languge Runtime 15 4.2 Net Framework Class Library 16 4.3 ADO NET: Data and XML 16 4.4 ASP NET: Web Forms and Services 17 II Giới thiệu Visual Studio NET 2008 18 Phát triển ứng dụng máy khách thông minh 19 Tạo ứng dụng Microsoft Office 19 Xây dựng ứng dụng Windows Vista 20 Quản lý liệu hiệu 21 Một cải thiện toàn diện cảm nhận chuyên gia phát triển phần mềm 21 Cho cảm nhận Web 22 Cải thiện quản lý chu trình phát triển ứng dụng (ALM) 22 Các lĩnh vực phát triển máy khách thông minh tập trung gồm có: Tích hợp giao diện người dùng 22 Cải thiện triển khai ứng dụng ClickOnce 23 10 Kiểu giao diện Office 2007 hỗ trợ cho ứng dụng C++ native 24 11 Các dịch vụ mức ứng dụng máy khách 24 12 Truy cập liệu kết nối không thường xuyên 24 13 Sự hỗ trợ tích hợp cho Microsoft® SQL Server™ 2008 Compact Edition 24 14 Tác dụng đòn bẩy SOA WCF ứng dụng di động 25 15 Xây dựng ứng dụng nhắm đến Microsoft Office SharePoint Server 25 16 Phát triển giải pháp luồng công việc UI dựa Office Microsoft 26 17 Triển khai ứng dụng dễ dàng an toàn 26 18 Dễ dàng bổ sung thêm cảm nhận dáng vẻ Windows Vista cho ứng dụng C++ native 26 19 Tăng khả cộng tác mã chế ngự mã tự nhiên 27 Lập trình Trực quan Trang 20 Quản lý liệu hiệu 27 III Các loại ứng dụng dùng C# 34 Ứng dụng Console Application 34 Ứng dụng Windows Application 34 Ứng dụng Class Library 34 Ứng dụng ASP.NET Website 35 Ứng dụng ASP.NET Web Service 35 IV Cấu trúc chương trình C# 2008 35 Lớp (The Class) 36 Phương thức hàm Main (The Main Method) 36 Không gian tên (The namespace) 37 Sử dụng thị (The using Directive) 37 Bài 2: Làm việc với Visual C#.NET 39 I Cửa sổ Solution 39 Tạo Solution 39 Thêm Project vào Sotution 40 Vị trí cửa sổ Solution Explorer 41 II Cửa sổ thuộc tính Project 42 III Cửa sổ Properties 43 IV Hộp công cụ (Toolbox) 44 V Kỹ thuật Refactor 46 Extract Method 47 Encapsulate Field 49 Extract Interface 49 Reorder Parameters 51 5.Remove Parameters 52 Rename 52 Promote Local Variable to Parameter 52 Generating Method Stub 53 Lập trình Trực quan Trang Bài Chương trình C# 55 I Biên dịch thực thi chương trình 55 Biên dịch 55 1.1 Biên dịch phần 55 1.2 Biên dịch toàn phần 56 Thực thi chương trình 57 2.1 Chế độ debug 57 2.2 Chế độ non-debug 57 II Giải thích khơng gian tên 58 Không gian tên 58 1.1 Namespace System.Windows.Forms 58 1.2 Namespace System.Data 59 Sử dụng Namespace từ khóa using 60 Bí danh Namespace 61 III Các dạng phương thức Main 62 Đa phương thức Main() 62 Khai báo hàm main() nhận thông số (Passing Arguments to Main()) 63 IV Chú thích chương trình C# 64 V Khai báo thị Region 65 Bài 4: Nền tảng C# 66 I Các kiểu liệu 67 Kiểu liệu xây dựng sẵn 68 Chọn kiểu liệu 69 Chuyển đổi kiểu liệu 71 Biến 72 4.1 Biến 72 4.2 Hằng 73 Kiểu liệt kê 74 Kiểu chuỗi ký tự 77 Định danh 78 Lập trình Trực quan Trang Biểu thức 78 Câu lệnh 79 II Phát biểu If 80 III Phát biểu Switch… 82 IV Phát biểu vòng lặp 84 Vòng lặp while 86 Vòng lặp while 87 Vòng lặp for 88 Câu lệnh lặp foreach 90 Câu lệnh nhảy break continue 91 V Try… catch 94 VI Sử dụng debugger 97 Debug C# với Visual Studio 2008 98 Add Debugging BreakPoint 99 Khi Debugger mở 99 Bắt đầu Debug 99 Chờ chương trình chạy đến BreakPoint 100 Sử dụng tính locals để xem giá trị biến cục 101 Step over statements 101 Thông tin thêm 102 Nếu cơng cụ khác khơng có trình Debug bạn nên làm gì? 102 Bài 5: Các đối tượng điều khiển C# 103 I Giới thiệu Windows Forms 103 II Forms định dạng Forms 104 Khái niệm Form 104 Các thuộc tính Form 104 Các kiện Form 105 III Điều khiển thông thường 106 Label 106 Lập trình Trực quan Trang 1.1 Khái niệm Label 106 1.2 Các thuộc tính Label 106 TextBox 106 2.1 Khái niệm TextBox 106 2.2 Các thuộc tính TextBox 107 2.3 Các kiện TextBox 107 Button 108 3.1 Khái niệm Button 108 3.2 Các thuộc tính Button 108 3.3 Các kiện Button 108 ComboBox 108 3.1 Khái niệm ComboBox 108 3.2 Các thuộc tính ComboBox 109 3.3 Các phương thức ComboBox 109 3.4 Các kiện ComboBox 110 CheckBox 110 5.1 Khái niệm CheckBox 110 5.2 Cácthuộc tính CheckBox 110 5.3 Các kiện CheckBox 110 RadioButton 111 6.1 Khái niệm RadioButton 111 6.2 Các thuộc tính RadioButton 111 6.3 Các kiện RadioButton 111 IV Điều khiển đặc biệt 112 MDI Form 112 1.1 Khái niệm MDI Form 112 1.2 Các thuộc tính MDI Form 112 V Điều khiển dùng để xây dựng Menu 112 MenuStrip 112 1.1 Khái niệm MenuStrip 112 1.2 Các thuộc tính MenuStrip 112 ToolStripMenuItem 113 2.1 Khái niệm ToolStripMenuItem 113 Lập trình Trực quan Trang 2.2 Các thuộc tính ToolStripMenuItem 113 2.3 Các kiện ToolStripMenuItem 113 Bài 6: File registry Operation 114 I Không gian tên System.IO 114 II Đối tượng Directory, DirectoryInfo 116 III Đối tượng File 123 IV Quản lý File 132 Bài 7: Truy xuất liệu với ADO.NET 139 I Giới thiệu lập trình sở liệu 139 II Đối tượng SQLConnection 142 Khái niệm 142 Thuộc tính 143 Phương thức 143 Ví dụ 144 III Đối tượng Oledbconnection 144 IV Đối tượng SQLCommand Oledbcommand 145 Khái niệm 145 Thuộc tính 145 Phương thức 146 Ví dụ 146 V Đối tượng SQLParameter Parameters Collection 147 VI Đối tượng SQLDatareader 147 Khái niệm 147 Thuộc tính 147 Phương thức 147 Bài 8: Xây dựng ứng dụng tổng hợp 149 Lập trình Trực quan Trang A Ứng dụng CALCULATOR 149 I Giới thiệu toán 149 II Phân tích thiết kế theo yêu cầu 149 Yêu cầu giao diện 149 Yêu cầu ý tưởng để xây dựng toán 150 III Thiết kế giao diện 151 IV Cài đặt mã lệnh 151 B Ứng dụng StudentsMnager 154 I Giới thiệu toán 154 Giới thiệu mô hình lớp 154 Trao đổi liệu Layer 157 II Phân tích thiết kế theo yêu cầu 158 Thiết kế sở liệu 158 Phân tích Thiết kế chương trình 159 2.1 Xây dựng đối tượng Data Transfer Object (DTO) 159 2.2 Xây dựng tầng Data Layer 159 2.3 Xây dựng tầng Business Layer 159 2.4 Xây dựng tầng GUI/ Presentation Layer 159 III Thiết kế giao diện 160 IV Cài đặt mã lệnh 160 Mã lệnh cho tệp tin SinhVienDTO.cs đối tượng Data Transfer Object 160 Mã lệnh cho tệp tin SinhVienDL.cs tầng Data Layer 162 Mã lệnh cho tệp tin SinhVienBL.cs KhoaBL.cs tầng Business Layer 165 Mã lệnh cho tệp tin frmSinhVien.cs tầng GUI/ Presentation Layer 167 Lập trình Trực quan Trang 10 II Phân tích thiết kế theo yêu cầu Thiết kế sở liệu - Thiết kế bảng Sinh viên đặt tên (tblSinhVien) hình - Thiết kế bảng Khoa đặt tên (tblKhoa) hình - Tạo mối quan hệ bảng Sinh viên với bảng Khoa hình Lập trình Trực quan Trang 158 Phân tích Thiết kế chương trình Chương trình thiết kế tổ chức theo mơ hình lớp (3-layer) 2.1 Xây dựng đối tượng Data Transfer Object (DTO) - Đối tượng DTO đối tượng trung gian dùng để vận chuyển liệu tầng với Để xây dựng đối tượng ta vào thông tin mà đối tượng ta muốn thao tác, thông tin thuộc tính bảng Sinh viên (tblSinhVien) - Ta tạo thư mục tệp tin, sau đặt tên hình 2.2 Xây dựng tầng Data Layer - Ta tạo thư mục tệp tin, sau đặt tên hình 2.3 Xây dựng tầng Business Layer - Ta tạo thư mục tệp tin, sau đặt tên hình 2.4 Xây dựng tầng GUI/ Presentation Layer - Ta tạo thư mục tệp tin, sau đặt tên hình Lập trình Trực quan Trang 159 III Thiết kế giao diện - Thiết kế giao diện cho form Sinh viên (frmSinhVien) hình IV Cài đặt mã lệnh Mã lệnh cho tệp tin SinhVienDTO.cs đối tượng Data Transfer Object using using using using System; System.Collections.Generic; System.Linq; System.Text; namespace QLSV.DataTranferObject { // Là đối tượng dùng để vận chuyển từ lớp đến lớp khác // Nó chứa thơng tin mà đối tượng ta muốn thao tác // Đối với ứng dụng quản lý thao tác bảng thực thể // Thực thể có thuộc tính // phương thức riêng (Methodes dùng để sử lý, dùng lớp này) class SinhVienDTO { #region "Variable-Khai báo biến thành phần" private string _MaSV; private string _TenSV; private DateTime _NgaySinh; private int _GioiTinh; private string _Tinh; private string _MaKhoa; Lập trình Trực quan Trang 160 private string _DiaChi; #endregion #region "Properties-Dùng chứa thông tin, tức để property nhận giá trị cho lớp khác ta khởi tạo ADO này" public string MaSV { get { return _MaSV; } set { _MaSV = value; } } public string TenSV { get { return _TenSV; } set { _TenSV = value; } } public DateTime NgaySinh { get { return _NgaySinh; } set { _NgaySinh = value; } } public int GioiTinh { get { return _GioiTinh; } set { _GioiTinh = value; } } public string Tinh { get { return _Tinh; } set { _Tinh = value; } } public string MaKhoa { get { return _MaKhoa; } set { _MaKhoa = value; } } public string DiaChi { get { return _DiaChi; } set { _DiaChi = value; } } #endregion phần" #region "Constructors-Tạo phương thức khởi tạo cho biến thành // Tạo phương thức khởi tạo không đối số public SinhVienDTO() { MaSV=""; TenSV=""; //NgaySinh=""; //GioiTinh=""; Tinh=""; MaKhoa=""; DiaChi=""; } // Tạo phương thức thành phần có tham số để truyền vào cho biến thành phần // tất tham số truyền vào cho biến thành phần Lập trình Trực quan Trang 161 public SinhVienDTO (string pMaSV,string pTenSV, DateTime pNgaySinh, int pGioiTinh, string pTinh, string pMaKhoa, string pDiaChi) { MaSV=pMaSV ; TenSV=pTenSV ; NgaySinh = pNgaySinh ; GioiTinh = pGioiTinh ; Tinh=pTinh ; MaKhoa = pMaKhoa; DiaChi=pDiaChi ; } #endregion } } Mã lệnh cho tệp tin SinhVienDL.cs tầng Data Layer using System; using System.Collections.Generic; using System.Linq; using System.Text; /// Khai báo thư viện để làm việc với CSDL using System.Data; using System.Data.SqlClient; using System.Windows.Forms; // Tầng giao tiếp với tầng khác thông qua DataTranferObject using QLSV.DataTranferObject; namespace QLSV.DataLayer { class SinhVienDL { #region "Variable" private SqlConnection conn; private SqlDataAdapter dtAdap; private DataTable dtTb; private SqlCommand cmd; private string _error; #endregion #region "Properties" public string Error { get { return _error; } set { _error = value; } } #endregion #region "Methods" public SinhVienDL() { string strConn = @"Data Source=notebook;Initial Catalog=QLSINHVIEN;Persist Security Info=True;User ID=sa;Password=sa"; conn = new SqlConnection(strConn); } ///Kết nối private bool Connect() { Lập trình Trực quan Trang 162 try { conn.Open(); } catch (Exception ex) { //MessageBox.Show("Lỗi _error = ex.Message; return false; } return true; " + ex.Message); } // Thêm sinh viên public bool Insert(SinhVienDTO svDTO) { //if (KiemTraTruocKhiLuu(sv)) //{ string sql = "INSERT INTO tblSinhVien (MaSV, TenSV, NgaySinh, GioiTinh, DiaChi, Tinh, MaKhoa) VALUES("; sql += "N'" + svDTO.MaSV + "', "; sql += "N'" + svDTO.TenSV + "', "; sql += "N'" + svDTO.NgaySinh.ToString("MM-dd-yyyy") + "', "; sql += "N'" + svDTO.GioiTinh + "', "; sql += "N'" + svDTO.DiaChi + "', "; sql += "N'" + svDTO.Tinh + "', "; sql += "N'" + svDTO.MaKhoa + "')"; if (conn.State == ConnectionState.Closed) if (!this.Connect()) return false; cmd = new SqlCommand(sql, conn); if (cmd.ExecuteNonQuery() > Sửa //svBL.Insert(svBL.svDTO); if (svBL.CheckExistVale("tblSinhVien", "MaSV", svBL.svDTO.MaSV)) //if (CheckExists(sv.MaSV)) { if (svBL.Update(svBL.svDTO)) // Load lại form Lập trình Trực quan Trang 170 frmSinhVien_Load(sender, e); MessageBox.Show("Trạng thái sửa liệu"); } else // Thêm { // Gọi hàm thêm từ lớp BusinessLogic mà ta viết if (svBL.Insert(svBL.svDTO)) //if (svDAL.ThemSV(sv)) // Load lại form frmSinhVien_Load(sender, e); MessageBox.Show("Ok lưu"); } } catch (Exception ex) { _error = ex.Message; } } private void btnSua_Click(object sender, EventArgs e) { EnableEditing(true); } private void btnXoa_Click(object sender, EventArgs e) { if (MessageBox.Show("Bạn có muốn xóa sinh viên: " + txtTenSV.Text + " không ?", "Hỏi", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { if (svBL.Delelte(txtMaSV.Text)) // Load lại form frmSinhVien_Load(sender, e); } } } } Lập trình Trực quan Trang 171 V Chạy thử Lập trình Trực quan Trang 172 ... GUI/ Presentation Layer 167 Lập trình Trực quan Trang 10 GIÁO TRÌNH MƠ ĐUN Tên mơ đun: Lập trình trực quan; Mã số mơ đun: MĐ 19; I Vị trí, tính chất, ý nghĩa vai trị mơ đun - Vị trí: mơ đun bố... dụng giáo trình với mục đích khác hay nơi khác phải đồng ý văn trường Cao đẳng nghề Hà Nam Dựa theo giáo trình này, sử dụng để giảng dạy cho trình độ ngành/ nghề khác nhà trường Lập trình Trực quan. .. hình thức trình bày để giáo trình ngày hồn thiện Hà Nam, ngày … tháng … năm 2017 Tác giả biên soạn: Phạm Tất Thành Lập trình Trực quan Trang MỤC LỤC Bài Tổng quan C# 11 I Tổng quan NET