Фреймворки приложений: что это такое? Структура, GUI, объектно-ориентированное программирование (ООП). История и примеры – MacApp. Разработка ПО проще!
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
В компьютерном программировании, фреймворк приложения представляет собой программную структуру, используемую разработчиками программного обеспечения для реализации стандартной архитектуры прикладного программного обеспечения. Фреймворки приложений стали популярны с развитием графических пользовательских интерфейсов (GUI), поскольку те, как правило, способствовали стандартизации структуры приложений. Программистам значительно проще создавать инструменты автоматической генерации GUI при использовании стандартного фреймворка, так как он заранее определяет базовую кодовую структуру приложения. Разработчики обычно используют методы объектно-ориентированного программирования (ООП) для реализации фреймворков, чтобы уникальные части приложения могли просто наследовать классы, уже существующие во фреймворке.
In computer programming, an application framework consists of a software framework used by software developers to implement the standard structure of application software. Application frameworks became popular with the rise of graphical user interfaces (GUIs), since these tended to promote a standard structure for applications. Programmers find it much simpler to create automatic GUI creation tools when using a standard framework, since this defines the underlying code structure of the application in advance. Developers usually use object oriented programming (OOP) techniques to implement frameworks such that the unique parts of an application can simply inherit from classes extant in the framework.
Примеры
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.
Apple Computer developed one of the first commercial application frameworks, MacApp (first release 1985), for the Macintosh. Originally written in an extended (object oriented) version of Pascal termed Object Pascal, it was later rewritten in C++. Another notable framework for the Mac is Metrowerks' PowerPlant, based on Carbon. Cocoa for macOS offers a different approach to an application framework, based on the OpenStep framework developed at NeXT. Since the 2010s, many apps have been created with the frameworks based on Google's Chromium project. The two prominent ones are Electron and the Chromium Embedded Framework. Free and open source software frameworks exist as part of the Mozilla, LibreOffice, GNOME, KDE, NetBeans, and Eclipse projects. Microsoft markets a framework for developing Windows applications in C++ called the Microsoft Foundation Class Library, and a similar framework for developing applications with Visual Basic or C#, named NET Framework. Several frameworks can build cross platform applications for Linux, Macintosh, and Windows from common source code, such as Qt, wxWidgets, Juce, Fox toolkit, or Eclipse Rich Client Platform (RCP). Oracle Application Development Framework (Oracle ADF) aids in producing Java oriented systems. Silicon Laboratories offers an embedded application framework for developing wireless applications on its series of wireless chips. MARTHA is a proprietary software Java framework that all of the RealObjects software is built on.