1. Giới thiệu về MFC
MFC là Microsoft Foundation Classes bộ thư viện được Microsoft phát triển cho việc develope nhanh ứng dụng trên Windows bằng môi trường Visual C++. Ngày nay trên môi trường Visual C++ (VS200X,VS2010) cho ta 3 lựa chọn để phát triển ứng dụng như sau:
1.Lập trình Win32API:
Bản chất là lập trình với ngôn ngữ lập trình C và tương tác gọi các hàm API
do hệ điều hành Windows cung cấp.
Tuy nhiên bạn vẫn có thể trộn lẫn C++ vô:
Ưu điểm : + Code bằng C (không biết có nên cho vào ưu điểm ko nữa)
+ Mã sinh ra nhỏ gọn chạy nhanh và ko bị phụ thuộc vào các tập
tin DLL.
Nhược điểm:
+ Khó nhớ các hàm, tên hàm, các cấu trúc liên quan đến một
mảng thành phần nào đó mà ta cần sử dụng.
+ Vì thế thời gian develop một ứng dụng khá lâu.
+ Vì là lập trình C nên mã nguồn thường khó quản lý hơn, nhất là
với những bạn có phong cách lập trình không được tốt.
2.Lập trình C++.NET:
Bản chất là lập trình với bộ thư viện .NET của MS cung cấp, sử dụng với cú
pháp của C++.
Ưu điểm : + Hướng đối tượng với các thành phần của .NET sử dụng dễ dàng
nhanh chóng.
+ Cho phép trộn lẫn mã manged và unmagned. M$ hỗ trợ .NET
cho VC++ với mục đích là cho phép bạn từng bước chuyển các
ứng dụng cũ viết bằng C++ lên dần dần môi trường .NET, bởi
trước đó có khá nhiều ứng dụng mà các thành phần của nó
được viết bởi native C++.
Nhược điểm:
+ Yêu cần phải kèm theo bộ Microsoft .NET Framework cồng kềnh
để cài đặt và chạy trên máy client.
+ Nếu sử dụng lẫn lộn mã hoặc thành phần nào đó của native C++
và managed C++ nên khó quản lý và bảo trì.
+ Hỗ trợ về .NET không bằng C# được.Vì C# được thiết kế là ngôn
ngữ lập trình chính với nên .NET.
3.Lập trình MFC:
Bản chất là làm việc với C++ thông qua các lớp và đối tượng. Các lớp bao
gồm các hàm và cấu trúc của Win32API về một thành phần nào đó được
gói chung vào một lớp.
Ưu điểm: + Lập trình hướng đối tượng với C++
+ Đỡ phải nhớ nhiều hàm và cấu trúc bởi chúng gói chung vào hầu
hết một lớp.
+ Thời gian develope một ứng dụng sẽ nhanh hơn bởi sự hỗ trợ rất
tốt của bộ Wizard với Visual Studio.
Nhược điểm :
+ Chương trình khi biên dịch ra sẽ khá lớn cỡ độ từ vài MB đến vài
chục MB có khi hoặc hơn tùy vào chế độ biên dịch Static Link
(đưa toàn bộ vào một exe hoặc dll duy nhất) hoặc chế độ
Dynamic Linked (bắt đính kèm mấy tệp dll của MFC).
+ Chắc chắn vẫn phải đính kèm mấy tệp của Visual C++ như
msvcrtX.dll và msvcppX.dll (X tùy phiên bản VC++).
+ Tuy nhiên là vẫn phát triển ứng dụng nhanh hơn Win32API
đồng thời lại không quá cồng kềnh như .NET
2. Tài liệu MFC
Đây là link cuốn Visual C++ and MFC Programming 2nd.
Hình ảnh:
Chúc các bạn học tập tốt
Không có nhận xét nào:
Đăng nhận xét
Nhập nhận xét về bài viết của bạn vào ô dưới. Mình sẽ trả lời khi có thời gian :D