GIÁO TRÌNH LẬP TRÌNH WINDOWS 1

Tổng quan về giáo trình

Giáo trình Lập trình Windows 1 là tài liệu học tập chính thức thuộc nghề Lập trình máy tính, áp dụng cho trình độ đào tạo Cao đẳng và Trung cấp. Tài liệu được ban hành kèm theo Quyết định số 01/QĐ-CĐN ngày 04 tháng 01 năm 2016 của Hiệu trưởng Trường Cao đẳng nghề tỉnh Bà Rịa – Vũng Tàu.

Về vị trí trong chương trình đào tạo, mô đun này được bố trí sau khi người học đã hoàn thành các môn học chung, khối kiến thức kỹ thuật cơ sở, Cấu trúc dữ liệu và giải thuật, Lập trình hướng đối tượng, Cơ sở dữ liệu và Lập trình quản lý 1. Đây là học phần đầu tiên trong chuỗi ba mô đun chuyên sâu về môi trường Windows (gồm Lập trình Windows 1, Lập trình Windows 2 và Lập trình Windows 3), giữ vai trò thiết lập nền tảng ngôn ngữ và kỹ thuật phát triển ứng dụng trên nền tảng .NET Framework.

Mục tiêu đào tạo của giáo trình hướng đến việc trang bị cho học sinh – sinh viên:

  • Khả năng sử dụng ngôn ngữ Visual Basic .NET (VB.NET) và môi trường phát triển tích hợp Microsoft Visual Studio 2010.
  • Kỹ năng làm việc với các kiểu dữ liệu, câu lệnh điều khiển luồng, cấu trúc rẽ nhánh và vòng lặp.
  • Năng lực thiết kế giao diện đồ họa người dùng (GUI) bằng hệ thống Windows Forms và các điều khiển cơ bản, nâng cao.
  • Phương pháp phân tích, thiết kế kiến trúc phần mềm hướng đối tượng theo mô hình đa tầng.
  • Kỹ năng kết nối, truy xuất và cập nhật cơ sở dữ liệu qua ADO.NET để xây dựng hoàn chỉnh đồ án ứng dụng quản lý.

Cấu trúc giáo trình được thiết kế với tổng thời lượng 120 giờ, phân bổ qua 28 bài học bao gồm lý thuyết, thực hành tích hợp và đồ án môn học. Cách tiếp cận của tài liệu đi từ cấu trúc hệ thống, cú pháp lệnh cơ sở đến kỹ thuật giao diện, xử lý ngoại lệ và lập trình cơ sở dữ liệu thực nghiệm.


Nội dung kiến thức cốt lõi

Các chương và chủ đề chính

