Лекция
Привет, сегодня поговорим про альтернативные браузерные технологии, обещаю рассказать все что знаю. Для того чтобы лучше понимать что такое альтернативные браузерные технологии , настоятельно рекомендую прочитать все из категории Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend).
Современный JavaScript используется во многих областях. Если говорить о браузерах, то вместе с JavaScript на страницах используются и другие технологии.
Самые извеcтные — это Flash, Java, ActiveX/NPAPI. Связка с ними может помочь достигнуть более интересных результатов в тех местах, где браузерный JavaScript пока не столь хорош, как хотелось бы.
Java — язык общего назначения, на нем можно писать самые разные программы. Для интернет-страниц есть особая возможность - написание апплетов.
Апплет — это программа на языке Java, которую можно подключить к HTML при помощи тега applet
:
1 |
< applet code = "BTApplet.class" codebase = "/files/tutorial/intro/alt/" > |
2 |
< param name = "nodes" value = "50,30,70,20,40,60,80,35,65,75,85,90" > |
3 |
< param name = "root" value = "50" > |
4 |
</ applet > |
Такой тег загружает Java-программу из файла BTApplet.class
и выполняет ее с параметрами param
.
Конечно, для этого на компьютере должна быть установлена и включена среда выполнения Java. Об этом говорит сайт https://intellect.icu . Статистика показывает, что это около 80% компьютеров.
Если она включена у вас, то ниже вы увидите апплет в действии:
Чем нам, JavaScript-разработчикам, может быть интересен Java?
В первую очередь тем, что ограничения безопасности JavaScript в принципе нельзя преодолеть… А специальным образом подписанный (это несложно) Java-апплет может делать все, если посетитель ему доверяет.
То есть, возможности, которые по ограничениям безопасности не поддерживает JavaScript, реализуемы через доверенный Java-апплет.
При попытке сделать потенциально опасное действие — пользователь получает вопрос, который выглядит примерно так:
Обойти это подтверждение или поменять его внешний вид нельзя. То есть, согласие посетителя действительно необходимо.
Произвольному апплету посетитель доверять не будет, но если он доверяет сайту — то разрешит. Например, если функционал находится в админской части сайта, или это сайт для банка, или это сервис, за который посетитель платит вам деньги… Тогда посетитель уже доверяет и позволит вашему апплету выполниться.
Java может делать все от имени посетителя, совсем как установленная десктопная программа. В целях безопасности, потенциально опасные действия требуют подписанного апплета и доверия пользователя.
Java требует больше времени для загрузки
Среда выполнения Java должна быть установлена на компьютере посетителя и включена. Таких посетителей в интернет — около 80%.
Java-апплет не интегрирован с HTML-страницей, а выполняется отдельно. Но он может вызывать функции JavaScript.
Подписанный Java-апплет - это возможность делать все, что угодно, на компьютере посетителя, если он вам доверяет. Можно вынести в него все вызовы, которым нужно обойти контекст безопасности, а для самой страницы использовать JavaScript.
ActiveX для IE и NPAPI для остальных браузеров позволяют писать плагины для браузера, в том числе на языке C. Как и в ситуации с Java-апплетом, посетитель поставит их в том случае, если вам доверяет.
Эти плагины могут как отображать содержимое специального формата (плагин для проигрывания музыки, для показа PDF), так и взаимодействовать со страницей.
ActiveX при этом еще и очень удобен в установке. Лично я - не фанат Microsoft, но видел отличные приложения, написанные на ActiveX и я могу понять, почему люди используют его и привязываются к IE.
Adobe Flash — кросс-браузерная платформа для мультимедиа-приложений, анимаций, аудио и видео.
Flash-ролик — это скомпилированная программа, написанная на языке ActionScript. Ее можно подключить к HTML-странице и запустить в прямоугольном контейнере.
В первую очередь Flash полезен тем, что позволяет кросс-браузерно работать с микрофоном, камерой, с буфером обмена, а также поддерживает продвинутые возможности по работе с сетевыми соединениями.
Сокеты, UDP для P2P и другие продвинутые возможности по работе с сетевыми соединениями
Поддержка мультмедиа: изображения, аудио, видео. Работа с веб-камерой и микрофоном.
Flash должен быть установлен и включен. А на некоторых устройствах он вообще не поддерживается.
Flash не интегрирован с HTML-страницей, а выполняется отдельно.
Существуют ограничения безопасности, однако они немного другие, чем в JavaScript.
JavaScript и ActionScript могут вызывать функции друг друга, поэтому обычно сайты используют JavaScript, а там, где он не справляется — можно подумать о Flash.
Язык Dart предложен компанией Google как замена JavaScript, у которого, по выражению создателей Dart, есть фатальные недостатки.
Сейчас этот язык, хотя и доступен, находится в стадии разработки и тестирования. Многие из возможностей еще ожидают своей реализации, есть ряд проблем. Другие ведущие интернет-компании объявляли о своей незаинтересованности в Dart. Но в будущем он может составить конкуренцию JS, если его доведут до ума.
Язык JavaScript уникален благодаря своей полной интеграции с HTML/CSS. Он работает почти у всех посетителей.
..Но хороший JavaScript-программист не должен забывать и о других технологиях. Ведь наша цель — создание хороших приложений, и здесь Flash, Java, ActiveX/NPAPI имеют свои уникальные возможности, которые можно использовать вместе с JavaScript.
На Dart сейчас тратить время не стоит, но, возможно, будет иметь смысл поглядеть на него через годик-другой.
К сожалению, в одной статье не просто дать все знания про альтернативные браузерные технологии. Но я - старался. Если ты проявишь интерес к раскрытию подробностей,я обязательно напишу продолжение! Надеюсь, что теперь ты понял что такое альтернативные браузерные технологии и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend)
Из статьи мы узнали кратко, но содержательно про альтернативные браузерные технологии
Комментарии
Оставить комментарий
Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend)
Термины: Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend)