Введение

В компьютерном программировании, фреймворк приложения представляет собой программную структуру, используемую разработчиками программного обеспечения для реализации стандартной архитектуры прикладного программного обеспечения. Фреймворки приложений стали популярны с развитием графических пользовательских интерфейсов (GUI), поскольку те, как правило, способствовали стандартизации структуры приложений. Программистам значительно проще создавать инструменты автоматической генерации GUI при использовании стандартного фреймворка, так как он заранее определяет базовую кодовую структуру приложения. Разработчики обычно используют методы объектно-ориентированного программирования (ООП) для реализации фреймворков, чтобы уникальные части приложения могли просто наследовать классы, уже существующие во фреймворке.

Примеры

Apple Computer разработала одну из первых коммерческих платформ разработки приложений, MacApp (первый выпуск 1985 года), для Macintosh. Изначально написанная на расширенной (объектно-ориентированной) версии Паскаля, известной как Object Pascal, она позже была переписана на C++. Еще одной заметной платформой для Mac является PowerPlant от Metrowerks, основанная на Carbon. Cocoa для macOS предлагает иной подход к платформе приложений, основанный на OpenStep, разработанной в NeXT. С 2010-х годов многие приложения создаются с использованием платформ, основанных на проекте Google Chromium. Две наиболее известные из них — Electron и Chromium Embedded Framework. Платформы свободного и открытого программного обеспечения существуют в рамках проектов Mozilla, LibreOffice, GNOME, KDE, NetBeans и Eclipse. Microsoft предлагает платформу для разработки приложений Windows на C++ под названием Microsoft Foundation Class Library, а также аналогичную платформу для разработки приложений с использованием Visual Basic или C#, называемую .NET Framework. Ряд платформ позволяют создавать кроссплатформенные приложения для Linux, Macintosh и Windows из единой кодовой базы, такие как Qt, wxWidgets, Juce, Fox Toolkit или Eclipse Rich Client Platform (RCP). Oracle Application Development Framework (Oracle ADF) помогает в создании систем, ориентированных на Java. Silicon Laboratories предлагает встроенную платформу разработки приложений для создания беспроводных приложений на базе своих серий беспроводных чипов. MARTHA — это проприетарная программная платформа Java, на которой построено всё программное обеспечение RealObjects.