JavaScript — мультипарадигменный язык программирования. Поддерживает объектно-ориентированный, императивный и функциональный стили. Является реализацией спецификации ECMAScript.
Mozilla Application Suite — открытый набор программ для работы в сети Интернет. Он включает в себя web-браузер, почтовый клиент, календарь, IRC-клиент ChatZilla, простой HTML-редактор и инструменты для Web-разработчиков. Изначально был основан на некоторой части исходного кода Netscape Navigator, и версии 6 и 7 были основаны на Mozilla Application Suite. На данный момент является независимым проектом. Построен на ядре Gecko, которое является средой исполнения. Пользовательский интерфейс построен на XUL с использованием CSS, а в качестве языка программирования интерфейса применяется JavaScript. Отличительной чертой является поддержка всех стандартов организации Консорциум Всемирной паутины.
Gecko — свободный движок вывода веб-страниц браузеров Netscape и других. Старые названия — «Raptor» и «NGLayout». Главная концепция Gecko заключается в поддержке открытых стандартов Интернета, таких как HTML, CSS, W3C, DOM, XML 1.0 и JavaScript. Другая концепция — кроссплатформенность. На сегодняшний день Gecko работает на операционных системах GNU, в том числе на ядре Linux (Android), macOS, FreeBSD, Microsoft Windows, а также на Solaris, HP-UX, AIX, Irix, OS/2, OpenVMS, BeOS, Amiga и других.
Eclipse — свободная интегрированная среда разработки модульных кроссплатформенных приложений. Развивается и поддерживается Eclipse Foundation.
XUL — язык разметки для создания динамических пользовательских интерфейсов на основе XML. XUL разрабатывается в рамках проекта Mozilla и является частью платформы XULRunner.
XAML — расширяемый язык разметки для приложений — основанный на XML язык разметки для декларативного программирования приложений, разработанный Microsoft.
DOM — это не зависящий от платформы и языка программный интерфейс, позволяющий программам и скриптам получить доступ к содержимому HTML, XHTML и XML-документов, а также изменять содержимое, структуру и оформление таких документов.
SeaMonkey — свободный набор программ для работы в Интернете, включающее веб-браузер, почтовый клиент, адресную книгу, IRC-клиент ChatZilla, HTML-редактор и инструменты для веб-разработчиков. Пользовательский интерфейс построен на языке XUL с использованием CSS, а в качестве языка программирования интерфейса применяется JavaScript.
Spring Framework — универсальный фреймворк с открытым исходным кодом для Java-платформы. Также существует форк для платформы .NET Framework, названный Spring.NET.
XULRunner — проект Mozilla, реализация платформы для разработки приложений Mozilla Application Framework, основанной на движке Gecko и поддержке XUL.
Список языков описания пользовательских интерфейсов
ZK — фреймворк для разработки веб-приложений тайваньской компании Potix, реализован полностью на Java. Распространяется под коммерческой лицензией, ограниченная по функциональным возможностям версия доступна свободно под лицензией LGPL. Основные принципы — предоставление возможности разработчику веб-приложений создавать полноценные пользовательские интерфейсы для веб-приложений без применения JavaScript, в событийно-ориентированной парадигме и компонентной модели, что наиболее привычно разработчикам настольных приложений в RAD-средах.
Google Web Toolkit — свободный Java-фреймворк, который позволяет веб-разработчикам создавать Ajax-приложения. Его особенность — это компилятор Java -> JavaScript, позволяющий почти всю разработку клиента и сервера реализовать на основе Java и лишь на последнем этапе создать соответствующие JavaScript, HTML и CSS. Выпускается под лицензией Apache версии 2.0. GWT делает акцент на повторное использование и кросс‐браузерную совместимость.
Расширения — это маленькие устанавливаемые модули улучшений, вид дополнений, в проектах Mozilla Foundation и совместимых с ними.
Ниже список продуктов Mozilla Foundation/Mozilla Corporation. Все продукты, кроме специальных, кросс-платформенны.
Tapestry — объектно-ориентированный Java фреймворк для создания веб-приложений, реализующих модель MVC. Tapestry был создан Howard Lewis Ship и продолжает активно развиваться. Фреймворк является проектом верхнего уровня в организации Apache Software Foundation. Основной акцент в Tapestry сделан на продуктивность разработчика, лёгкость использования, невозможность программистами создания больших кусков «glue code». Tapestry использует модульный подход к веб-разработке, используя биндинг между компонентами (объектами) пользовательского интерфейса на веб-странице и соответствующими им java-классами. Эта компонентно-ориентированная архитектура почерпнула большое количество идей из WebObjects.
ECMAScript для XML (E4X) — расширение языка программирования, добавляющее естественную поддержку XML в стандарт языка ECMAScript. Цель — обеспечить альтернативу DOM-интерфейсам для упрощения синтаксиса для доступа к XML-документам. Также предлагается новый способ отображения XML. До выпуска E4X, доступ к XML всегда осуществлялся на объектном уровне. Вместо этого E4X рассматривает XML как примитивный тип. Это обеспечивает повышение скорости доступа, лучшую поддерживаемость и удобство использования в качестве структуры данных программы.
XPCOM — кроссплатформенная компонентно-ориентированная модель разработки ПО от Mozilla. Она схожа с CORBA и Microsoft COM. XPCOM позволяет писать компоненты на различных языках: C++, JavaScript, Java, и др. Осуществляется это через слой абстракции XPConnect, а интерфейсы классов берутся из бинарных библиотек типов.
Mozilla — сообщество, созданное в 1998 году членами Netscape, занимающееся созданием свободного программного обеспечения. Сообщество использует, разрабатывает, распространяет и поддерживает продукты Mozilla, содействуя тем самым распространению исключительно свободного программного обеспечения и открытых стандартов, лишь с незначительными исключениями. Сообщество поддерживается Mozilla Foundation и его дочерней компанией Mozilla Corporation.
Данная статья предоставляет список инструментариев графического интерфейса, используемых для создания графического интерфейса пользователя, отсортированных по их связям с различными операционными системами.