2011-12-23 43 views
5

Hiện tại tôi đang làm việc trong một dự án sử dụng MFC rất nhiều, nhưng có vẻ như với tôi rằng công nghệ MFC không được sử dụng rộng rãi hiện nay. MFC bị từ chối như thế nào? Các lựa chọn thay thế cho nó là gì? Tôi đang sử dụng VS2010 trên Windows.MFC có được chấp nhận không?

Cảm ơn câu trả lời của bạn.

+0

Không, nó không phải là hiện đại. Không, nó không được "không dùng nữa" **. Ít nhất không phải bởi bất kỳ ai có tình trạng chính thức để từ chối nó. –

+0

Bạn cũng có thể xem câu hỏi này: http://stackoverflow.com/questions/2598006/will-vc-mfc-become-obsolete-in-near-future – dwo

+0

bản sao có thể có của [Vẫn còn trường hợp cho MFC] (http://stackoverflow.com/questions/121184/is-there-still-a-case-for-mfc) –

Trả lời

6

Windows Forms và WPF ngày càng trở nên phổ biến trong những ngày này, nhưng thấy rằng phiên bản mới của MFC đã được phát hành chỉ vài tháng trước (xem here) Tôi sẽ không gọi nó là không dùng nữa.

2

Có, MFC không phải là những gì bạn sẽ gọi là nhà nước-of-the-nghệ thuật. Nếu bạn đang bắt đầu một ứng dụng (UI) mới từ đầu, bạn nên đưa ra những lý do thực sự mạnh mẽ để sử dụng MFC (ví dụ, bạn đã có sẵn mã). Có nhiều nhược điểm, cho exeample tài liệu/xem archtiecture, mà chỉ thích hợp cho các ứng dụng giao diện người dùng nhỏ hoặc số lượng cao tùy biến bạn cần phải đưa vào, nếu bạn muốn điều khiển không được bao gồm trong khuôn khổ này (và bạn chắc chắn sẽ một số điểm). Ngoài ra, nó không phải là dễ dàng để kiểm tra các lớp MFC, mà bạn nên có trong tâm trí là tốt.

Sử dụng rộng rãi là các phương pháp tiếp cận với kiến ​​trúc MVC (kiểu xem-bộ điều khiển). Bạn có thể đọc thêm về hai archiectures những ở đây:

Document/View as used in MFC

Model View Controller

Như bạn đang xem xét MFC, tôi giả sử bạn đã có kiến ​​thức trong C++. Do đó, Qt Framework từ Trolltech/Nokia có thể thú vị đối với bạn. Nó hỗ trợ kiến ​​trúc MVC, là nền tảng tương thích và vẫn tích cực phát triển.

1

MFC không quá tệ. Vấn đề là hầu hết các thành phần (windows/widgets) là khá xấu hoặc chính xác hơn rất không linh hoạt. Như Hans cho biết đó là 18 năm tương thích ngược và do đó mỗi chu kỳ đồng hồ và byte bộ nhớ được tính. Điều này đau ngày hôm nay.

Tôi đang sử dụng vì Windows Forms và WPF không thể sử dụng cho phát triển GUI đa nền tảng, trong đó lingua franca của backend là C hoặc C++ (nếu Java không phải là tùy chọn cho dự án của bạn vì bất kỳ lý do gì).

Tùy thuộc vào những gì bạn muốn làm và giao diện đồ họa rất quan trọng, MFC có thể là lựa chọn duy nhất, đặc biệt là khi bạn có thể mua các thành phần của bên thứ ba và sử dụng các featurepack hoặc Ribbons.

Tôi không bình luận về QT/GTK/FLTK hoặc bộ công cụ khác miễn là bạn không cho chúng tôi biết thêm về dự án của bạn

Các vấn đề liên quan