Nội dung giáo trình được cấu trúc thành các khối kiến thức trọng tâm theo tiến trình sư phạm từ cơ bản đến ứng dụng:

  1. Tổng quan về Microsoft Visual Studio .NET và .NET Framework: Trình bày bối cảnh lịch sử công nghệ trước khi Visual Studio .NET ra đời (so sánh với ASP, Java, Visual C++, Delphi, Visual Basic truyền thống); kiến trúc Next Generation Windows Services (NGWS); vai trò của Common Language Runtime (CLR), Common Intermediate Language (CIL/MSIL) và trình biên dịch Just-In-Time (JIT); giới thiệu môi trường phát triển tích hợp (IDE) Visual Studio 2010 gồm Title Bar, Menu Bar, 39 thanh công cụ (Toolbar), Hộp công cụ (Toolbox) chia thành 11 tab, Form Designer, Solution Explorer và Properties Window; cấu trúc Assembly, cơ chế phân cấp Namespace và từ khóa Imports.
  2. Nền tảng ngôn ngữ Visual Basic .NET: Khảo sát hệ thống kiểu dữ liệu hệ thống (Short, Integer, Long, Single, Double, Decimal, Byte, Char, String, Boolean, Date, Object); quy tắc định danh và phạm vi biến (Dim, Static, Private, Friend, Public); mảng tĩnh, mảng nhiều chiều (UBound, LBound) và mảng động (ReDim, ReDim Preserve); hệ thống toán tử số học, quan hệ và logic; các cấu trúc điều khiển gồm rẽ nhánh (If...Then...ElseIf, Select Case với toán tử IsTo), cấu trúc lặp (Do While/Until...Loop, While...End While, For...Next, For Each...Next).
  3. Cơ chế kiểm soát và xử lý ngoại lệ: Phân tích kỹ thuật xử lý lỗi cấu trúc với khối lệnh Try...Catch...Finally, mệnh đề lọc lỗi Catch When, lệnh phát sinh lỗi có chủ đích Err.Raise, lệnh thoát Exit Try; đối tượng Err cùng bảng tra cứu chi tiết hơn 30 mã lỗi thực thi (Runtime Error Codes như lỗi số 5, 6, 7, 9, 11, 13, 53, 71, 91...); đối chiếu cơ chế Try...Catch với kỹ thuật phòng vệ tiền điều kiện thông qua thư viện System.IO (File.Exists).
  4. Lập trình hướng đối tượng trong VB.NET: Hiện thực hóa các nguyên lý trừu tượng, đóng gói, kế thừa (Inherits); xây dựng thuộc tính, phương thức (Methods), sự kiện (Event); cách sử dụng các từ khóa tham chiếu ngữ cảnh Me, MyBase, MyClass; thiết kế kiến trúc phần mềm đa tầng gồm Business Logic Layer (BLL), Data Access Layer (DAL) và Data Access Components (DAC).
  5. Dự án đa Form và hệ thống điều khiển giao diện: Thiết kế thực đơn với MenuStrip, định cấu hình phím tắt và chỉ mục truy cập; khai thác các điều khiển nhập xuất (Button, Label, TextBox, CheckBox, RadioButton, GroupBox, ComboBox, ListBox, DateTimePicker, MonthCalendar, ListView, TreeView, PictureBox, ToolTip, NumericUpDown, TabControl, SplitContainer); tích hợp các hộp thoại chuẩn (OpenFileDialog, SaveFileDialog, FontDialog, ColorDialog); tổ chức Module chuẩn, biến toàn cục và phân định cơ chế truyền tham số cho thủ tục Sub, hàm Function (ByValByRef).
  6. Lập trình cơ sở dữ liệu với ADO.NET: Kết nối nguồn dữ liệu (Microsoft Access); cấu hình bộ điều phối dữ liệu OleDbDataAdapter; quản lý bộ nhớ đệm dữ liệu ngắt kết nối với DataSet; liên kết và điều hướng dữ liệu qua DataGridView, BindingSource, BindingNavigator; thực hiện các thao tác đọc, hiển thị, định dạng ô lưới và đồng bộ dữ liệu cập nhật trở lại cơ sở dữ liệu.
Tiến trình nội dung:
[Kiến trúc .NET & IDE VS 2010] 
       ↓
[Cú pháp, Kiểu dữ liệu, Cấu trúc điều khiển & Xử lý lỗi] 
       ↓
[Lập trình Hướng đối tượng & Kiến trúc đa tầng (BLL - DAL)] 
       ↓
[Hệ thống Windows Forms, Controls, Dialogs & Modules] 
       ↓
[Truy xuất và Đồng bộ dữ liệu ADO.NET] 
       ↓
[Triển khai Đồ án ứng dụng Quản lý]

Kiến thức nền tảng được xây dựng

  • Nguyên lý thực thi mã quản lý: Cơ chế chuyển đổi mã nguồn đa ngôn ngữ sang mã trung gian MSIL và quá trình biên dịch thời gian chạy JIT trên nền .NET Framework.
  • Mô hình lập trình hướng sự kiện (Event-Driven Programming): Mối liên hệ bản chất giữa thuộc tính (Properties), phương thức (Methods) và sự kiện (Events) của các thành phần giao diện đồ họa.
  • Kiến trúc phân tầng phần mềm: Nguyên tắc phân tách trách nhiệm giữa tầng giao diện người dùng, tầng xử lý logic nghiệp vụ (BLL) và tầng truy cập dữ liệu (DAL).
  • Mô hình dữ liệu ngắt kết nối (Disconnected Data Architecture): Cơ chế trừu tượng hóa cơ sở dữ liệu thông qua Data Adapter và DataSet trong ADO.NET.

