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

Giáo trình Lập trình trực quan (Mã số mô đun: MĐ 19) là tài liệu đào tạo chuyên môn thuộc nghề Quản trị mạng máy tính ở trình độ Cao đẳng, được ban hành kèm theo Quyết định số 285/QĐ-CĐNHN ngày 21 tháng 07 năm 2017 của Hiệu trưởng Trường Cao đẳng nghề Hà Nam, do tác giả Phạm Tất Thành biên soạn. Trong chương trình đào tạo, mô đun này được bố trí giảng dạy sau khi sinh viên đã hoàn thành các môn học chung và các môn học cơ sở chuyên ngành.

Về mục tiêu học tập (learning outcomes), giáo trình trang bị cho người học:

  • Kiến thức: Mô tả vai trò của công nghệ lập trình trực quan; phân tích và xác định yêu cầu nhiệm vụ của chương trình; nhận diện đối tượng điều khiển, cấu trúc dữ liệu; nắm vững cú pháp, biến, hằng và quy trình sử dụng các câu lệnh trong ngôn ngữ C#.
  • Kỹ năng: Sử dụng các công cụ trợ giúp và gỡ lỗi trong môi trường Visual Studio; khai thác các thuộc tính (properties), phương thức (methods) và sự kiện (events) của các đối tượng điều khiển; thiết kế giải pháp kỹ thuật và cài đặt hoàn chỉnh các phần mềm ứng dụng thực tế.
  • Năng lực tự chủ và trách nhiệm: Hình thành khả năng làm việc độc lập hoặc phối hợp nhóm, có năng lực lập kế hoạch, giám sát và đánh giá chất lượng sản phẩm phần mềm sau khi hoàn thiện.

Giáo trình được cấu trúc với tổng thời lượng 90 giờ (bao gồm 26 giờ lý thuyết, 60 giờ thực hành/thí nghiệm/thảo luận và 4 giờ kiểm tra), tiếp cận từ nền tảng cú pháp C#, công cụ phát triển Visual Studio 2008 đến kỹ thuật lập trình giao diện Windows Forms, xử lý tệp/registry, truy xuất cơ sở dữ liệu qua ADO.NET và xây dựng ứng dụng hoàn chỉnh theo mô hình kiến trúc phân tầng.


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

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

