Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: GUI и Java FX приложения > Динамичные GUI


Автор: Platon 28.11.2007, 23:57
Здравствуйте, уважаемые.

Скорбно видеть, что на Java мало таких убойных приложений, чтоб все вращалось и крутилось. Или может я не там ищу. Flash-ки крутятся только так, причем без лишних тормозов.
Я так полагаю, чтоб была такая функциональность, нужен какой-то фреймворк.
В общем, требуется реанимация.

Добавлено через 4 минуты и 47 секунд
Т.е. хочется увидеть исходники красивого правильного приложения, аплета, в общем, чего угодно.

Добавлено через 12 минут и 13 секунд
К примеру, http://www.finetune.com/desktop/ еще прикинул, можно сделать, хотя сомневаюсь, что оптимально, но вот к примеру http://www.samsung.ru/ вот это я вообще не представляю как сделать?

Автор: nornad 29.11.2007, 04:39
Eclipse не подходит в качестве примера? Имхо, всё очень даже вращается и крутится. smile
Из закрытых приложений - InteeliJ IDEA. Тоже, по-моему, вполне хорошо бегает.

Автор: bio_hazard 29.11.2007, 08:16
Приложений таких много поищи внимательнее в сети. А flash зло.

Автор: batigoal 29.11.2007, 09:08
Цитата(bio_hazard @  29.11.2007,  09:16 Найти цитируемый пост)
А flash зло.

Безосновательное утверждение.

Автор: Platon 29.11.2007, 09:20
nornad, нет, это не то. Я привел примеры по ссылкам, по ним кто-нибудь заходил?
Хочется что-то мультимедийное. Как грится, навел  мышь на кнопочку, и всюду фейерверки.

Добавлено @ 09:24
Flash - не зло. 1. Они выиграли борьбу с аплетами. 2. у них установочный файл весит всего 1.1 МБ, при этом налево и направо рассыпаны выдающиеся flash-анимированные ролики, я думаю, у вас просто рассистские выкрики ^_^

На сколько я знаю Java тоже засуетились и предложили миру новую вещь JavaFX, может в этом районе есть сдвижки?

Добавлено @ 09:24
а да, 3. в отличии от аплетов, flash ролики не тормозят.

Я уж не знаю, как так люди в большом количестве делают качественные ролики. За счет лучшей доступности flash исходников, или особой политики макромедии в сфере обучения своим технологиям. Но реально Flash цветет и пахнет.

Автор: Foo 29.11.2007, 10:56
Помоему на сегодняшний день Flash/Flex приложения это оптимальный выбор при написании GUI для web. По следующим причинам:

1. Как не прикручивай AJAX, всеравно GUI на flex будет работать быстрее.

2. Какие не юзай LookAndFeel для десктоп приложений, или стили для web всеравно на Flesh нарисуеш красивее.

3. Какие бы класные программисты не писали GUI для web, всеравно каждый браузер отобразит его по своему (и даже разные версии одного и тогоже браузера).

На сегодняшний день, в качестве конкурента Flash, SUN продвигает свою технологию http://www.sun.com/software/javafx/ которая пока что очень сырая и даже нормального примера красивого приложения не найти, Microsoft продвигает технологию http://silverlight.net/. Покачто и FlaxhFX и SilverLight далеко позади Flash в плане качества и обьемов использования. Думаю единственная проблема, по которой Flesh не очень часто используют в качестве GUI для java приложений - это отсутствие возможности нормальной интеграции между ними. Приходится использовать веб сервисы или еще чтото придумывать, что занимает очень много времени и ресурсов.

Ну это так, мысли вслух, если по теме, то я сейчас пишу небольшое desktop приложения на Swing, в котором тоже должно быть как можно больше анимации. Я использую https://substance.dev.java.net/ - на мой взгляд самый красивый и легконастраиваемый lookandfeel из бесплатных. А вообще с анимацией очень тяжело, планирую ещё ипользовать компоненты из http://swinglabs.org/, может с помощью них получится создать чтото более красивое...

P.S. http://www.lincoln.com/reachhigher/

Автор: batigoal 29.11.2007, 13:00
Цитата(Foo @  29.11.2007,  11:56 Найти цитируемый пост)
На сегодняшний день, в качестве конкурента Flash, SUN продвигает свою технологию JavaFX которая пока что очень сырая и даже нормального примера красивого приложения не найти,

