Я собираюсь развернуть свою Java-игру, чтобы показать ее моим друзьям и еще много чего, но у меня возникли проблемы с выбором между Java Web Start и апплетами.
При каких условиях предпочтительнее другого и какие преимущества/недостатки есть?
Я собираюсь развернуть свою Java-игру, чтобы показать ее моим друзьям и еще много чего, но у меня возникли проблемы с выбором между Java Web Start и апплетами.
При каких условиях предпочтительнее другого и какие преимущества/недостатки есть?
Если ваша игра будет потреблять много ресурсов процессора и памяти, я рекомендую развернуть ее как Java Web Start, поскольку апплеты работают медленнее.
Если у вас есть взаимодействие java-javascript, вам лучше использовать аплеты
Здесь вы можете найти таблицу с преимуществами/недостатками
Я бы запустил его, как и, и затем выберите, что использовать. Апплет будет хорошо сидеть на веб-странице. Приложение WebStart будет выглядеть как обычное приложение (только с небольшим треугольником, чтобы указать его из Интернета). С 6u10 апплеты могут использовать службы JNLP и могут быть вытащены на рабочий стол.
Java-апплеты имеют то преимущество, что они запускаются мгновенно без необходимости щелчка на чем-либо. Кроме того, апплеты будут автоматически запрашивать браузер для загрузки подключаемого модуля Java, если он еще не установлен. Это важно, если ваши конечные пользователи не очень технологичны.
Однако апплеты чрезвычайно ограничены в памяти (60 - 90 МБ), поэтому, если ваша игра использует много графики, вы заметите замедление производительности.
Если производительность является проблемой, вам, вероятно, придется использовать Java Web Start. Он не страдает от производительности, но гораздо сложнее развертывать и более сложно запускать конечных пользователей.
Фактически у вас могут быть как апплеты, так и веб-приложения с одним и тем же кодом апплета Java. Веб-запуск поддерживает запуск немодифицированного апплета .jar в отдельном фрейме, все, что вам нужно, это правильно написать файл JNLP. При необходимости вы можете указать параметры апплета в файле JNLP. Единственное различие заключается в том, что апплет выскочит в отдельный кадр, а не как часть веб-страницы, которая может быть или не быть проблемой. Почему бы не обеспечить как апплет, так и веб-ссылку? JNLP писать гораздо сложнее, чем тег апплета.
Я думаю, что не должно быть большой разницы между веб-стартом и производительностью апплета, если апплет не работает в старой JRE, которая является частью браузера. В любом случае, я бы не стал рекомендовать это, так как любое другое программное обеспечение, Java развивается и становится лучше с течением времени. Это может объяснить сообщения, говорящие о том, что приложение для веб-запуска выполняется намного быстрее, иначе это было бы очень трудно понять. Если апплет поддерживает также старые JRE, я думаю, вы можете просто указать номер низкой версии в JNLP, добавив +, чтобы он также мог работать с будущими версиями.
Поскольку Oracle не делает каких-либо успехов в доставке java-плагина, отличного от NPAPI, я бы сказал, что апплеты являются устаревшей технологией.
В противном случае мы бы погрузились в старую сеть IE-only. Банкам уже требуются браузеры IE, чтобы они не тратили много денег на модернизацию своего программного обеспечения. Мне жаль их.
Web Start требует, чтобы клиент установил приложение Java (и, возможно, JRE) на своих компьютерах. Если у них нет административных прав на установку программного обеспечения, это будет проблемой.