Программный виджет — это относительно простое и удобное в использовании программное приложение или компонент , созданный для одной или нескольких различных программных платформ .
Настольный аксессуар или апплет — это пример простого, автономного пользовательского интерфейса, в отличие от более сложного приложения, такого как электронная таблица или текстовый процессор. Эти виджеты — типичные примеры временных и вспомогательных приложений , которые не монополизируют внимание пользователя .
С другой стороны, графические элементы управления ( GUI- «виджеты») являются примерами повторно используемых модульных компонентов, которые применяются вместе для создания более сложных приложений, позволяя программистам создавать пользовательские интерфейсы путем объединения простых, более мелких компонентов.
Поскольку этот термин и практика кодирования существуют по крайней мере с 1980-х годов, он применялся в ряде контекстов. [1]
Графический элемент управления (виджет GUI) является частью графического пользовательского интерфейса (GUI), который позволяет пользователю компьютера управлять программным приложением. В этом контексте виджет может относиться к общему элементу GUI, такому как флажок , к экземпляру этого элемента или к настраиваемому набору таких элементов, используемых для определенной функции или приложения (например, диалоговое окно для настройки пользователями внешнего вида экрана компьютера ). Набор инструментов для виджетов — это набор инструментов программирования , которые помогают разработчикам повторно использовать виджеты GUI для создания пользовательского интерфейса.
Графические конструкторы пользовательского интерфейса , такие как Glade Interface Designer , облегчают разработку графических интерфейсов.
Виджеты рабочего стола (обычно называемые просто виджетами) — это интерактивные виртуальные инструменты для среды рабочего стола , которые предоставляют одноцелевые услуги, такие как показ пользователю последних новостей, текущей погоды, времени, календаря, словаря, программы карт, калькулятора, заметок рабочего стола , просмотрщиков фотографий или даже переводчика языка, среди прочего. Виджеты могут предоставлять или дополнять графическую оболочку . Примеры движков виджетов включают в себя:
Первоначально настольные аксессуары были разработаны для обеспечения небольшой степени многозадачности в операционных системах , которые могли поддерживать только одно основное приложение одновременно, но когда стали доступны настоящие многозадачные ОС , их заменили обычные приложения.
Большинство мобильных виджетов похожи на виджеты рабочего стола, но для мобильного телефона. Мобильные виджеты могут максимально использовать пространство экрана и могут быть особенно полезны при размещении приложений с большим объемом данных на экране ожидания/домашнем экране устройства. Существуют движки мобильных виджетов на базе Java ME , но отсутствие API на основе стандартов для Java для управления домашним экраном мобильного устройства затрудняет для этих движков возможность отображать виджеты на верхней части телефона.
Для мобильных устройств также доступно несколько собственных платформ виджетов на базе AJAX .
Растущая распространенность мобильных виджетов легко объяснима. Хотя виджеты являются удобством в онлайн-мире, в мобильном мире их можно считать почти необходимыми. Причина: мобильное устройство маленькое, а интерфейс часто сложный. Пробираться через большие объемы информации в мобильной среде не просто неприятно; это почти невозможно.
Android изначально поддерживает мобильные виджеты с версии Android 1.5 Cupcake , выпущенной 27 апреля 2009 года. Некоторые из самых популярных виджетов в операционной системе Android включают DashClock, Google Keep и HD Widgets. [3]
Операционная система iOS также поддерживает мобильные виджеты. Наряду с HarmonyOS , которая поддерживает виджеты в так называемых «картах обслуживания», которые также включают в себя бесплатные приложения и виджеты.
Веб -виджет — это портативное приложение, устанавливаемое и запускаемое, как правило, неопытными веб-мастерами на веб-страницах на основе HTML , для предоставления посетителям сайта возможности совершать покупки, просматривать рекламу , видео или другие простые функции от сторонних издателей виджетов.
Веб-браузеры также могут использоваться в качестве инфраструктур виджет-движков. Веб — это среда, хорошо подходящая для распространения виджетов, поскольку она не требует явного взаимодействия со стороны пользователя для установки новых фрагментов кода .
Веб-виджеты вызвали некоторый коммерческий интерес из-за их предполагаемого потенциала в качестве маркетингового канала, в основном потому, что они обеспечивают интерактивность и вирусное распространение через социальные сети. Первый известный веб-виджет, Trivia Blitz, был представлен в 1997 году. [ необходима цитата ] Это был игровой апплет, предлагаемый Uproar.com (ведущая компания онлайн-игр с 2000 по 2001 год), который появился на более чем 35 000 веб-сайтов, начиная от персональных страниц GeoCities и заканчивая CNN и Tower Records. Когда Uproar.com был приобретен Vivendi Universal в 2001 году, виджет был прекращен.
9 ноября 2006 года рабочая группа по форматам веб-приложений в W3C выпустила первый публичный рабочий проект Widgets 1.0. [8] Целью является стандартизация некоторых аспектов виджетов. Браузер Opera является первым клиентским движком виджетов , принявшим этот проект стандарта W3C. [9] Apache Wookie (Incubating) является первым серверным движком виджетов, принявшим этот стандарт W3C. Wookie — это сервер, который управляет экземплярами виджетов и позволяет встраивать их в веб-приложения в дополнение к предоставлению для клиентских устройств, таких как Opera.
Виджеты также доступны для телевизоров. Yahoo! Widget Engine анонсирован как компонент телевизоров следующего поколения.
Движок виджетов — это программная платформа, на которой работают настольные или веб-виджеты . Модель виджетов в движках виджетов привлекательна простотой разработки. Большинство этих виджетов можно создать с помощью нескольких изображений и от 10 до нескольких сотен строк исходного кода XML / JavaScript / VBScript . Одна хостовая программная система, например веб-браузер , запускает все загруженные виджеты. Это позволяет создавать несколько настольных виджетов, разделяя ресурсы и код.
Движки виджетов не следует путать с наборами инструментов для виджетов . Наборы инструментов используются программистами GUI , которые объединяют несколько виджетов (многоразовые компоненты ) для формирования одного приложения. Виджет в наборе инструментов обеспечивает единое низкоуровневое взаимодействие и готов к общению с другими виджетами в наборе инструментов. С другой стороны, движки виджетов, такие как виджеты рабочего стола и веб-виджеты, предназначены для конечных пользователей. Виджеты рабочего стола и веб-виджеты являются автономными, ориентированными на задачи приложениями, которые могут состоять из нескольких связанных взаимодействий сами по себе.