Плюсы и минусы JavaFX и Silverlight

Я знаю, что уже есть вопрос о производительности Flex, JavaFX и Silverlight. Мой вопрос немного шире:

Мы оцениваем достоинства JavaFX и Silverlight в качестве технологии графического интерфейса пользователя, которая контролирует / настраивает наш серверный сервис (в настоящее время написанный на Java). Служба и графический интерфейс обычно находятся на одном компьютере, но удаленное управление (через браузер) также должно поддерживаться. В настоящее время мы разделены на 2 команды: одну.Net и одну Java, хотя у разработчиков Java также есть некоторый опыт.Net.

На мой взгляд, плюсы и минусы в настоящее время следующие:

Silverlight 4:

  • Плюсы:
    • Отличная интеграция с IDE
    • Хороший рабочий процесс для разработчиков и дизайнеров
    • Спектакль
    • Расширенная сторонняя поддержка (инструменты, элементы управления и т. Д.)
    • Много импульса и драйва от Microsoft
    • Очень хорошая интеграция вне браузера
  • Минусы:
    • Поддерживается только на Mac и Windows (поддержка Moonlight не соответствует стандарту)

JavaFX 1.2:

  • Плюсы:
    • Широкая поддержка платформ
  • Минусы:
    • Поддерживает только латинские наборы символов (в настоящее время)
    • Меньше дизайнерских инструментов
    • Мало или нет интеграции вне браузера. Обновление: по-видимому, есть поддержка вне браузера.
    • Производительность (по крайней мере, на демонстрациях, которые я просматривал на www.javafx.com)
    • зрелость

Пожалуйста, дайте мне знать, если я что-то упустил или что-то ошибаюсь, и что еще я не учел. Мы также рассмотрели Adobe AIR, но исключили его, поскольку все наши разработчики уже имеют опыт работы с Java и / или.Net.

Пожалуйста, не начинайте никаких огненных войн здесь. Это не религиозный вопрос, и мне бы очень хотелось получить несколько практических советов и фактов.

4 ответа

Несколько думает о JavaFX.

  • Поддерживает только латинские наборы символов (в настоящее время) (false) JavaFx использует стандартное представление строк Java, а также рендеринг полностью способен обрабатывать не латинские символы.
  • Меньше дизайнерских инструментов (правда), но взгляните на новейшие NetBeans (подробнее @ текст ссылки)
  • Мало или нет интеграции вне браузера (ложно) JavaFX работает на веб / настольных компьютерах, мобильных и новых платформах не планируется.
  • Производительность улучшается с каждым выпуском.
  • Срок погашения такой же, как у Silverlight, но с большей долей рынка на основе установленных виртуальных машин Java.

Ваша оценка JavaFX является своего рода неправильной.

Я играл с JavaFX последние месяцы, и я бы никому не рекомендовал начинать использовать его, если только ограничения (например, отсутствие поддержки Linux) не слишком жесткие. Поддержка IDE для JavaFX на данный момент нелепа. У вас нет справки по рефакторингу, нет автоформатов и даже нет помощи с отступами.

Мне нравится JavaFX, и я буду продолжать играть с ним, но для 2 одинаково хороших языков трудно преодолеть огромную разницу в среде IDE.

Silverlight также имеет Expression Blend для (вроде) WYSIWYG.

Я думаю, что решение в JavaFX было бы лучше, но его создание, вероятно, будет намного сложнее.

Я хотел бы немного подробнее рассказать о вашей идее о рабочих процессах IDE и dev/designer - я работаю с Silverlight уже полтора года, и должен сказать, что ключом к моему успеху был инструмент. На стороне разработчика очень полезна возможность пошагового выполнения кода в отладчике со стороны клиента на сторону сервера через вызов веб-службы. Мы наняли дизайнеров с опытом работы с набором инструментов Adobe и увидели, что они сразу же стали продуктивными в Blend (анимация пользовательского интерфейса, переходы между экранами, скрытие / отображение элементов и т. Д.). Соедините это с тем фактом, что Visual Studio и Blend могут использовать одну и ту же систему управления версиями, и вы получите отличную экосистему для быстрого объединения хорошо выглядящих веб-приложений.

Еще один профессионал для Silverlight - независимость от языка. Если вы выберете C#, вы также получите LINQ, лямбда-выражение и (скоро) параллельные циклы foreach.

Недавно я разрабатывал некоторые материалы на JavaFX.

Производительность JavaFX заметно улучшилась за последние 6 месяцев (между 1.0 и 1.2) и, как ожидается, улучшится с выпуском 1.3.

"Вне браузера" - это, по сути, JNLP (т. Е. Web-start). Это совершенно разумно из того, что я могу сказать. Например, WidgetFX написал настольную боковую панель в стиле Vista/7 полностью на JavaFX http://widgetfx.org/

Якобы есть "импульс и импульс" от Oracle - Ларри Эллисон был публично в восторге от этого - но это, конечно, сдерживается расследованием ЕС слияния Oracle и Sun.

Обратите внимание, что JavaFX не использует синтаксис Java. Это, однако, очень лаконичный и быстрый язык для написания GUI, но он имеет (относительно короткую) собственную кривую обучения. Однако он может включать в себя любые компоненты Swing (а их там довольно много) и может использовать классы Java.

Другие вопросы по тегам