Kỹ năng phát triển

  • Kỹ năng kỹ thuật: Cài đặt mã nguồn VB.NET chuẩn xác về cú pháp; thiết kế giao diện người dùng Windows Forms trực quan; cấu hình thuộc tính điều khiển tĩnh và động; cài đặt bẫy lỗi chi tiết theo mã định danh hệ thống; viết lệnh truy vấn và cập nhật bảng dữ liệu.
  • Kỹ năng phân tích: Phân tích yêu cầu bài toán nghiệp vụ; mô hình hóa đối tượng thực tế thành các lớp (Classes); thiết kế cấu trúc bảng cơ sở dữ liệu quan hệ; hoạch định luồng dữ liệu giữa các tầng kiến trúc.
  • Kỹ năng thực hành đồ án: Độc lập hiện thực hóa, kiểm thử và đóng gói các ứng dụng quản lý quy mô vừa và nhỏ (quản lý bán hàng, nhà hàng, khách sạn, quản lý điểm giáo dục).

Phương pháp giảng dạy và học tập

Phương pháp sư phạm

Giáo trình áp dụng mô hình giảng dạy "Tích hợp" (kết hợp lý thuyết giải thích nguyên lý với thực hành trực tiếp tại phòng máy tính). Trong tổng số 120 giờ:

  • Các bài lý thuyết thuần túy (Bài 1, Bài 2, Bài 8, Bài 28) chiếm thời lượng ngắn, tập trung vào giới thiệu tổng quan, quy tắc ngôn ngữ, giao nhiệm vụ đồ án và tổng kết nghiệm thu sản phẩm.
  • Phần lớn thời lượng (từ Bài 3 đến Bài 27) được tổ chức theo hình thức tích hợp (mỗi bài từ 3 đến 5 giờ), trong đó giảng viên thị phạm thao tác, phân tích cú pháp và học viên trực tiếp lập trình ứng dụng trên Visual Studio.

Bài tập và bài thực hành mẫu

Hệ thống bài tập trong giáo trình được chia thành các nhóm nhiệm vụ từ cơ bản đến phức tạp:

  • Ứng dụng tính toán cơ bản: Ứng dụng cộng hai số thực hiện ép kiểu với Convert.ToInt32 hoặc Integer.Parse, hiển thị kết quả ra Label; mở rộng các phép tính hiệu, tích, thương; ứng dụng ghép chuỗi họ tên bằng toán tử &.
  • Ứng dụng thuật toán và điều khiển luồng: Giải và biện luận phương trình bậc nhất $Ax + B = 0$; kiểm tra số nguyên tố bằng vòng lặp Do While; tính tổng dãy số nguyên với For...Next; xác định số ngày trong tháng dựa trên kiểm tra năm nhuận (dải giá trị 1900 đến 2099) bằng Select Case.
  • Ứng dụng xử lý dữ liệu và danh sách: Nhập danh sách lương từng tháng của nhân viên vào ListBox, tính tổng lương và lương trung bình động.
  • Xử lý ngoại lệ và tương tác tài nguyên: Tải tệp ảnh vào PictureBox từ ổ đĩa mềm A:\, bắt các mã lỗi Err.Number = 53 (Không tìm thấy File) và Err.Number = 7 (Hết bộ nhớ); thiết lập biến đếm giới hạn số lần thử tải tệp (dem <= 2) trước khi vô hiệu hóa nút bấm (Button1.Enabled = False).

Phương pháp kiểm tra và đánh giá