К нам приезжали сановцы с демонстрацией FX'а. Красивенько, но он действительно еще слишком сырой даже для бета-тестирования. Примеро законченного приложения показать не смогли.
Потенциальная прелесть FX для нашей конторы - возможно, его буду тоддерживать не только PC, но и мобильные платформы, и телеприставки. Но это дело будущего.

Автор: Platon 29.11.2007, 14:33
batigoal, на сколько я знаю, не "возможно", а точно.

Автор: batigoal 29.11.2007, 14:47
Цитата(Platon @  29.11.2007,  15:33 Найти цитируемый пост)
batigoal, на сколько я знаю, не "возможно", а точно.

Пока они не выйдут, точно ничего утверждать нельзя. А я о планах производителей set-top boxes переводить свои коробки на FX я покуда не слышал.

Автор: SuperFly 29.11.2007, 15:00
А у меня вот вопрос.
Я хочу игрушку делать вебную. Что мне лучше подойдет?
JWS или RIA FX?
У JWS - большой минус, что нужно 15 метров JRE, + приложение не управляемое получается, в плане переносимости на ДР комп
У Flash и его компании тоже минус 1. Люди, во всяком случае в моем городе, пока истерично относятся к Flash, мол много весит ваша игрушка.

Автор: Platon 29.11.2007, 16:03
https://liquidlnf.dev.java.net/
По моему вот самый красивый LaF

Но мы не об этом.

Я хотел бы найти хотя бы 1 приложение с открытым кодом, чтоб посмотреть как правильно навешивать визуальные эффекты на приложение.

Автор: powerOn 29.11.2007, 17:45
Цитата(Platon @  29.11.2007,  16:03 Найти цитируемый пост)
Liquid LaF
По моему вот самый красивый LaF

Посмотри еще вот этот: https://substance.dev.java.net/

Автор: Kangaroo 29.11.2007, 17:55
Цитата(Platon @  29.11.2007,  15:03 Найти цитируемый пост)
Liquid LaF
По моему вот самый красивый LaF

А по моему - ужасный  smile мне было бы не приятно работать с таким.


Цитата(powerOn @  29.11.2007,  16:45 Найти цитируемый пост)
Посмотри еще вот этот: Substance

Этот получше smile

Автор: w1nd 29.11.2007, 18:06
Alloy LaF кто-нибудь видел?

Автор: powerOn 29.11.2007, 18:14
Цитата(w1nd @  29.11.2007,  18:06 Найти цитируемый пост)
Alloy LaF кто-нибудь видел? 

видели, хороший, но денежку просит.
вот кстати сайт, где много LAF-в собрано: http://javootoo.com/

Автор: Platon 29.11.2007, 18:29
Как-то мы опять съехали на LaF.

