Menu
CoddyTech

Thiết lập dự án

Thuộc phần Lập trình hướng đối tượng trong hành trình C của Coddy. Bài học 22 trên 61.

challenge icon

Thử thách

Dễ

Hãy bắt đầu xây dựng thư viện Bank Account! Ở bước đầu tiên này, bạn sẽ tạo giao diện công khai: tệp tiêu đề định nghĩa các thao tác có sẵn mà không tiết lộ bất kỳ chi tiết triển khai nào.

Bạn sẽ tạo hai tệp để thiết lập nền tảng cho dự án:

  • account.h: Tệp tiêu đề công khai. Người dùng thư viện sẽ đưa tệp này vào chương trình. Hãy khai báo kiểu Account mờ bằng khai báo kiểu chưa hoàn chỉnh: không có phần thân struct, chỉ cần khai báo trước để trình biên dịch biết kiểu này tồn tại. Sau đó, khai báo nguyên mẫu hàm cho create_account (nhận một số nguyên làm ID tài khoản và trả về con trỏ Account) và destroy_account (nhận một con trỏ Account và không trả về gì). Đừng quên dùng ký hiệu ACCOUNT_H để tạo các bảo vệ chống đưa tệp vào nhiều lần.
  • main.c: Tệp kiểm thử đơn giản để xác minh rằng tiêu đề của bạn biên dịch chính xác. Hãy đưa tệp tiêu đề vào chương trình và in ra thông báo xác nhận giao diện đã sẵn sàng. Vì chúng ta chưa triển khai các hàm, chỉ cần in thông báo xác nhận: phần triển khai thực tế sẽ có trong bài học tiếp theo.

Điểm mấu chốt ở đây là tiêu đề cho biết mô-đun Account có thể làm gì (tạo và hủy tài khoản) mà không cho thấy nó lưu trữ dữ liệu nội bộ như thế nào. Bất kỳ ai đưa account.h vào chương trình đều biết kiểu Account tồn tại và những hàm nào có sẵn, nhưng họ sẽ không thể truy cập bất kỳ trường nội bộ nào vì bạn chưa định nghĩa chúng trong tiêu đề!

Tệp chính của bạn cần in ra:

Account interface ready

Đây là bước khởi đầu cho hệ thống Bank Account hoàn chỉnh mà bạn sẽ xây dựng trong những bài học tiếp theo. Tiêu đề bạn tạo bây giờ sẽ được mở rộng để bao gồm deposit, withdraw và get_balance khi bạn tiếp tục thực hiện dự án.

Tự làm thử

#include <stdio.h>
#include "account.h"

int main() {
    // TODO: In ra thông báo xác nhận giao diện đã sẵn sàng
    // Thông báo cần là: "Account interface ready"
    
    return 0;
}

Tất cả bài học trong Lập trình hướng đối tượng

Tự luyện tập: Trình biên dịch C online