Nội dung giáo trình được tổ chức thành 8 bài học có tính phát triển lũy tiến:

  • Bài 1: Tổng quan về C# (5 giờ lý thuyết): Giới thiệu tổng quan về .NET Framework, cấu trúc Common Language Runtime (CLR), thư viện Base Class Library, các phân hệ Data & XML, Web Forms & Services. Tổng quan về môi trường Microsoft Visual Studio 2008; phân loại 5 dạng ứng dụng cơ bản gồm Console Application, Windows Application, Class Library, ASP.NET Website và ASP.NET Web Service; cấu trúc chương trình C# cơ bản (lớp, phương thức Main, không gian tên namespace, chỉ thị using).
  • Bài 2: Làm việc với Visual C#.Net (3 giờ lý thuyết, 2 giờ thực hành): Khai thác giao diện môi trường tích hợp (IDE); quản lý cấu trúc Solution Explorer, Project, tệp tin; sử dụng cửa sổ thuộc tính (Properties Window) và bảng điều khiển Toolbox với cơ chế sinh mã tự động (Auto Generating Code); thực hành các kỹ thuật tái cấu trúc mã nguồn (Refactor) như Extract Method, Encapsulate Field, Extract Interface, Promote Local Variable to Parameter, Generating Method Stub.
  • Bài 3: Chương trình C# (2 giờ lý thuyết, 3 giờ thực hành): Quy trình biên dịch từng phần, biên dịch toàn phần và thực thi ở chế độ non-debug; cách khai báo không gian tên lồng nhau; các dạng khai báo phương thức Main() có tham số (Passing Arguments to Main()) hoặc đa phương thức Main(); cú pháp ghi chú thích và chỉ thị phân vùng mã nguồn #region.
  • Bài 4: Nền tảng của C# (3 giờ lý thuyết, 7 giờ thực hành): Kiểu dữ liệu xây dựng sẵn, kỹ thuật ép kiểu/chuyển đổi dữ liệu; khai báo biến, hằng, kiểu liệt kê (enum), chuỗi ký tự (string); cấu trúc điều khiển rẽ nhánh (if, switch), vòng lặp (while, do-while, for, foreach), lệnh nhảy (break, continue); phương pháp gỡ lỗi chương trình sử dụng BreakPoint, cửa sổ giám sát biến cục bộ (Locals) và bước thực thi (Step Over).
  • Bài 5: Các đối tượng điều khiển của C# (4 giờ lý thuyết, 10 giờ thực hành, 1 giờ kiểm tra): Thiết kế giao diện Windows Forms và MDI Form; thiết lập thuộc tính, phương thức và sự kiện cho các điều khiển thông thường gồm Label, TextBox, Button, ComboBox, CheckBox, RadioButton; xây dựng hệ thống thanh thực đơn với MenuStripToolStripMenuItem.
  • Bài 6: File và registry Operation (2 giờ lý thuyết, 3 giờ thực hành): Thao tác hệ thống vào/ra thông qua không gian tên System.IO; quản lý thư mục và tập tin bằng các đối tượng Directory, DirectoryInfo, File; truy xuất và chỉnh sửa khóa Registry hệ thống.
  • Bài 7: Truy xuất dữ liệu với ADO.NET (4 giờ lý thuyết, 10 giờ thực hành, 1 giờ kiểm tra): Kiến trúc kết nối cơ sở dữ liệu; sử dụng các đối tượng kết nối SqlConnection, OleDbConnection; khởi tạo đối tượng truy vấn SqlCommand, OleDbCommand; truyền tham số với SqlParameter / Parameters Collection; duyệt dữ liệu thông qua đối tượng SqlDataReader.
  • Bài 8: Xây dựng ứng dụng tổng hợp (3 giờ lý thuyết, 25 giờ thực hành, 2 giờ kiểm tra): Phân tích, thiết kế và lập trình hai ứng dụng hoàn chỉnh: Ứng dụng Calculator và Ứng dụng quản lý sinh viên (StudentsManager) áp dụng mô hình 3 lớp (3-tier/layer) bao gồm Data Transfer Object (SinhVienDTO.cs), Data Layer (SinhVienDL.cs), Business Layer (SinhVienBL.cs, KhoaBL.cs) và Presentation Layer (frmSinhVien.cs).

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

  • Lý thuyết nền tảng thực thi: Mô hình quản lý bộ nhớ và thu gom rác tự động của Common Language Runtime (CLR), quy chuẩn đặc tả ngôn ngữ chung (Common Language Specification - CLS) cho phép kế thừa các lớp giữa nhiều ngôn ngữ trong .NET.
  • Nguyên lý lập trình hướng đối tượng: Tổ chức mã nguồn bằng lớp (class), đóng gói trường dữ liệu (Encapsulate Field thông qua các thuộc tính Property có khối get/set), thiết lập giao diện chuẩn hóa (Extract Interface) và quản trị không gian tên để chống xung đột định danh.
  • Kiến trúc phần mềm phân tầng: Nguyên lý phân tách trách nhiệm hệ thống theo mô hình 3 lớp (3-tier architecture): Tầng giao diện người dùng (GUI/Presentation Layer), Tầng xử lý nghiệp vụ (Business Logic Layer), Tầng truy xuất dữ liệu (Data Access Layer) kết hợp đối tượng truyền chuyển dữ liệu (Data Transfer Object - DTO).

Kỹ năng phát triển

  • Kỹ năng kỹ thuật (Technical skills): Thiết kế giao diện đồ họa bằng thao tác kéo - thả trên Visual Studio; vận dụng bộ công cụ Refactoring để tối ưu cấu trúc mã nguồn; thiết lập cấu hình kết nối và viết lệnh truy vấn dữ liệu SQL.
  • Kỹ năng phân tích (Analytical skills): Phân tích yêu cầu chức năng bài toán phần mềm; thiết kế cơ sở dữ liệu quan hệ; phân chia các luồng xử lý dữ liệu giữa các tầng nghiệp vụ độc lập.
  • Kỹ năng thực hành nghề nghiệp (Practical competencies): Kỹ thuật kiểm soát lỗi và debug ứng dụng với BreakPoint; đóng gói và xuất bản ứng dụng Windows; triển khai giải pháp lưu trữ dữ liệu cục bộ và tương tác với hệ điều hành Windows.

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

Giáo trình được thiết kế theo định hướng đào tạo nghề nghiệp với tỷ trọng thực hành chiếm ưu thế trong cơ cấu chương trình:

$$\text{Tỷ lệ thực hành} = \frac{60\text{ giờ thực hành}}{90\text{ giờ tổng số}} \approx 66.7%$$

