Переваги та недоліки інтерпретатора віртуальної машини Java

Молода бізнес-леді в гарнітурі

Агент з обслуговування клієнтів по телефону.

Авторство зображення: Переглянути запаси/Переглянути запаси/Getty Images

До появи Adobe Flash та інших сучасних веб-технологій власники сайтів використовували Java для створення привабливих інтерактивних веб-сайтів. Як і Flash, програма Java відтворює фільми, створює високоякісну графіку та підтримує складні програми, які нагадують настільні програми. Інтерпретатор віртуальної машини Java, який працює за лаштунками, дає вам можливість насолоджуватися цими перевагами, але має помітні недоліки.

Анатомія віртуальної машини Java

Термін Java має кілька значень; це може посилатися на мову програмування, яку розробники використовують для створення додатків, специфікацію інтерфейсу програміста програм або специфікацію віртуальної машини Java. Коли ви відвідуєте веб-сторінку, яка містить програму Java, яку також називають аплетом, ваш браузер активує віртуальну машину Java, яка інтерпретує код Java і запускає аплет. Як справжня обчислювальна машина, JVM обробляє інструкції та керує областями пам’яті.

Відео дня

Перевага: Java працює в захищеній зоні

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

Недолік: кіберзлочинці можуть використовувати віртуальну машину Java

Хоча JVM обмежує дії аплету, зловмисники все ще можуть використовувати слабкі місця платформи Java. Наприклад, на початку 2013 року Microsoft побачила три приклади аплетів, призначених для використання віддаленого виконання коду для зараження комп’ютерів. Oracle, розробник Java, випустив оновлення, яке забезпечує вашу безпеку, встановлюючи безпеку аплету за замовчуванням рівні на "Високий". Це налаштування гарантує, що ваш браузер попереджає вас, коли непідписаний аплет намагається зробити це бігти. Як зазначає Microsoft, «переважна більшість аплетів, які використовують уразливості безпеки, не підписані». Цифровий підпис на аплеті дає вам знати, хто його створив, і підтверджує, що ніхто не змінював аплет після творця підписав це.

Перевага: Один розмір підходить всім

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

Недолік: може знадобитися деяка збірка

Якщо ніхто ніколи не встановлював Java Runtime Environment на вашому комп’ютері, ви не зможете використовувати Java. Відвідайте веб-сторінку Перевірка версії Java та дотримуйтесь інструкцій, щоб завантажити та встановити останню версію, якщо у вас її немає. Хоча це не тривала інсталяція, можуть виникнути деякі проблеми, тому зверніться до сторінки усунення несправностей Java, якщо вам потрібна допомога, щоб установка запрацювала.

Додаткові переваги

На детальному рівні Java Virtual Machines використовує свій компілятор «точно вчасно» для перетворення коду Java на машинну мову низького рівня, яка працює так само швидко, як і звичайні програми. Оскільки браузери можуть кешувати цей скомпільований код, вони можуть повторно використовувати його пізніше, не завантажуючи його знову та не проходячи кроків компіляції.