MFC là gì C++? Sự khác biệt cơ bản giữa MFC và ATL là gì?

Những người ai đang tập tành mới làm quen với Visual Studio hẳn sẽ có nhiều khái niệm chưa nắm rõ. Và chắc chắn trong đó có MFC. Vậy MFC là gì C++? Sự khác biệt cơ bản giữa MFC và ATL là gì? Hãy cùng BEM2 đi tìm hiểu những vấn đề trên ngay sau đây.

MFC là gì C++?

MFC là cụm từ viết tắt của Microsoft Foundation Class . Là 1 thư hiện các lớp (OOP, Class) trong ngôn ngữ Visual C++; được sử dụng cho việc lập trình trên Windows.

MFC được xây dựng trên cơ sở các hàm thư viện API của Windows. Tính năng của MFC chính là giúp cho người lập trình có thể xây dựng ứng dụng nhanh; không tốn quá nhiều công sức so với việc sử dụng đơn thuần các hàm thư viện API của Windows .

mfc-la-gi-c-bem2vn

Trong 1 ứng dụng MFC, người ta sẽ không gọi hàm Windows API trực tiếp. Thay vào đó sẽ tạo ra các object từ những lớp của MFC, và gọi phương thức của object đó.

mfc-la-gi-c-bem2vn-1

Đa số các phương thức của MFC class có cùng tên với những hàm Windows API.MFC tạo ra một Application Framework, giúp:

  • Thiết lập kiến trúc của ứng dụng một cách nhất quán và khoa học
  • Che dấu đi nhiều phần chi tiết mà Windows API đòi hỏi, giúp developer “thảnh thơi” hơn.
Xem thêm  Cách mở camera trên laptop Windows 7/8/10

MFC có thể tạo GUI application từ đơn giản đến phức tạp bao gồm multi-screen (MDI), nhiều control. MFC giúp developer rút ngắn thời gian phát triển application. Vì MFC đã tạo ra các interface, developer chỉ cần add thêm code xử lý.

Nếu các bạn đã học lập trình Win32 API thì bạn sẽ thấy việc tạo control (button, checkbox, radio-button,…) rất đơn giản. Ngoài ra, MFC giúp developer dễ dàng tiếp cận với các công nghệ như: Active technology, OLE, network programming, kết nối database thông qua Data Access Objects (DAO) and Open Database Connectivity (ODBC) và network programming thông qua Socket.

Sự khác biệt cơ bản giữa MFC và ATL là gì?

ATL là cách nhanh chóng, dễ dàng để vừa tạo thành phần COM trong C++ vừa duy trì dấu chân nhỏ. Sử dụng ATL để tạo điều khiển nếu bạn không cần tất cả các chức năng tích hợp mà MFC tự động cung cấp.

su-khac-biet-co-ban-giua-mfc-va-atl-la-gi-bem2vn-1

MFC cho phép bạn tạo các ứng dụng đầy đủ, điều khiển ActiveX và tài liệu đang hoạt động. Nếu bạn đã tạo điều khiển bằng MFC, bạn có thể muốn tiếp tục phát triển trong MFC. Khi tạo điều khiển mới, hãy cân nhắc sử dụng ATL nếu bạn không cần tất cả các chức năng tích hợp của MFC.

su-khac-biet-co-ban-giua-mfc-va-atl-la-gi-bem2vn

ATL dựa trên các mẫu, hoặc đa hình thời gian biên dịch.Các phương thức ATL có xu hướng không ảo và có xu hướng trả về các tham chiếu. Còn MFC dựa trên các phương thức ảo, hoặc đa hình thời gian chạy.Các phương thức MFC có xu hướng ảo và có xu hướng trả về con trỏ.

Xem thêm  Cách vẽ biểu đồ trong Word

Với những thông tin mà BEM2 đã tổng hợp ở trên, đã góp 1 phần nào giúp cho người đọc hiểu được MFC là gì C++. Đồng thời biết được sự khác biệt cơ bản giữa MFC và ATL.

5/5 - (1 bình chọn)

Bài viết liên quan

Để lại ý kiến của bạn:

Email của bạn sẽ không được hiển thị công khai.