Тут наверно не в них счастье. Видимо с яркими приложениями существует большая нехватка...
По ответам я уяснил, что только FX технологиям такое под силу, чтож... придется и ее осваивать :(

Автор: Platon 29.11.2007, 21:58
Я поторопился отчаиваться, нашел в интернете исходники к книжке "Filthy Rich Clients", осталось только саму книжку найти...

Уважаемые! никто этой книжки не встречал в электронке?

Автор: Platon 30.11.2007, 10:19
На сколько я смог усвоить.
2 основных столпа динамического приложения - это null-Layout, и фиксированные размеры панели, в которой ведутся изменения. Для игры в определенном режиме это не составит труда ^_^
Начинаем графическую экспансию!

Автор: Foo 30.11.2007, 11:50
вопрос в том как при null-Layout обеспечить нормальную масштабируемость при различных разрешениях.

Автор: Platon 30.11.2007, 13:04
Цитата(Foo @  30.11.2007,  12:50 Найти цитируемый пост)
вопрос в том как при null-Layout обеспечить нормальную масштабируемость при различных разрешениях. 


Цитата(Platon @  30.11.2007,  11:19 Найти цитируемый пост)
Для игры в определенном режиме это не составит труда

Автор: 1024 12.12.2007, 12:04
у меня есть сайт примеров по SWING/JavaFx GUI
http://molgav.nn.ru/

все с исходниками и на русском. Есть пример http://molgav.nn.ru/index.php?view=article&catid=33%3Aexample&id=54%3A-substance-java-look-aamp-feel&option=com_content&Itemid=55

по JavaFx есть http://molgav.nn.ru/index.php?view=article&catid=34%3Aexample&id=45%3A--javafx&option=com_content&Itemid=53 - это JDBC/Derby

Чёт мне кажется что они не особо уродливые. Или я не прав?

Касательно апплетов - по-моему это ни к чему. Веб интерфейс должен быть легковесным и везде запускаться без плагинов, не надо там ни флеша ни жавы ни сильверлайта, нужен просто хороший GUI-дизайнер.

И ажакс этот тож баловство, единственно работающий это в сервисах Google, остальное лажа какая-то.

Автор: Platon 12.12.2007, 14:24
Я кстати думал о JFX, и на вашем сайте был.
Вы как человек занимающийся этим, рекомендовали бы мне использовать JFX с целью написания Web-игрушки (язык не повернется сказать браузерной, потому что dhtml не хочется использовать)? Или эта технология тоже тяжеловата?

Автор: Platon 12.12.2007, 14:43
Цитата(1024 @  12.12.2007,  13:04 Найти цитируемый пост)
Касательно апплетов - по-моему это ни к чему. Веб интерфейс должен быть легковесным и везде запускаться без плагинов, не надо там ни флеша ни жавы ни сильверлайта, нужен просто хороший GUI-дизайнер.

В каком смысле, всё въехать не могу... В смысле html катит, лишь бы был хороший дизайнер?

Автор: 1024 12.12.2007, 14:57
хороший дизайнер это тот кто профессионально занимается дизайном пользовательского интерфейса. Сама технология значения не имеет.

По апплетам на JavaFx - первая версия среды выйдет только весной.

По апплетам вообще - для этих сильверлайтов с жавами нужно заставлять пользователя ставить какие-то плагины. Обычно это неудобно, они могут быть большими. Для сильверлайта это будет решено когда микрософт всех заставит перейти на висту.

Дополнительно есть проблемы с безопасностью и совместимостью.

Проще написать обычное десктопное приложение которое коннектится к серверу и всё рисует в обычных окошках. 

По-моему игра не стоит свеч.

Автор: Platon 12.12.2007, 15:03
Попробовал я позапускать JFX приложения с официального сайта, попробовал презентацию Motorola, ууух как тормозило всё у меня... Жестоко однако, я даже аж расстроился что так всё плохо :( Вывод такой, что на java в ближайшее время красочного динамичного Гуи не нарисуешь.

Автор: AlexeyVorotnikov 12.12.2007, 15:18
Цитата(Platon @ 12.12.2007,  15:03)
Попробовал я позапускать JFX приложения с официального сайта, попробовал презентацию Motorola, ууух как тормозило всё у меня... Жестоко однако, я даже аж расстроился что так всё плохо :( Вывод такой, что на java в ближайшее время красочного динамичного Гуи не нарисуешь.

Всё-таки непонятно почему Вы пришли к такому выводу. На Java пушут весьма динамичные приложения влоть до 3D игр.
Сам недавно игрался Jake2 -- порт Quake2 на Java.

Автор: 1024 12.12.2007, 15:21
я ж написал - JavaFx выходит только весной. То что сейчас это альфа (даже не бета). Просто в сун решили что им так удобней собрать отзывы.

- будет компилятор а не интерпретатор как сейчас (компилятор пока отдельно на их сайте)
- рантайм войдёт в JRE v7 - это как раз для апплетов
- будет доступно consumer JRE т.е. когда не всё ставится а маленький инсталлятор на 300кб и только нужные в данный момент библиотеки
- в нетбинсе будет визуальный плагин чтоб просто мышкой можно было формы рисовать

ну, так они обещают

Автор: Platon 12.12.2007, 15:21
3D игры проще, у них родные библиотеки OGL, а представьте, что всё было бы на Java, сомневаюсь, что шустро бегало бы.

Автор: serger 12.12.2007, 17:02
Цитата(Platon @ 12.12.2007,  15:21)
3D игры проще, у них родные библиотеки OGL, а представьте, что всё было бы на Java, сомневаюсь, что шустро бегало бы.

А где не так?

В принципе в этом и смысл. Использовать стандартные библиотеки. Они написаны. Смысл их переписывать под что-либо? %)

Автор: Platon 12.12.2007, 17:04
Смысл в том что они родные. Так же как используют SWT и Jambi, чтоб облегчить страдания.

Добавлено через 37 секунд
Ладно, не будем съезжать до темы, "Очередные данные о медленности Java"

Автор: AlexeyVorotnikov 12.12.2007, 17:24
Цитата(Platon @ 12.12.2007,  15:21)
3D игры проще, у них родные библиотеки OGL, а представьте, что всё было бы на Java, сомневаюсь, что шустро бегало бы.

Ну хорошо, я сам где-то лет 5 назад написал игрушку типа Арканоида, используя исключительно Swing. И ничего, шарики по экрану довольно шустро скакали.  smile 

Автор: Platon 12.12.2007, 17:28
AlexeyVorotnikov, я полагаю игрушка уже не сохранилась, но попробую попросить глянуть ;)

Автор: AlexeyVorotnikov 12.12.2007, 17:30
Скорее всего, она действительно не сохранилась. Приду домой, покопаюсь в старых исходниках.

Автор: batigoal 12.12.2007, 17:34
Цитата(1024 @  12.12.2007,  16:21 Найти цитируемый пост)
- в нетбинсе будет визуальный плагин чтоб просто мышкой можно было формы рисовать

Уже есть, при мне рисовали в нем UI. Хотя может, это и ещё не выпущенная версия.

Автор: serger 12.12.2007, 17:55
Цитата(Platon @ 12.12.2007,  17:04)
Смысл в том что они родные. Так же как используют SWT и Jambi, чтоб облегчить страдания.

Ну вот можно привести хоть одну игрушку, которая не использует стандартные openGL и(или) DirectX библиотеки?!

Не знаю для чего создавали SWT, но он позволяет упростить представления ГУИ в стандартном виде для данной ОС. (Кстати, в этом плане я не понимаю Swing - уж больно он однобоко представлен). И лучше в неё(с ней) интегрироваться. Ну а в этом плане страдания облегчаются разработчикам не только в оптимизации по скорости, но и в интеграции с системой, жертвуется некоторой универсальностью.

Автор: 1024 12.12.2007, 21:56
Цитата

Уже есть, при мне рисовали в нем UI


я говорю не про Java/SWING а про JavaFx. На данный момент нетбинсовый и эклипсовые плагины не визуальные.

Добавлено через 6 минут и 52 секунды
по поводу игрушек и всего что касается OpenGL и DirectX - есть набор библиотек которые либо эмулируют рендер либо передают команды сопроцессору видеокарточке. 
Ни халва ни дум ни какие-то другие движки современных игрушек непосредственно обсчётом полигонов и выводом на экран не занимаются. Для этого есть видеокарты. А из чего обращаться к библиотекам поддержки неважно, что из жавы что из дельфи что из васика.

Автор: powerOn 12.12.2007, 22:32
Цитата(serger @  12.12.2007,  17:55 Найти цитируемый пост)
(Кстати, в этом плане я не понимаю Swing - уж больно он однобоко представлен). 

Вот те на... несколькими же постами выше обсуждали Look And Feel-ы....

Автор: batigoal 12.12.2007, 22:59
Цитата(1024 @  12.12.2007,  22:56 Найти цитируемый пост)
я говорю не про Java/SWING а про JavaFx.

Я тоже. Сановцы приезжали, и пытались там что-то сообразить, с переменным успехом.

Автор: serger 13.12.2007, 06:25
Цитата(powerOn @ 12.12.2007,  22:32)
Вот те на... несколькими же постами выше обсуждали Look And Feel-ы....

Я не про представление вид на экране, а про вААЩе взаимодействие с системой в целом, о сути.
Трудно чётко описать суть претензий. Это даже не претензии. Это факт, никуда не денешься.
(Или "Дудочка" или "Кувшинчик".)

Ну как бы 2 противоположных принципа. Оба хоть и универсальны, но ограничивают. Просто по-разному.

Автор: 1024 13.12.2007, 13:30
Цитата

а про вААЩе взаимодействие с системой в целом, о сути


если не в состоянии сформулировать что нужно получить то и сделать это не получится.


Автор: w1nd 14.12.2007, 01:36
Цитата(Platon @  12.12.2007,  17:04 Найти цитируемый пост)
Смысл в том что они родные. Так же как используют SWT и Jambi, чтоб облегчить страдания.

SWT и Jambi используют для получения специфических страданий. Выигрыша в скорости нет и не было.

Автор: AlexeyVorotnikov 14.12.2007, 13:43
Цитата(Platon @ 12.12.2007,  17:28)
AlexeyVorotnikov, я полагаю игрушка уже не сохранилась, но попробую попросить глянуть ;)