Đánh giá học phần được thiết kế qua các mốc định kỳ:

  • Kiểm tra thực hành quá trình: 4 bài kiểm tra thực hành độc lập (sau Bài 6 về cấu trúc điều khiển, Bài 7 về Hàm, Bài 15 về các điều khiển ComboBox/ListBox, Bài 27 về Cập nhật cơ sở dữ liệu).
  • Đánh giá đồ án môn học: Nghiệm thu kết quả đồ án ở Bài 28 dựa trên các tiêu chí: phân tích thiết kế lớp, giao diện đa Form hoàn chỉnh, cơ chế bắt lỗi và khả năng kết nối, thao tác dữ liệu thực tế.

Hướng dẫn tự học

  • Sinh viên cần thực hiện lại toàn bộ các đoạn mã ví dụ mẫu trong giáo trình trên Visual Studio 2010.
  • Tra cứu bảng mã lỗi chuẩn Err.Number khi gặp ngoại lệ runtime để hiểu rõ nguyên nhân lỗi hệ thống.
  • Thực hiện đầy đủ các bài tập tự rèn luyện cuối mỗi bài trước khi bước vào các nội dung tích hợp cơ sở dữ liệu.

Điểm nổi bật và cập nhật

Cập nhật công nghệ và môi trường

Giáo trình chuẩn hóa môi trường phát triển trên Microsoft Visual Studio 2010 và .NET Framework. Nội dung làm rõ sự khác biệt giữa cấu trúc lập trình Windows truyền thống (dựa trên các hàm Windows API lõi phức tạp) và kiến trúc .NET Framework hướng đối tượng toàn diện, nơi toàn bộ các hàm API lõi được thay thế bằng hệ thống thư viện lớp đồng nhất.

Hệ thống hóa kỹ thuật xử lý ngoại lệ

Thay vì chỉ giới thiệu cú pháp tổng quát, giáo trình đi sâu vào các khía cạnh kỹ thuật nâng cao:

  • Sử dụng mệnh đề lọc lỗi có điều kiện Catch When.
  • Bảng phân loại chuẩn hóa hơn 30 mã lỗi thực thi phổ biến của VB.NET.
  • Kỹ thuật tự kích hoạt lỗi bằng Err.Raise và điều khiển luồng với Exit Try.
  • So sánh trực tiếp giữa cơ chế bắt lỗi Try...Catch và kỹ thuật kiểm tra phòng vệ tiền điều kiện (File.Exists từ thư viện System.IO).
Tiêu chí Cơ chế Try...Catch Kỹ thuật phòng vệ tiền điều kiện
Cơ chế hoạt động Bao bọc khối mã có rủi ro, bắt ngoại lệ phát sinh khi thực thi Kiểm tra trạng thái hệ thống trước khi gọi thao tác (vd: File.Exists)
Thư viện / Cú pháp Try...Catch ex As Exception...Finally...End Try Lệnh rẽ nhánh If...Then kết hợp thư viện System.IO
Mục đích sử dụng Xử lý các lỗi bất ngờ về phần cứng, bộ nhớ, kết nối Ngăn ngừa các lỗi logic và trạng thái tài nguyên đã biết trước

Định hướng kiến trúc phần mềm chuyên nghiệp

Giáo trình không dừng lại ở việc lập trình kéo thả giao diện đơn thuần mà hướng dẫn sinh viên xây dựng mã nguồn theo mô hình phân lớp rõ ràng:

  • Tách biệt tầng giao diện (Form, Controls) với tầng xử lý nghiệp vụ (BLL).
  • Đóng gói các hàm kết nối và truy vấn CSDL vào tầng truy cập dữ liệu (DAL) và thành phần dữ liệu (DAC).
  • Chuẩn bị nền tảng trực tiếp để xây dựng các đồ án phần mềm quản lý ứng dụng thực tế.

Đối tượng sử dụng giáo trình

Sinh viên chuyên ngành

  • Học sinh, sinh viên theo học trình độ Cao đẳng và Trung cấp nghề Lập trình máy tính hoặc các chuyên ngành liên quan đến Công nghệ thông tin.
  • Người học cần nắm vững phương pháp phát triển phần mềm ứng dụng giao diện Desktop trên hệ điều hành Windows.

