- Microsoft Foundation Classes
-
Microsoft Foundation Classes o MFC es un conjunto de clases interconectadas por múltiples relaciones de herencia, que proveen un acceso más sencillo a las API de Windows. Fueron introducidas por Microsoft en 1992 y desde entonces fueron apareciendo nuevas versiones con las actualizaciones del entorno de programación Visual C++, gracias a las cuales éste se convierte en un generador de programas C++ para Windows. Tiene una gran complejidad añadida debido a la necesidad de que el programador ahora no sólo debe controlar C/C++, sino que además debe conocer las clases de la MFC para poder utilizar su potencia. Con el paso del tiempo Microsoft Foundation Classes se ha convertido en la implementación estándar de la industria para la creación de aplicaciones gráficas en plataformas PC. A pesar de tener sus limitaciones, su adopción demuestra los beneficios de productividad de la reutilización de marcos comunes para desarrollar aplicaciones gráficas para negocios.
Historia
MFC se introdujo en 1992 con C de Microsoft C++ 7.0 para ser utilizado con versiones de 16 bits de Windows como un sistema orientado a objetos C++ para la envoltura de la API de Windows. C + + estaba empezando a reemplazar a C para el desarrollo de software de aplicación comercial en el momento. C ha sido lentamente desplazado por las nuevas bibliotecas y lenguajes como son C++ y MFC, aunque muchos programadores opinan que MFC es únicamente un wrapper orientado a objetos de Windows API, ya que no disminuye mucho la complejidad y, en algunos casos, incluso la aumenta. Una interesante peculiaridad de MFC es el uso de Afx como prefijo para muchas funciones, macros y el nombre estándar de encabezado pre compilado stdafx.h. Durante el desarrollo temprano lo que se convirtió en MFC se llama Extensiones de Application Framework se abrevia como "Afx". El nombre de Microsoft Foundation Classes (MFC), fue adoptado demasiado tarde en el ciclo de lanzamiento para cambiar estas referencias. Una alternativa a MFC es la Windows Template Library (WTL). C++ versión Express compila aplicaciones WTL, pero no incluye el soporte IDE de las ediciones Standard, Professional y Team. El 7 de abril de 2008, Microsoft lanzó una actualización de las clases MFC como una actualización fuera de banda para Visual Studio 2008 y MFC-9. La actualización incluye nuevas construcciones de la interfaz de usuario, incluyendo la de cinta de Microsoft Office 2007 y la asociada widgets, totalmente personalizables barras de herramientas, paneles de conexión, como Visual Studio 2005 y las fichas de documento. Sin embargo, los elementos de la cinta se deben crear en el código, como en la API de RibbonX en Microsoft Office 2007. El Asistente para aplicaciones MFC también ha sido actualizado para soportar las nuevas características - incluyendo una casilla para seleccionar si la aplicación va a utilizar la cinta o el Visual Studio 2005 elementos de la interfaz de usuario. La nueva funcionalidad se proporciona en las clases para que las aplicaciones antiguas todavía sigan su curso.
Versión del producto Version MFC Año en el que se introdujo Microsoft C/C++ 7.0 MFC 1.0 1993 Visual C++ 1.0 MFC 2.0 Visual C++ 1.5 MFC 2.5 Visual C++ 1.51 MFC 2.51 Visual C++ 1.52c MFC 2.5 (Last development platform for Windows 3.x) Visual C++ 2.0 MFC 3.0 Visual C++ 2.1 MFC 3.1 Visual C++ 2.2 MFC 3.2 Visual C++ 4.0 MFC 4.0 (mfc40.dll included with Windows 95) Aug 1995 Visual C++ 4.1 MFC 4.1 Visual C++ 4.2 MFC 4.2 (mfc42.dll included with the Windows 98 original release) Mar 1998 eMbedded Visual C++ 3.0 MFC 4.2 (mfc42.dll) Visual C++ 5.0 MFC 4.21 (mfc42.dll), a major upgrade from MFC 4.2. Visual C++ 6.0 MFC 6.0 (mfc42.dll) 1998 eMbedded Visual C++ 4.0 MFC 6.0 (mfcce400.dll) Visual C++ .NET 2002 (Visual C++ 7.0), .NET 1.0 MFC 7.0 (mfc70.dll) Feb 2002 Visual C++ .NET 2003 (Visual C++ 7.1), .NET 1.1 MFC 7.1 (mfc71.dll) Apr 2003 Visual C++ .NET 2003 + MS11-025 MFC 7.10.6119.0 (mfc71.dll) Apr 2011 Visual C++ 2005 (Visual C++ 8.0), .NET 2.0 MFC 8.0.50608.0 (mfc80.dll) Oct 2005 Visual C++ 2005 SP1 MFC 8.0.50727.762 (mfc80.dll) Visual C++ 2005 SP1 + MS09-035 MFC 8.0.50727.4053 (mfc80.dll) Jul 2009 Visual C++ 2005 SP1 + MS11-025 MFC 8.0.50727.5592(mfc80.dll) Apr 2011 Visual C++ 2008 (Visual C++ 9.0), .NET 3.5 MFC 9.0.21022.8 (mfc90.dll) Nov 2007 Visual C++ 2008 with Feature Pack MFC 9.0.30411 (mfc90.dll) Apr 2008 Visual C++ 2008 SP1 MFC 9.0.30729.1 (mfc90.dll) Aug 2008 Visual C++ 2008 SP1 + MS09-035 MFC 9.0.30729.4148 (mfc90.dll) Jul 2009 Visual C++ 2008 SP1 + MS11-025 MFC 9.0.30729.5570 (mfc90.dll) Apr 2011 Visual C++ 2010, .NET 4.0 MFC 10.0.30319.1 (mfc100.dll) Apr 2010 Visual C++ 2010 + MS11-025 MFC 10.00.30319.415 (mfc100.dll) Apr 2011 Visual C++ 2010 SP1 MFC 10.0.40219.1 (mfc100.dll) March 2011 Características
MFC proporciona C + + para Windows macros de tratamiento de mensajes (a través de mapas de mensajes), las excepciones en tiempo de ejecución e identificación del tipo RTTI, la serialización y la creación de instancias de clases dinámicas. Las macros para manejo de mensajes dirigidos a reducir el consumo de memoria, evitando el uso gratuito de mesa virtual y también para proporcionar una estructura más concreta para diversos Visual C++ -suministrado herramientas para editar y manipular el código sin necesidad de analizar el lenguaje completo. Las macros de tratamiento de mensajes reemplazado el mecanismo de función virtual proporcionada por el C++.
Usos
El Microsoft Foundation Class (MFC) de la biblioteca ofrece un ejemplo bien conocido de un software eficaz marco. El MFC es una biblioteca de clases C++ que proporciona una interfaz para la programación de Windows y al mismo tiempo encapsula el nivel inferior de la API Win32. Proporciona una gran cantidad de funcionalidades que se encuentran en Aplicaciones de Windows, como la gestión de documentos y la gestión de los distintos puntos de vista sobre los datos del documento, y a su vez proporciona una interfaz orientada a objetos que solucionan las complejas tareas que involucran la comunicación a través redes, el acceso a la base de datos y gestión de documentos compuestos. Las aplicaciones de Windows se construyen mediante la especialización de los componentes que se encuentran en el marco de trabajo de MFC, como la Clases C View y C Document, para cumplir con los requisitos de la aplicación.
Categoría:- Bibliotecas de C++
Wikimedia foundation. 2010.