Таки мне удалось её найти smile
Правда один из самых первых вариантов, как говорится, proof of concept.
Кому интересно, можете посмотреть. Для компиляции она требует библиотеку Log4J.

Автор: Platon 14.12.2007, 19:36
Цитата(w1nd @  14.12.2007,  02:36 Найти цитируемый пост)
для получения специфических страданий.

Фишечно сказано smile

AlexeyVorotnikov, а че т оне робит (
null pointer
at com.vansoftware.arkanoid.Arkanoid0.main(Arkanoid0.java:786)

Ну, на самом деле, для проверки быстродействия  не самый подходящий вариант... всё таки думаю, надо пожесче делать. я вот танчики сделал, если вы видели, там тоже всё на Swing, но даже там я не считаю, что это показатель быстродействия.

Автор: AlexeyVorotnikov 17.12.2007, 11:48
Цитата(Platon @ 14.12.2007,  19:36)
Цитата(w1nd @  14.12.2007,  02:36 Найти цитируемый пост)
для получения специфических страданий.

Фишечно сказано smile

AlexeyVorotnikov, а че т оне робит (
null pointer
at com.vansoftware.arkanoid.Arkanoid0.main(Arkanoid0.java:786)

Ну, на самом деле, для проверки быстродействия  не самый подходящий вариант... всё таки думаю, надо пожесче делать. я вот танчики сделал, если вы видели, там тоже всё на Swing, но даже там я не считаю, что это показатель быстродействия.

Полность стектрейс приведите. Кстати, а папочку resources к скомпилированным классам подложили? Она должна лежать рядом с папкой com.

А что подходящий вариант для проверки быстродействия?

Автор: 1024 17.12.2007, 11:50
Цитата

А что подходящий вариант для проверки быстродействия? 


http://molgav.nn.ru/index.php?option=com_content&view=article&catid=34:example&id=102:3d--javafx&Itemid=53

Автор: AlexeyVorotnikov 17.12.2007, 11:59
Цитата(1024 @ 17.12.2007,  11:50)
Цитата

А что подходящий вариант для проверки быстродействия? 


http://molgav.nn.ru/index.php?option=com_content&view=article&catid=34:example&id=102:3d--javafx&Itemid=53

Это будет тестирование быстродействия ускорителя трёхмерной графики.

Автор: 1024 17.12.2007, 13:36
а нужно что? Вычисление факториала? Любой большой программный продукт является комплексным решеним а значит сравнивать быстродействие какой-то отдельной функции некорректно. 

Автор: Platon 17.12.2007, 21:26
1024, на самом деле я опасаюсь только за работу с Graphics и Graphics2D.

Автор: w1nd 17.12.2007, 22:08
Кхм, а чем не подходит для бенчмаркинга 2D приложение Java2Demo, поставляемое в составе JDK? 

Автор: Platon 31.12.2007, 00:14
w1nd, кстати, я его смотрел, даже на ускоренной( по сравнению с 1.5) 1.6 версией, на компе с 1 ядром 1.7ГГц ОЗУ 768МБ довольно заметны подтормаживания, не так чтобы комп замирал, но напряг есть.

Автор: w1nd 31.12.2007, 03:26
Цитата(Platon @ 31.12.2007,  00:14)
w1nd, кстати, я его смотрел, даже на ускоренной( по сравнению с 1.5) 1.6 версией, на компе с 1 ядром 1.7ГГц ОЗУ 768МБ довольно заметны подтормаживания, не так чтобы комп замирал, но напряг есть.

Где?

Автор: niasilil 6.1.2008, 10:10
Цитата(AlexeyVorotnikov @ 14.12.2007,  13:43)
Цитата(Platon @ 12.12.2007,  17:28)
AlexeyVorotnikov, я полагаю игрушка уже не сохранилась, но попробую попросить глянуть ;)

Таки мне удалось её найти smile
Правда один из самых первых вариантов, как говорится, proof of concept.
Кому интересно, можете посмотреть. Для компиляции она требует библиотеку Log4J.

Прелеееестно. И даже работает smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)