Microsoft Foundation Classes
Бібліотека Microsoft Foundation Classes (MFC) дає можливість розробляти GUI-застосунки для Microsoft Windows на мові C++ з використанням багатого набору бібліотечних класів. Велика частина MFC є відносно тонким об'єктно-орієнтованим шаром над Windows API. Це рішення, з одного боку, підвищує продуктивність, але, з другого боку, успадковує всі недоліки дизайну Windows API і перешкоджає перенесенню програм на інші платформи.
Тип | Бібліотека розробника |
---|---|
Розробник | Microsoft |
Перший випуск | 1992 |
Стабільний випуск | 9.0.30411[1] [2] (22 квітня 2008 (RTW)[1] [2]) |
Операційна система | Microsoft Windows |
Мова програмування | C++ |
Ліцензія | Власницька |
Вебсайт | MFC reference, complementary Feature Pack reference |
Історія
Перша версія MFC була випущена разом з сьомою версією 16-розрядного компілятора мови C/C++ компанії Microsoft в 1992 році. Для тих, хто займався розробкою застосунків з використанням API функцій, пакет MFC обіцяв вельми значне підвищення продуктивності процесу програмування.
Однією з примітних особливостей MFC є префікс «Afx», використаний в іменах багатьох функцій, макросів і назві стандартного заголовного файлу «stdafx.h». На ранній стадії розробки, те, що згодом стало називатися MFC, мало назву «Application Framework Extensions» і абревіатуру «Afx». Рішення змінити назву на Microsoft Foundation Classes (MFC) було ухвалене надто пізно, щоб міняти згадки Afx в коді.
Object Windows Library (OWL), розроблена компанією Borland для роботи з власним компілятором C++, була конкуруючим продуктом, представленим в той же період. Урешті-решт Borland припинила розробку OWL і придбала короткострокову ліцензію на використання бібліотек для роботи з MFC, але так і не запропонувала повної підтримки MFC в своїх продуктах. Пізніше Borland випустила Visual Component Library як заміну OWL.
Увага компанії Microsoft на MFC була ослаблена на користь Microsoft .NET Framework. Проте, попри це, MFC як і раніше залишається популярною серед розробників.
Версії
Версія продукта | Версія MFC | Рік випуску |
---|---|---|
Microsoft C/C++ 7.0 | MFC 1.0 | 1992 |
Visual C++ 1.0 | MFC 2.0 (введена архітектура документ-представлення) | |
Visual C++ 1.5 | MFC 2.5 (реалізована підтримка технологій ODBC і drag-and-drop) | |
Visual C++ 1.52c | MFC 2.5 (остання платформа розробки для MS Windows 3.x) | |
Visual C++ 2.0 | MFC 3.0 (з'явилася можливість реалізації багатозадачності і підтримка Unicode) | |
Visual C++ 2.1 | MFC 3.1 | |
Visual C++ 2.2 | MFC 3.2 | |
Visual C++ 4.0 | MFC 4.0 (mfc40.dll включена в склад Windows 95) | серпень 1995 |
Visual C++ 4.1 | MFC 4.1 | |
Visual C++ 4.2 | MFC 4.2 (mfc42.dll включена в початкові випуски Windows 98) | березень 1998 |
eMbedded Visual C++ 3.0 | MFC 4.2 (mfc42.dll) | |
Visual C++ 5.0 | MFC 4.21 (mfc42.dll), значне оновлення MFC 4.2. | |
Visual C++ 6.0 | MFC 6.0 (mfc42.dll) | 1998 |
eMbedded Visual C++ 4.0 | ||
Visual C++ .NET 2002 (Visual C++ 7.0) | MFC 7.0 (mfc70.dll), .NET 1.0 | лютий 2002 |
Visual C++ .NET 2003 (Visual C++ 7.1) | MFC 7.1 (mfc71.dll), .NET 1.1 | квітень 2003 |
Visual C++ 2005[3] (Visual C++ 8.0) | MFC 8.0 (mfc80.dll), .NET 2.0 | жовтень 2005 |
Visual C++ 2008[3] (Visual C++ 9.0) | MFC 9.0.21022 (mfc90.dll), .NET 3.5 | листопад 2007 |
Visual C++ 2008 with Feature Pack | MFC 9.0.30411 (mfc90.dll) | квітень 2008 |
Visual C++ 2008 SP1 | MFC 9.0.30729 (mfc90.dll) | серпень 2008 |
Visual C++ 2010 | MFC 10.x(?), .NET 4.0 | ~ 2010 |
Виноски
- Microsoft Visual C++ 2008 Feature Pack
- Microsoft Visual C++ 2008 Feature Pack Redistributable Package (x86)
- Бібліотека MFC не входить в Visual Studio редакції Express
Посилання
Офіційні
- MSDN MFC Reference
- MSDN MFC newsgroup
- MFC: Visual Studio 2005 and Beyond
- An Inside Look At The Next Generation Of Visual C++ (covers the major MFC 9 updates)
Дивись також
- Active Template Library
- Windows Template Library (WTL) — полегшена альтернатива бібліотеці MFC