Модульні технології JavaScript

2
2800

JavaScript

Негативні сторони JavaScript, як це найчастіше буває, продовжують його переваги. Тісний зв'язок з HTML дає можливість без труднощів javaманіпулювати вмістом веб-сторінки, але при цьому він сильно обмежений щодо доступних загальнокомп'ютерних функцій, які дали б можливість реалізувати фрагменти дійсно інтерактивного інтерфейсу.

javaЯкщо говорити про комп'ютерні мови програмування, то у них немає ніяких обмежень (майже). Таким чином, приходить ідея додати до складу web-сторінки готову програму. У вікні веб-браузера такому об'єкту буде відповідати прямокутна область конкретних розмірів. За вміст цього вікна повністю відповідатиме підключена програма. Від додатка, який буде запущений на комп'ютері дана «вбудована» програма буде відрізнятися лише відсутністю власного веб-вікна і фіксованим положенням щодо інших елементів веб-сторінки.

На жаль, є велика кількість перепон для реалізації даної простої схеми.

  • Надавати будь-кому, хто цього захоче виконувати на своєму комп'ютері його програми - більше ніж ризикований задум. На відміну від JS-сценарію, ця програма цілком може заразити вірусом, або ж вкрасти конфіденційну інформацію.
  • Виконуваний файл програми, який буде скомпільований для однієї комп'ютерної платформи, не зможе працювати в іншій ОС, на іншій платформі і т. п. У web-сторінок немає можливості дізнатися, яка ОС встановлена ​​на комп'ютері користувача, так що питання вибору потрібної версії софту з декількох наявних варіантів відпадає. Цей момент можна обійти, якщо відправляти з сервера вихідний текст програми не у вигляді двійкового коду, для того щоб комп'ютер користувача сам його виконував. Таке рішення має свої недоліки: втрачається велика частина швид кодії, немає можливості застрахувати себе від помилок компіляції, а також потреба встановлювати інтерпретатор мови програмування.
  • І, останнє, досить важко забезпечити маленький об'єм файлу, який можна було б без проблем скачати з мережі. Обсяг файлу програми практично не піддається зміні без обмежень функціональності, причому значного.

Можна відзначити три головні технології вбудовування програмних об'єктів. Це plug-in modules (технологія додаткових модулів), аплети на мові Java, «компоненти ActiveX».

  • plug-in modules (технологія додаткових модулів) передбачає присутність двох компонентів: загального модуля, який потрібно завантажити і встановити один раз, а також об'єктів, що підключаються до HTML-сторінки. Об'єкти можуть складатися тільки з даних - наприклад, зображення або звукозапису в особливому форматі, який може обробляти тільки цей модуль. Коли ж вони містять в собі і програмний код, то вони, зазвичай мають невеликий об'єм, оскільки сама трудомістка частина реалізована всередині головного модуля. Це дає можливість домогтися малих обсягів завантажуваних даних. Питання безпеки при застосуванні модулів найчастіше не стоїть. Лише дуже нечисленні типи об'єктів мають можливість завдати ш коди комп'ютеру, але від них можна захиститися досить просто. А щодо несумісності платформ, то тут розробникам модуля потрібно створювати модулі для всіх ОС.
  • Аплети на мові Java, з урахуванням своїх особливостей, мають безліч схожих рис з модулями. Головний обсяг роботи при виконанні аплету лягає на програмну систему, яка іменується «віртуальною машиною Java». Вона входить до складу всіх популярних браузерів. Об'єкт, що підключається до web-сторінки, включає так названі «байтові коди», які є чимось середнім між скомпільованим двійковим файлом програм і вихідним текстом. Це компроміс між переносимістю та швид кодією. Функціональні можливості у java- аплетів обмежені сильніше, ніж у модулів (що підключаються). Тим не менш, Java зараховується до повнофункціональних мов, отже, дана мова в апплетах працює не з комп'ютером, а з віртуальною машиною, яка захищає комп'ютер від результатів роботи аплету. Безумовно, скрізь, де є захист, є можливість постаратися його обійти, проте в цілому Java- аплети вважають досить нешкідливою технологією.

JavaScriptНа жаль, у кожного з веб-браузерів віртуальна машина своя, тому аплет, який функціонує на одній машині, зрідка може не захотіти працювати на іншій. Крім того, як і всяка багаторівнева система, в порівнянні із звичайними програмами Java- аплети програють у швид кодії. І ще. Потреба програмувати «по справжньому» для створення java- аплетів, значно збільшує трудомісткість подібного процесу.

  •   «Компоненти ActiveX», які є технологією компанії Microsoft, один час хотіли скласти конкуренцію Java-апплетам. Вони були обмежені лише Internet Explorer і платформою Windows. Це галасливе і швидко забуте нововведення характеризувалося відсутністю «прокладки» між операційною системою і програмним модулем. Для вирішення безпеки створили систему «електронних підписів». Тому немає нічого дивного, що настільки ваговита система виявилася нежиттєздатною. На сьогоднішній день зрідка застосовуються тільки ActiveX-об'єкти самої компанії Microsoft.
Автор: Світ перекладів
ОЦІНИТИ НОВИНУ
5 (голосів: 1)

Комментарии:

  • avatar
    Алина - 17.02.2013, 15:39
    Отличный блог. Обязательно буду заглядывать.
  • avatar
    Ваня - 18.02.2013, 17:49
    Занятная статья — скопировала цитату и ссылку
ВВЕРХ