Microsoft Foundation Classes

De la Wikipedia, enciclopedia liberă

Salt la: Navigare, căutare

În programare, Microsoft Foundation Classes (sau MFC), cu numele originar Application Framework eXtension (sau AFX) este o bibliotecă aparţinând Microsoft, care încapsulează porţiuni din Windows API în clase de C++, formând o fundaţie pentru aplicaţiile care rulează sub sistemul de operare Microsoft Windows. Clasele sunt definite pentru mai multe obiecte handle, unităţile de bază ale sistemului de operare, care definesc şi obiecte grafice.

[modifică] Istorie

MFC a fost introdus în anul 1992, împreună cu compilatorul Microsoft C/C++ 7.0 folosit pentru versiunile de Windows pe 16 biţi. A fost parte a unui efort al Microsoft de a mai câştiga din piaţa de dezvoltare a produselor software, cât şi pentru a arăta câteva avantaje ale programării în C++. C++ tocmai era pe cale de a înlocui limbajul C în cadrul instrumentelor de dezvoltare pentru aplicaţii comerciale, iar C/C++ 7.0 era primul compilator al Microsoft, cu suport pentru C++. MFC a fost inspirat din TCL (Think Class Library) pe Macintosh.

Versiunea 8 a MFC a fost lansată împreună cu produsul Microsoft Visual Studio 2005 şi nu este inclusă în varianta gratuită denumită Express, a produsului. Microsoft recomandă folosirea alternativei .NET pentru viitorul dezvoltării software.

Object Windows Library (OWL), creată de către Borland şi inclusă în compilatorul Borland Turbo C compiler, era un competitor al acelei vremi. Din moment ce urmărea principiile programării orientată pe obiecte, OWL a fost mai populară decât MFC pentru un timp. A început să piardă din piaţă din cauza reînnoirilor întârziate şi din cauza incompatibilităţii cu noile beneficii aduse de Windows. Borland a lansat apoi VCL (Visual Component Library) pentru a înlocui OWL.

[modifică] Caracteristici

Când MFC a fost lansat, Microsoft a extins sintaxa C++ cu o serie de macro-uri pentru a servi mesajelor Windows, excepţiilor, identificării tipurilor la rulare, instanţierea dinamică a claselor (multe dintre aceste caracteristici – excepţii sau identificarea tipurilor la rulare, spre exemplu – nu au fost construite în compilatorul Microsoft, la acea vreme, dar vor apărea în versiuni ulterioare) etc.

[modifică] Avantaje

  • furnizează un model orientat pe obiecte pentru Windows API.
Unelte personale