Điều kiện tiên quyết (Prerequisites)

Để tiếp thu hiệu quả nội dung giáo trình, người học cần hoàn thành các học phần:

  • Các môn học kỹ thuật cơ sở ngành công nghệ thông tin.
  • Cấu trúc dữ liệu và giải thuật.
  • Lập trình hướng đối tượng.
  • Cơ sở dữ liệu.
  • Lập trình quản lý 1.

Giảng viên và cán bộ đào tạo

  • Sử dụng làm tài liệu giảng dạy chính thức, làm căn cứ xây dựng giáo án lý thuyết và bài tập thực hành theo khung chương trình 120 giờ đã được phê duyệt.
  • Căn cứ vào các mốc kiểm tra định kỳ (Bài 6, 7, 15, 27) và quy trình thực hiện đồ án (Bài 8, 9, 10, 11, 28) để tổ chức đánh giá năng lực học viên.

Tự học và tra cứu

  • Là tài liệu tham khảo kỹ thuật cho lập trình viên mới bắt đầu tìm hiểu cú pháp Visual Basic .NET, kiến trúc Windows Forms, cách tổ chức mã nguồn đa tầng và phương thức tương tác CSDL Access qua ADO.NET.

Câu hỏi thường gặp

1. Giáo trình này phù hợp với đối tượng đào tạo nào?

Tài liệu được biên soạn phục vụ học sinh - sinh viên bậc Cao đẳng và Trung cấp nghề Lập trình máy tính, tuân thủ chương trình đào tạo theo Quyết định số 01/QĐ-CĐN ngày 04/01/2016 của Trường Cao đẳng nghề tỉnh BR - VT.

2. Cần chuẩn bị những kiến thức nền tảng nào trước khi học mô đun này?

Người học cần có kiến thức cơ bản về giải thuật, lập trình hướng đối tượng, thiết kế cơ sở dữ liệu quan hệ và đã hoàn thành học phần Lập trình quản lý 1.

3. Giáo trình này có điểm gì khác biệt so với các tài liệu lập trình VB.NET thông thường?

Giáo trình thiết kế theo kết cấu 28 bài học phân bổ chi tiết 120 giờ, kết hợp chặt chẽ giữa cú pháp ngôn ngữ, kỹ thuật xử lý ngoại lệ theo mã lỗi hệ thống, kỹ thuật phân tầng ứng dụng (BLL, DAL) và hệ thống bài kiểm tra định kỳ gắn liền với đồ án phần mềm quản lý thực tế.

4. Làm thế nào để tự học giáo trình này hiệu quả?

Người học nên cài đặt phần mềm Microsoft Visual Studio 2010, gõ và chạy thử trực tiếp các đoạn mã ví dụ từ Bài 1 đến Bài 2, hoàn thành toàn bộ bài tập lập trình cuối bài và thực hiện từng bước phân tích - thiết kế theo tiến trình đồ án môn học.

5. Có tài liệu bổ trợ nào tiếp nối sau giáo trình này không?

Đây là mô đun cơ sở đầu tiên. Sau khi hoàn thành, người học sẽ tiếp tục học hai mô đun nâng cao tiếp theo trong chương trình đào tạo là Lập trình Windows 2Lập trình Windows 3.


Kết luận

Giáo trình Lập trình Windows 1 (Trường Cao đẳng nghề tỉnh BR - VT) cung cấp một lộ trình đào tạo kỹ thuật hoàn chỉnh về phát triển ứng dụng Windows Forms với VB.NET và ADO.NET trên môi trường Visual Studio 2010.

Thông qua 120 giờ giảng dạy tích hợp và thực hành đồ án, tài liệu giúp người học hình thành tư duy lập trình cấu trúc, lập trình hướng đối tượng và kỹ năng xây dựng phần mềm quản lý đa tầng. Đây là nền tảng cốt lõi để học viên tiếp tục nghiên cứu các học phần chuyên sâu Lập trình Windows 2Lập trình Windows 3 trong chương trình đào tạo nghề Lập trình máy tính.