Jump to content

Платформонезависимая библиотека графического интерфейса

Пакет PIGUI , ( платформенно-независимый графический интерфейс пользователя ) — это программная библиотека которую программист использует для создания кода графического интерфейса пользователя для нескольких компьютерных платформ . В пакете представлены подпрограммы и/или объекты (вместе с подходом к программированию), которые независимы от графических интерфейсов, на которые нацелен программист. Чтобы программное обеспечение квалифицировалось как PIGUI, оно должно поддерживать несколько графических интерфейсов как минимум в двух разных операционных системах (например, поддержка OPEN LOOK и X11 на двух системах Unix не считается). Пакет не обязательно предоставляет какие-либо дополнительные функции переносимости. Собственный внешний вид является желательной функцией, но не является существенной для PIGUI.

Соображения

[ редактировать ]

Использование PIGUI имеет ограничения, например, PIGUI занимается только аспектами графического интерфейса программы, поэтому за другие проблемы переносимости отвечает программист , большинство PIGUI замедляют выполнение результирующего кода, а программисты в значительной степени ограничены набором функций, предоставляемых ПИГИ.

Зависимость от PIGUI может привести к трудностям проекта, поскольку меньше людей знают, как кодировать какой-либо конкретный PIGUI, чем программировать графический интерфейс для конкретной платформы, что ограничивает количество людей, которые могут оказать расширенную помощь, и если поставщик выйдет из бизнеса , дальнейшая поддержка, включая будущие улучшения ОС, хотя наличие исходного кода может облегчить, но не устранить эту проблему. Кроме того, ошибки в любом пакете, включая PIGUI, попадают в рабочий код.

Альтернативные подходы

[ редактировать ]

Веб-браузеры предлагают удобную альтернативу для многих приложений. Веб-браузеры используют HTML в качестве уровня представления для приложений, размещенных на центральном сервере , и веб-браузеры доступны практически для каждой платформы. Однако некоторые приложения плохо подходят для веб- парадигмы , требуя локального приложения с возможностями графического пользовательского интерфейса. Если такие приложения должны поддерживать несколько платформ, PIGUI может оказаться более подходящим.

Вместо использования PIGUI разработчики могут разделить свои приложения на объекты с графическим и не-графическим интерфейсом и реализовать объекты графического интерфейса в собственном API . Тогда при портировании нужно будет переписать под новую платформу только объекты GUI. Некоторые разработчики программного обеспечения рекомендуют этот образ действий, поскольку он лучше подходит для каждой платформы и устраняет накладные расходы, часто связанные с наборами инструментов PIGUI. [ нужна ссылка ] Очевидно, что это может потребовать больше усилий как при первоначальной разработке, так и при текущем сопровождении (отсутствие единой базы исходного кода). Это также означает научиться программировать для каждой целевой платформы, что (обычно) не является тривиальной задачей, отсюда и рынок пакетов PIGUI.

Подходы к пользовательскому интерфейсу

[ редактировать ]

Большинство, если не все, пакетов PIGUI используют один из трех подходов к обеспечению независимости от платформы. Двумя наиболее распространенными подходами являются «многоуровневый» и «эмулируемый» пользовательский интерфейс, но перспективным подходом является «эмулируемый API» интерфейс.

Пакеты, использующие многоуровневый интерфейс, получают доступ к собственным сторонним инструментам для создания графического интерфейса, чтобы обеспечить соответствие внешнего вида каждому конкретному графическому интерфейсу. Многоуровневые пользовательские интерфейсы имеют то преимущество, что, поскольку они зависят от других продуктов, концентрирующихся на одном графическом интерфейсе, они должны предоставлять меньше программного обеспечения (и, следовательно, обычно менее дороги), чем эмулированные интерфейсы. Многоуровневые интерфейсы также с большей вероятностью будут иметь правильный внешний вид на всех платформах.

В эмулируемом пользовательском интерфейсе результирующий код PIGUI создает низкоуровневые вызовы, и все соответствие внешнего вида обрабатывается самим программным обеспечением PIGUI (например, для поддержки OpenWindows программное обеспечение НЕ будет создавать программу XView , которую необходимо скомпилировать). с набором инструментов XView; программное обеспечение будет создавать код, который напрямую взаимодействует с внутренними функциями X ). Чтобы предоставить эмулируемый пользовательский интерфейс, поставщику пакетов приходится разработать много дополнительного кода для поддержки внешнего вида. Эмулированные пользовательские интерфейсы имеют то преимущество, что кто-то, например, на рабочей станции X11 может видеть, как будет выглядеть пользовательский интерфейс в стиле Macintosh (поскольку внешний вид является частью продукта). Эмулированные интерфейсы могут обеспечить более быстрый графический интерфейс, чем многоуровневый интерфейс; кроме того, для создания программного обеспечения с графическим интерфейсом пользователя не требуется приобретать (или учиться использовать) другие пакеты.

Третий подход к независимости от платформы — эмуляция одного из поддерживаемых целевых API (обычно Microsoft Windows API ) для использования других графических интерфейсов. С помощью одного из этих продуктов можно было бы программировать с использованием эмулируемого API, и код был бы (в той степени, в которой продукт обеспечивает переносимость) переносимым на другие графические интерфейсы.

Пакеты PIGUI очень похожи по своей базовой функциональности; Каждый из них предоставляет подпрограммы или объекты, которые позволяют пользователю создавать окна , кнопки (обычные, а также переключатели и флажки ), меню и тому подобное. Некоторые области дифференциации:

См. также

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: b772ea5b44a01252997d7a2b4f158005__1686128580
URL1:https://arc.ask3.ru/arc/aa/b7/05/b772ea5b44a01252997d7a2b4f158005.html
Заголовок, (Title) документа по адресу, URL1:
Platform-independent GUI library - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)