Microsoft Foundation Class Library
![](http://upload.wikimedia.org/wikipedia/commons/thumb/0/02/Circle-icons-computer.svg/35px-Circle-icons-computer.svg.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/0/03/Crystal_Clear_app_kpackage.png/35px-Crystal_Clear_app_kpackage.png)
Cet article est une ébauche concernant l’informatique et un logiciel.
Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.
![Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.](http://upload.wikimedia.org/wikipedia/commons/thumb/3/38/Info_Simple.svg/12px-Info_Simple.svg.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Scale_icon_orange.svg/45px-Scale_icon_orange.svg.png)
Cet article ne respecte pas la neutralité de point de vue ().
Considérez son contenu avec précaution et/ou discutez-en. Il est possible de préciser les sections non neutres en utilisant {{section non neutre}} et de souligner les passages problématiques avec {{passage non neutre}}.
![Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.](http://upload.wikimedia.org/wikipedia/commons/thumb/3/38/Info_Simple.svg/12px-Info_Simple.svg.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/a/a1/2017-fr.wp-orange-source.svg/45px-2017-fr.wp-orange-source.svg.png)
Cet article ne cite pas suffisamment ses sources ().
Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références ».
En pratique : Quelles sources sont attendues ? Comment ajouter mes sources ?
Type | Widget toolkit ![]() |
---|---|
Fondation | ![]() |
Site web | docs.microsoft.com/en-us/cpp/mfc ![]() |
modifier - modifier le code - modifier Wikidata
La Microsoft Foundation Class (MFC) est une bibliothèque de classes en C++ encapsulant l'API Win32 (écrite en C) de Windows. Sa première apparition date de 1992.
Elle offre également un framework de développement de type Document/Vue inspirée du motif de conception Modèle-Vue-Contrôleur (MVC).
Critiques
Ses détracteurs lui reprochent son manque d'abstraction de l'API Win32, ainsi que son manque d'encapsulation, tandis que ses partisans apprécient la possibilité d'accéder à la plus grande partie des fonctionnalités de cette API.[réf. nécessaire] Les MFC ont atteint leur maturité avec la version 7.0 de Visual Studio. Microsoft n'a pas arrêté la prise en charge des MFC malgré le passage de Win32/MFC vers .NET/CLR. Bien que .NET soit portable et facile d'accès, MFC reste plus abouti notamment pour Win32 kernel API, DirectX, STL, ATL, (pas ADO). Microsoft prend en charge la MFC par l'utilisation de wrapper.
Parmi les inconvénients de la MFC, on trouve :
- Documentation pléthorique, mais pas structurée
- Problème de gestion de l’Unicode
- Internationalisation dans le code (au lieu d'être une simple option à indiquer)
- Emploi de gabarits figés qui créent souvent les vues (document - vue)
- Utilisation de boucle d'événements (messages) et pas de callback /listener
- Surcouche orientée objet (pas objet) permettant d'accéder à l'API Windows qui est en C
- Utilisation exclusive de Visual Studio
- Utilisation sans API de la surcouche C++
Voir aussi
- Visual C++
- Component Object Model (COM)
- Automation
- Windows Template Library (WTL)
Liens externes
- Site officiel
- Notices d'autorité
:
- Tchéquie
- (fr) Programmation à l'aide de la bibliothèque MFC
Portail de Microsoft
Portail du logiciel