En programación informática , un marco de aplicación [1] consiste en un marco de software utilizado por los desarrolladores de software para implementar la estructura estándar del software de aplicación . [2]
Los marcos de aplicación se hicieron populares con el auge de las interfaces gráficas de usuario (GUI), ya que estas tendían a promover una estructura estándar para las aplicaciones. A los programadores les resulta mucho más sencillo crear herramientas de creación automática de GUI cuando utilizan un marco estándar, ya que este define de antemano la estructura de código subyacente de la aplicación. Los desarrolladores suelen utilizar técnicas de programación orientada a objetos (OOP) para implementar marcos de modo que las partes únicas de una aplicación puedan simplemente heredar de las clases existentes en el marco. [ cita requerida ]
Apple Computer desarrolló uno de los primeros marcos de aplicaciones comerciales, MacApp (primer lanzamiento en 1985), para Macintosh . Originalmente escrito en una versión extendida (orientada a objetos) de Pascal denominada Object Pascal , fue reescrito posteriormente en C++ . Otro marco notable para Mac es PowerPlant de Metrowerks , basado en Carbon . Cocoa para macOS ofrece un enfoque diferente para un marco de aplicaciones, basado en el marco OpenStep desarrollado en NeXT .
Desde la década de 2010, se han creado muchas aplicaciones con los frameworks basados en el proyecto Chromium de Google . Los dos más destacados son Electron y Chromium Embedded Framework .
Existen marcos de software libres y de código abierto como parte de los proyectos Mozilla , LibreOffice , GNOME , KDE , NetBeans y Eclipse .
Microsoft comercializa un marco para desarrollar aplicaciones de Windows en C++ llamado Microsoft Foundation Class Library , y un marco similar para desarrollar aplicaciones con Visual Basic o C# , llamado .NET Framework .
Varios marcos pueden crear aplicaciones multiplataforma para Linux , Macintosh y Windows a partir de un código fuente común , como Qt , wxWidgets , Juce , Fox toolkit o Eclipse Rich Client Platform (RCP).
Oracle Application Development Framework (Oracle ADF) ayuda a producir sistemas orientados a Java .
Silicon Laboratories ofrece un marco de aplicación integrado para desarrollar aplicaciones inalámbricas en su serie de chips inalámbricos.
MARTHA es un marco de software Java propietario sobre el que se basa todo el software RealObjects.