Phân bổ thời lượng mô đun MĐ 19 (90 giờ):
 0%                             66.7%               95.6%   100%
  • Tiếp cận sư phạm: Kết hợp thuyết giảng lý thuyết ngắn gọn với việc thực hành trực tiếp trên máy tính. Mỗi bài học lý thuyết đều đi kèm với các bài tập thực hành tương ứng nhằm hiện thực hóa các khái niệm lập trình (ví dụ: Bài 4 có 7 giờ thực hành cho 3 giờ lý thuyết; Bài 5 và Bài 7 có 10 giờ thực hành cho 4 giờ lý thuyết).
  • Bài tập và tình huống thực tiễn (Case studies): Sinh viên được thực hành từ các bài tập nhỏ (viết chương trình Console, bẫy sự kiện trên nút bấm) đến các case study hoàn chỉnh tại Bài 8:
    • Ứng dụng Calculator: Xây dựng giao diện máy tính bỏ túi, phân tích yêu cầu tính toán và cài đặt mã lệnh xử lý sự kiện giao diện.
    • Ứng dụng StudentsManager: Phân tích hệ thống quản lý sinh viên thực tế, thiết kế cơ sở dữ liệu, tách biệt mã nguồn vào 4 tệp tin thuộc mô hình 3 lớp (SinhVienDTO.cs, SinhVienDL.cs, SinhVienBL.cs, frmSinhVien.cs).
  • Phương pháp đánh giá:
    • Đánh giá quá trình: Gồm 3 bài kiểm tra định kỳ được bố trí tại Bài 5 (1 giờ), Bài 7 (1 giờ) và Bài 8 (2 giờ).
    • Đánh giá sản phẩm: Đánh giá độ chính xác của mã lệnh, giao diện người dùng, khả năng tương tác cơ sở dữ liệu và khả năng giải quyết lỗi khi chạy chương trình.
  • Hướng dẫn tự học: Người học tự cài đặt môi trường Visual Studio 2008; đọc hiểu cấu trúc mã nguồn mẫu được cung cấp trong giáo trình; rèn luyện thói quen sử dụng các công cụ tự động như Refactoring, Debugger (Locals, BreakPoint) thay vì thao tác thủ công.

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

Nội dung giáo trình phản ánh các đặc điểm kỹ thuật và công nghệ của môi trường Microsoft Visual Studio 2008 và .NET Framework tại thời điểm biên soạn:

  • Tổng hợp môi trường phát triển Visual Studio 2008: Tài liệu cung cấp thông tin về các cải tiến của Visual Studio 2008 trong ba lĩnh vực: Cải thiện khả năng sản xuất, Quản lý chu trình phát triển ứng dụng (ALM), và Triển khai công nghệ mới (hỗ trợ Windows Vista và hệ thống Office 2007).
  • Tích hợp các công nghệ và dịch vụ hiện đại:
    • Giới thiệu ngôn ngữ truy vấn tích hợp LINQ (Language Integrated Query) bao gồm LINQ to SQL nhằm thống nhất cú pháp truy vấn đối tượng, cơ sở dữ liệu và XML trực tiếp trong C#.
    • Giới thiệu Windows Presentation Foundation (WPF), bộ công cụ XAML kết hợp cùng Windows Forms; kiến trúc dịch vụ WCF (Windows Communication Foundation) và luồng công việc WWF (Windows Workflow Foundation).
    • Hỗ trợ triển khai ứng dụng máy khách thông minh thông qua công nghệ ClickOnce hỗ trợ đa trình duyệt và máy chủ proxy.
    • Khả năng tương tác giữa mã được quản lý (managed code) và mã gốc (native code C++/MFC) qua thư viện STL/CLR.
  • Gắn kết ứng dụng thực tế và hệ thống dữ liệu: Hỗ trợ cơ chế kết nối dữ liệu ngoại tuyến với Microsoft Synchronization Services for ADO.NET, tích hợp cơ sở dữ liệu nhúng nhẹ cho thiết bị di động và desktop với Microsoft SQL Server 2008 Compact Edition.

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

  • Sinh viên mục tiêu: Học sinh, sinh viên theo học trình độ Cao đẳng nghề Quản trị mạng máy tính (sử dụng cho mô đun MĐ 19). Ngoài ra, tài liệu có thể sử dụng cho các hệ đào tạo hoặc các ngành/nghề khác trong các cơ sở giáo dục nghề nghiệp có giảng dạy học phần lập trình ứng dụng desktop.
  • Yêu cầu kiến thức tiên quyết (Prerequisites): Người học cần hoàn thành các môn học chung, các môn học cơ sở chuyên ngành; có hiểu biết căn bản về cấu trúc máy tính, logic thuật toán và nguyên lý lập trình cơ bản trước khi bước vào học phần này.
  • Đối với giảng viên: Giáo trình đóng vai trò là khung phân phối chương trình giảng dạy nội bộ chuẩn, cung cấp định mức thời gian chi tiết (26 giờ lý thuyết, 60 giờ thực hành, 4 giờ kiểm tra) và nội dung mã lệnh mẫu để xây dựng bài giảng lý thuyết, giáo án thực hành phòng máy và đề thi kiểm tra định kỳ.
  • Tự học và tài liệu tham khảo: Tài liệu phù hợp cho người đã có kiến thức lập trình cơ bản muốn nghiên cứu phương pháp xây dựng phần mềm quản lý theo mô hình phân tầng trên nền tảng .NET và ngôn ngữ C#.

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

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

