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

Tài liệu tham khảo "Lập trình hướng đối tượng" (ngôn ngữ C#) do nhóm tác giả gồm ThS. Nguyễn Văn Thọ (Chủ biên), ThS. Trần Duy Thanh và ThS. Phó Hải Đăng biên soạn, được Trường Đại học Ngân hàng TP. Hồ Chí Minh (BUH) phát hành nội bộ vào năm 2021. Môn học Lập trình hướng đối tượng (Object Oriented Programming – OOP) giữ vị trí học phần cơ sở ngành quan trọng trong khung chương trình đào tạo đại học ngành Hệ thống thông tin quản lý (MIS).

Mục tiêu đào tạo của tài liệu là cung cấp kiến thức nền tảng về phương pháp luận lập trình hướng đối tượng, chuyển giao tư duy giải thuật từ mô hình hướng thủ tục sang mô hình đối tượng, đồng thời trang bị kỹ năng sử dụng ngôn ngữ C# và nền tảng Microsoft .NET để thiết kế phần mềm. Sau khi hoàn thành học phần, người học có khả năng phân tích, mô hình hóa các thực thể dữ liệu thực tế thành các lớp đối tượng, xây dựng các ứng dụng giao diện đồ họa (Windows Forms) và tích hợp truy xuất cơ sở dữ liệu quan hệ SQL Server.

Giáo trình được cấu trúc thành 5 chương tuần tự, thiết kế bám sát theo đề cương chi tiết môn học đã được phê duyệt tại Trường Đại học Ngân hàng TP.HCM. Cách tiếp cận của tài liệu chú trọng tính cô đọng: mỗi chủ đề đều tóm tắt lý thuyết cốt lõi, minh họa bằng các đoạn mã nguồn (code snippet) cụ thể, in trực tiếp kết quả chạy chương trình (output) và cung cấp hệ thống câu hỏi ôn tập, bài tập thực hành kèm bài tập đề nghị tự giải.


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

[Chương 1: Tổng quan về OOP & Visual Studio 2019]
[Chương 2: Cơ bản về ngôn ngữ C# (Cú pháp, Mảng, Hàm, Chuỗi)]
[Chương 3: Lớp, Đối tượng & Phương thức (Encapsulation, Static)]
[Chương 4: Thừa kế, Đa hình & Phương thức ảo (Inheritance, Polymorphism, Interface)]
[Chương 5: Xây dựng ứng dụng Windows Form & Kết nối ADO.NET/SQL Server]

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

  • Chương 1: Tổng quan về Lập trình hướng đối tượng (Trang 1 – 14): Giới thiệu phương pháp lập trình thủ tục (cấu trúc tuần tự, lựa chọn, lặp, ưu khuyết điểm); định nghĩa lập trình hướng đối tượng; phân tích 4 đặc tính cơ bản: tính đóng gói (Encapsulation), tính thừa kế (Inheritance), tính đa hình (Polymorphism), tính trừu tượng (Abstraction); tổng quan nền tảng Microsoft .NET Framework (Console, Windows Forms, WPF, ASP.NET, ADO.NET, WCF); hướng dẫn chi tiết quy trình tải, cài đặt và cấu hình công cụ Visual Studio 2019 Community kèm các gói công cụ Class Designer, LINQ to SQL Tools.
  • Chương 2: Cơ bản về ngôn ngữ lập trình C# (Trang 15 – 50): Trình bày hệ thống kiểu dữ liệu dựng sẵn (int, long, float, double, decimal, string, char, bool); quy tắc định danh biến và khai báo hằng số (const); hệ thống toán tử (gán, số học, một ngôi, so sánh, luận lý, tiền tố/hậu tố ++/--, độ ưu tiên toán tử); các cấu trúc điều khiển rẽ nhánh (if, if-else, switch-case, toán tử 3 ngôi ?:); cấu trúc vòng lặp (while, do-while, for, foreach); câu lệnh điều khiển break, continue; thư viện tiện ích (Console, Math, Random, DateTime); hàm, tham số hình thức/thực, cơ chế truyền tham trị (call by value) và tham chiếu (call by reference) qua từ khóa refout; thao tác xử lý mảng 1 chiều, mảng 2 chiều và chuỗi ký tự.
  • Chương 3: Lớp, đối tượng và phương thức (Trang 51 – 102): Định nghĩa Lớp (Class), Đối tượng (Object), Phương thức (Method) và Không gian tên (Namespace); cơ chế đóng gói dữ liệu thông qua thuộc tính Property (get/set); phạm vi hoạt động của từ khóa this; hàm khởi tạo (Constructor); khai báo và ứng dụng thành phần tĩnh với từ khóa static; kỹ thuật nạp chồng phương thức (Overloading Method).
  • Chương 4: Thừa kế, đa hình và phương thức ảo (Trang 103 – 132): Bản chất quan hệ tổng quát hóa và chuyên biệt hóa; kỹ thuật khai báo lớp dẫn xuất (lớp con) từ lớp cơ sở (lớp cha); cách thức gọi hàm khởi tạo của lớp cơ sở bằng từ khóa base; che giấu phương thức với từ khóa new; phương thức ảo (virtual), cơ chế ghi đè (override) và điều kiện thực thi tính đa hình; lớp trừu tượng (abstract class), phương thức trừu tượng (abstract method); định nghĩa và triển khai giao diện (interface).
  • Chương 5: Xây dựng ứng dụng Windows Form (Trang 133 – 198): Khái niệm và môi trường thiết kế giao diện Windows Forms; thanh công cụ Toolbox và cửa sổ hiệu chỉnh thuộc tính Properties; cơ chế quản lý thứ tự tiêu điểm Tab Order; xử lý hộp thoại thông báo MessageBox; các điều khiển đồ họa chuẩn: Label, TextBox, Button, CheckBox, RadioButton, ListBox, ComboBox, CheckedListBox, ListView; kiến trúc truy xuất dữ liệu ADO.NET (SqlConnection, SqlCommand, SqlDataReader, SqlDataAdapter, DataSet, SQLParameter); các thao tác kết nối, truy vấn dữ liệu và cập nhật dữ liệu (Select, Insert, Update, Delete) với Microsoft SQL Server; hướng dẫn xây dựng ứng dụng tổng hợp hoàn chỉnh.

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

Giáo trình xây dựng tư duy lập trình cấu trúc dữ liệu gắn liền với hành vi, loại bỏ nhược điểm lạm dụng biến toàn cục của lập trình thủ tục. Người học nắm vững các nguyên lý then chốt của OOP:

  • Đóng gói: Bảo mật dữ liệu nội tại của đối tượng, chỉ cho phép tương tác thông qua các phương thức và thuộc tính hợp lệ.
  • Thừa kế: Tái sử dụng và mở rộng các thuộc tính, hành vi từ lớp cha sang lớp con nhằm giảm thiểu trùng lặp mã nguồn.
  • Đa hình và Trừu tượng: Thiết lập các khuôn mẫu phương thức chung thông qua lớp trừu tượng và giao diện (Interface), cho phép các đối tượng khác nhau phản ứng linh hoạt với cùng một thông điệp triệu gọi.

Kỹ năng phát triển

  • Kỹ năng kỹ thuật: Thao tác thành thạo môi trường phát triển tích hợp (IDE) Visual Studio 2019; viết mã C# chuẩn cú pháp; kiểm soát bộ nhớ qua cơ chế tham trị và tham chiếu; lập trình giao diện người dùng GUI trên Windows.
  • Kỹ năng phân tích thiết kế: Khả năng phân rã bài toán nghiệp vụ thành hệ thống lớp đối tượng; thiết lập mối quan hệ kế thừa và triển khai Interface trong kiến trúc phần mềm.
  • Kỹ năng thao tác dữ liệu: Thiết lập chuỗi kết nối (Connection String), thực thi câu lệnh SQL để truy vấn và cập nhật cơ sở dữ liệu trên hệ quản trị SQL Server thông qua các đối tượng ADO.NET.

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

Giáo trình áp dụng phương pháp sư phạm tiếp cận từng bước (step-by-step), kết hợp chặt chẽ giữa lý thuyết định lượng và thực hành kiểm chứng:

  1. Trình bày lý thuyết kèm lưu đồ thuật toán: Các cấu trúc rẽ nhánh, vòng lặp và kiến trúc dữ liệu đều có lưu đồ cú pháp trực quan (Flowchart) hoặc bảng mô tả tham số chi tiết (như bảng phạm vi kiểu dữ liệu, bảng độ ưu tiên toán tử, bảng thuộc tính control).
  2. Minh họa bằng mã nguồn và ảnh chụp màn hình: Mỗi khái niệm lập trình đều có đoạn mã mẫu hoàn chỉnh. Tài liệu in kèm hình ảnh giao diện thực tế khi chương trình chạy (Console output hoặc màn hình Form), giúp người học đối chiếu kết quả trực tiếp mà không cần phỏng đoán.
  3. Hệ thống bài tập phân cấp:
    • Câu hỏi ôn tập: Tập trung vào củng cố khái niệm nền tảng (so sánh lập trình thủ tục và OOP, phân biệt refout, điều kiện xảy ra đa hình).
    • Bài tập thực hành có hướng dẫn: Cung cấp giải thuật và hướng dẫn mã lệnh chi tiết từng bước.
    • Bài tập đề nghị: Đặt ra các yêu cầu mở rộng để người học tự lập trình, nâng cao khả năng tư duy độc lập.
    • Bài tập ứng dụng tổng hợp: Cuối Chương 5 tích hợp toàn bộ kiến thức từ thiết kế giao diện đến xử lý dữ liệu với cơ sở dữ liệu SQL Server.
  4. Kho tài nguyên mã nguồn mở: Đính kèm theo tài liệu là bộ tập tin mã nguồn đã được nhóm tác giả đóng gói hoàn chỉnh, cho phép sinh viên tải về để đối chiếu qua liên kết rút gọn được cung cấp tại Lời giới thiệu.

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

  • Bám sát chương trình đào tạo chuyên ngành: Nội dung được biên soạn chuẩn hóa theo khung chương trình môn học Lập trình hướng đối tượng dành riêng cho sinh viên ngành Hệ thống thông tin quản lý tại Trường Đại học Ngân hàng TP.HCM.
  • Môi trường thực hành chi tiết: Tài liệu hướng dẫn thao tác trực tiếp trên phiên bản Visual Studio 2019 và .NET Framework 4.x, hướng dẫn cấu hình chi tiết từ giai đoạn chọn gói cài đặt môi trường (Desktop Development, Class Designer, LINQ to SQL Tools) đến thao tác tạo Solution và Project.
  • Hệ thống bảng biểu và danh mục hình ảnh hoàn chỉnh: Giáo trình sở hữu danh mục hơn 54 hình ảnh chụp giao diện/kết quả thực thi và 11 bảng biểu hệ thống hóa dữ liệu (bảng phạm vi biến, bảng toán tử, bảng thuộc tính điều khiển Windows Forms như Form, TextBox, Button, ComboBox, ListView...).
  • Danh mục từ khóa Anh – Việt: Phần đầu sách trang bị bảng đối chiếu thuật ngữ chuyên ngành (Class – Lớp, Encapsulation – Tính đóng gói, Inheritance – Tính thừa kế, Polymorphism – Tính đa hình, Namespace – Không gian tên, Constant – Hằng, Operator – Toán tử...), hỗ trợ sinh viên đọc hiểu các tài liệu kỹ thuật quốc tế.

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

  • Sinh viên đại học: Phục vụ trực tiếp sinh viên ngành Hệ thống thông tin quản lý, Công nghệ thông tin, Thương mại điện tử và các ngành kỹ thuật - kinh tế số cần tiếp cận kiến thức lập trình căn bản đến nâng cao.
  • Điều kiện tiên quyết: Người học cần có kiến thức cơ sở về tin học đại cương hoặc tư duy thuật toán cơ bản trước khi tiếp cận các nội dung lập trình hướng đối tượng nâng cao.
  • Giảng viên: Sử dụng làm tài liệu giảng dạy chính khóa, khung tham chiếu biên soạn bài giảng điện tử, tài liệu hướng dẫn thực hành phòng máy tính (lab manual) và xây dựng ngân hàng đề thi học phần.
  • Người tự học: Phù hợp cho lập trình viên mới bắt đầu tiếp cận ngôn ngữ C# và nền tảng .NET Framework nhờ cấu trúc ví dụ giải thích từng bước rõ ràng.

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

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

Giáo trình được thiết kế cho sinh viên đại học ngành Hệ thống thông tin quản lý và các khối ngành công nghệ liên quan, cũng như những người cần nắm vững lập trình hướng đối tượng với ngôn ngữ C#.

2. Cần kiến thức nền tảng nào trước khi học giáo trình này?

Người học chỉ cần nắm các khái niệm tin học căn bản và tư duy logic cơ bản. Toàn bộ cú pháp C#, cấu trúc dữ liệu, cấu trúc rẽ nhánh và vòng lặp đều được hướng dẫn chi tiết từ Chương 2.

3. Điểm khác biệt của giáo trình này so với các tài liệu lập trình khác là gì?

Tài liệu trình bày cô đọng, đi kèm lưu đồ giải thuật, hình ảnh in kèm kết quả chạy chương trình của từng ví dụ và có riêng chương thực hành xây dựng ứng dụng Windows Forms kết nối cơ sở dữ liệu SQL Server thông qua ADO.NET.

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

Người học nên đọc phần tóm tắt lý thuyết, trực tiếp gõ lại các đoạn mã mẫu trong Visual Studio, đối chiếu kết quả với hình ảnh minh họa trong sách, hoàn thành các câu hỏi ôn tập và tự giải các bài tập đề nghị ở cuối mỗi chương.

5. Giáo trình có cung cấp mã nguồn mẫu đính kèm không?

Nhóm tác giả cung cấp toàn bộ tập tin mã nguồn hoàn chỉnh của các chương trình trong sách qua liên kết tải về trực tuyến (https://bitly.vn/4ld0sd) và hỗ trợ tiếp nhận ý kiến đóng góp học thuật qua email thonv@buh.vn.


Kết luận

Tài liệu tham khảo "Lập trình hướng đối tượng" của ThS. Nguyễn Văn Thọ, ThS. Trần Duy Thanh và ThS. Phó Hải Đăng là tài liệu học thuật hoàn chỉnh, đáp ứng đầy đủ chuẩn đầu ra của học phần OOP trên nền tảng C# và .NET Framework. Lộ trình tài liệu dẫn dắt người học từ các khái niệm cơ bản về cú pháp và mô hình đối tượng đến việc hoàn thiện một ứng dụng quản lý Desktop có kết nối cơ sở dữ liệu thực tế. Hệ thống bài tập phân cấp cùng mã nguồn đính kèm cung cấp công cụ tự học và thực hành hiệu quả cho sinh viên khối ngành Hệ thống thông tin quản lý.