Подтвердить что ты не робот

Что такое ответ Java WPF?

В настоящий момент я в основном человек .Net, но в последнее время я играю с Java, изучая, что там.

Теперь я ищу эквивалент Java для WPF. Я знаю, что я мог бы найти библиотеку OpenGL или два там, но это не так богато или просто, как система WPF.

4b9b3361

Ответ 1

Я думаю, что сочетание JavaFX, Swing, Java2D и Java JRE на базе браузера основано на решениях, которые предоставляет WPF:

  • Приложения JavaFX (фактически, любое приложение Java) могут запускаться в браузере или на рабочем столе
  • JavaFX обеспечивает поддержку видео высокого уровня.
  • JavaFX предоставляет сценарий анимации и визуальные специальные эффекты
  • Swing предоставляет возможности пользовательского интерфейса и может использоваться как в Java, так и в JavaFX
  • Java2D, который обеспечивает основу для всех задач рисования (включая Swing), использует преимущества аппаратного ускорения и поддержки DirectX.
  • JRE на рабочем столе или в браузере позволяет развертывать Java-приложения в нескольких средах (включая другие экраны, например, телеприставки или телефоны).

Ответ 2

Функциональный WPF является более полным, чем любой из JavaFX, Swing, AWT или Java2D. В конце концов, это была цель дизайна, чтобы привести все, что связано с презентацией в одной библиотеке. По производительности они примерно одинаковы, за исключением использования памяти, где Java является голодным болотом

Ответ 3

Я запрограммировал Aqua, Macintosh Quick Draw, Windows GDI и GDI +, Qt и .NET Winforms и WPF, безусловно, самый сложный API, который я использовал. Несмотря на то, что у него есть довольно функциональный набор функций, который лучше, чем предыдущие технологии, такие как swing, он не подходит для WPF. Он решает некоторые серьезные проблемы, которые страдают от графического программирования. Если вы идете из мира HTML/JS, его легко узнать, но если вы исходите из традиционного мира программирования графики, это большой сдвиг парадигмы. Несмотря на это, это намного проще, чем CSS/HTML/JS. Это чистый разрыв с устаревшими концепциями, которые поражают другие среды графического программирования.

Самая большая сила WPF заключается в том, что он независим от разрешения. Он может масштабироваться на всех устройствах без каких-либо изменений. Это требует небольшой работы для получения экранной версии чертежа и вывода его на принтер с высоким разрешением без потери разрешения.

Он также поддерживает запуск событий. Элементы пользовательского интерфейса могут реагировать на события других элементов пользовательского интерфейса или код вашего приложения, что делает возможным использование динамических интерфейсов. Это позволяет легко отделить ваш код от пользовательского интерфейса так, что даже HTML/JS не может достичь. Элементы могут транслировать и слушать события и соответственно реагировать.

Другим преимуществом является его высоко объектно-ориентированный и декларативный API. Используя XAML, вы можете легко построить рабочий интерфейс быстро и эффективно с помощью нескольких строк. В отличие от HTML/JS, его легче освоить, а его выход намного более предсказуем и эффективен. Вы даже можете полностью программировать WPF в коде, но, как правило, не стоит незначительного увеличения производительности. Лучшим способом является компиляция кода Xaml в .NET.

Кроме того, инструментарий, доступный для WPF, очень обширен по сравнению с JavaFX. Существует множество инструментов, включая Expression Blend. Существуют также многочисленные инструменты для приема векторных графических форматов, таких как SVG и Adobe Illustrator, и преобразования их в XAML. Теперь дизайнеры и программисты могут сотрудничать в области настольных изданий таким образом, что это было очень сложно сделать раньше.

Таким образом, WPF настолько всеобъемлющий, что команда Mono предпочла не переносить его на базу кода Mono. Они заявили, что потребуется много лет для полного внедрения разумного набора функций. Если бы существовала совместимая с Mono версия WPF, это сделало бы .NET де-факто кросс-платформенной платформой приложений. На самом деле, он может даже заменить HTML/CSS, поскольку он намного мощнее и легче обвести голову. К сожалению, Microsoft не увидела бизнес-пример для межплатформенного WPF. Это почему SilverLight/WPF проиграл HTML5/JS. Благодаря этой ошибке они теперь вынуждены передавать не только веб-страницы, но и часть рабочего стола на HTML 5/JS.