В вычислительной технике апплет — это любое небольшое приложение , которое выполняет одну конкретную задачу и выполняется в рамках специального механизма виджетов или более крупной программы , часто в виде подключаемого модуля . [1] Этот термин часто используется для обозначения Java-апплета — программы, написанной на языке программирования Java и предназначенной для размещения на веб-странице . Апплеты — типичные примеры временных и вспомогательных приложений , не монополизирующих внимание пользователя. Апплеты не являются полнофункциональными прикладными программами и предназначены для легкого доступа.
Слово « апплет» впервые было использовано в 1990 году в журнале PC Magazine . [2] Однако концепция апплета или, в более широком смысле, небольшой интерпретируемой программы, загружаемой и выполняемой пользователем, восходит как минимум к RFC 5 (1969) Джеффа Рулифсона , в котором описывался язык декодирования-кодирования, который был разработан для разрешить удаленное использование онлайн-системы через ARPANET путем загрузки небольших программ для улучшения взаимодействия. [3] В RFC 2555 это было названо предшественником загружаемых программ Java. [4]
В некоторых случаях апплет не запускается независимо. Эти апплеты должны запускаться либо в контейнере , предоставляемом главной программой, через плагин , либо во множестве других приложений, включая мобильные устройства, поддерживающие модель программирования апплетов.
Аплеты использовались для предоставления интерактивных функций веб-приложениям, которые исторически не могли быть реализованы только с помощью HTML . Они могли захватывать ввод данных с помощью мыши , а также имели элементы управления, такие как кнопки или флажки . В ответ на действие пользователя апплет может изменить предоставленное графическое содержимое. Это сделало апплеты хорошо подходящими для демонстрации, визуализации и обучения. Существовали онлайн-коллекции апплетов для изучения самых разных предметов, от физики до физиологии сердца. Апплеты также использовались для создания коллекций онлайн-игр, которые позволяли игрокам соревноваться с живыми противниками в режиме реального времени.
Апплет также может представлять собой только текстовую область, предоставляя, например, кроссплатформенный интерфейс командной строки для какой-либо удаленной системы. При необходимости апплет может покинуть выделенную область и запуститься в отдельном окне . Однако апплеты имели очень мало контроля над содержимым веб-страницы за пределами выделенной области апплета, поэтому они были менее полезны для улучшения внешнего вида сайта в целом (хотя также известны такие апплеты, как тикеры новостей или редакторы WYSIWYG ). Апплеты также могут воспроизводить мультимедиа в форматах, которые изначально не поддерживаются браузером.
HTML-страницы могли встраивать параметры, передаваемые в апплет. Следовательно, один и тот же апплет может выглядеть по-разному в зависимости от переданных параметров.
Примеры веб-апплетов включают в себя: [ нужна ссылка ]
Более крупное приложение отличает свои апплеты по нескольким особенностям :
Java-апплет — это программа Java, которая запускается из HTML и выполняется в веб-браузере. Он берет код с сервера и запускается в веб-браузере. Он может предоставлять веб-приложениям интерактивные функции, которые не могут быть предоставлены HTML. Поскольку байт-код Java не зависит от платформы, апплеты Java могут выполняться браузерами, работающими на многих платформах, включая Windows , Unix , macOS и Linux . Когда веб-браузер с поддержкой технологии Java обрабатывает страницу, содержащую апплет, код апплета передается в систему клиента и выполняется виртуальной машиной Java браузера . [5] HTML-страница ссылается на апплет либо через устаревший <applet>
тег , либо через его замену, <object>
тег . [6]
Последние разработки в области кодирования приложений, включая мобильные и встроенные системы , привели к осознанию безопасности апплетов.
Аплеты в среде открытой платформы должны обеспечивать безопасное взаимодействие между различными приложениями. Композиционный подход может использоваться для обеспечения безопасности апплетов открытой платформы. [7] Для безопасного взаимодействия апплетов были разработаны расширенные методы композиционной проверки. [7]
Java -апплет содержит различные модели безопасности: безопасность неподписанного Java-апплета , безопасность подписанного Java-апплета и безопасность самоподписанного Java-апплета .
В веб-браузере с поддержкой апплетов можно использовать множество методов для обеспечения безопасности апплетов для вредоносных апплетов. Вредоносный апплет может заразить компьютерную систему разными способами, включая отказ в обслуживании, вторжение в частную жизнь и раздражение. [8] Типичное решение проблемы вредоносных апплетов — заставить веб-браузер отслеживать действия апплетов. В результате появится веб-браузер, который позволит вручную или автоматически останавливать вредоносные апплеты. [8]