Giáo trình được biên soạn trực tiếp cho sinh viên trình độ Cao đẳng ngành Quản trị mạng máy tính tại Trường Cao đẳng nghề Hà Nam và các cơ sở giáo dục nghề nghiệp tương đương, đồng thời phục vụ người học cần tài liệu tham khảo để xây dựng phần mềm quản lý ứng dụng thực tế.

2. Người học cần chuẩn bị kiến thức nền tảng nào trước khi học?

Người học cần hoàn thành các môn học cơ sở chuyên ngành và đã có kiến thức căn bản về logic lập trình (như các khái niệm về thuật toán, biến, cấu trúc điều khiển đã học ở các ngôn ngữ lập trình cơ sở như C/C++).

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 C# lý thuyết?

Giáo trình thiết kế theo cấu trúc mô đun nghề nghiệp với tỷ trọng thực hành chiếm hơn 66% tổng thời lượng. Nội dung tập trung hướng dẫn thao tác trực quan trên IDE Visual Studio 2008, kỹ thuật tái cấu trúc mã (Refactor), kỹ thuật gỡ lỗi và cung cấp mã nguồn hoàn chỉnh cho dự án phần mềm quản lý theo mô hình 3 lớp.

4. Phương pháp tự học giáo trình này như thế nào để đạt hiệu quả cao?

Người học nên cài đặt phần mềm Visual Studio, thực hành từng bước các thao tác kéo-thả control trên Toolbox, luyện tập kỹ thuật tái cấu trúc mã (Extract Method, Encapsulate Field) và trực tiếp gõ, chạy thử nghiệm các tệp tin mã nguồn trong Bài 8 (SinhVienDTO.cs, SinhVienDL.cs, SinhVienBL.cs, frmSinhVien.cs) kết hợp sử dụng công cụ Debugger (BreakPoint, Locals).

5. Giáo trình có cung cấp các ví dụ mã nguồn hoàn chỉnh không?

Có. Giáo trình cung cấp mã nguồn chi tiết từ các chương trình Console cơ bản (Hello World), các ví dụ bẫy sự kiện trên Windows Forms, thao tác System.IO đến toàn bộ mã nguồn của hai ứng dụng hoàn chỉnh: ứng dụng Calculator và hệ thống quản lý sinh viên StudentsManager phân tầng đầy đủ.


Kết luận

Giáo trình Lập trình trực quan (MĐ 19) của Trường Cao đẳng nghề Hà Nam xác lập hệ thống kiến thức có cấu trúc chặt chẽ về ngôn ngữ C# và nền tảng .NET Framework, định hình phương pháp phát triển ứng dụng giao diện đồ họa gắn liền với thao tác thực hành. Lộ trình đào tạo được xây dựng rõ ràng từ việc nắm bắt cú pháp C# nền tảng (Bài 1–4), làm chủ các đối tượng điều khiển và truy xuất dữ liệu ADO.NET (Bài 5–7), đến việc tổ chức kiến trúc phần mềm chuyên nghiệp qua mô hình 3 lớp (Bài 8). Để hoàn thiện kỹ năng, người học có thể kết hợp tham khảo thêm hệ thống tài liệu thư viện .NET Framework Class Library, Visual Studio Tools for Office (VSTO) và các hệ thống cơ sở dữ liệu chuyên ngành.