Войти
ФлеймФорумПрограммирование

Стоит ли изучать java? (2 стр)

Страницы: 1 2 3 48 Следующая »
#15
19:51, 1 авг. 2018

А я что-то сел осиливать яву и как-то: все графические либы отвратительные на вид, особенно встроенная, всё тормозит (начиная с редактора кода, заканчивая моим кодом, даже luajit показался мне более прытким, чем JVM (JVM дольше заводится, чем код должен исполняться - позорище какое-то)).
Что-то меня не впечатлило совсем.
Да - всё значительно проще собирается, чем у плюсов, но как-то не уровень языков с пакетными менеджерами.

Сишарп лично мне понравился ещё меньше, хоть и как язык он поприятнее.

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


#16
20:29, 1 авг. 2018

Кот Зловред
> даже luajit показался мне более прытким
Да ладно. "Даже" - это где-то в районе питона.
luajit шустрый вроде.

#17
20:57, 1 авг. 2018

beejah
Очень шустрый и заводится он значительно быстрее, чем JVM. У меня лично впечатления от JVM, что он медленнее luajit. Мне не понравилось.

#18
21:44, 1 авг. 2018

graphIT
> За 40 лет так и не завезли хоть какого-то трэд пула в стандартную библиотеку,
> или я не нашел?
https://en.cppreference.com/w/cpp/thread/async

#19
9:19, 2 авг. 2018

Кот Зловред
Смотря что ты имел ввиду под встроенной графической библиотекой.
AWT - Обёртка над нативным API(под виндой - GDI)
Если Java3D - устаревшее говно(оно было создано не столько для игр, сколько для симуляций и.т.п), хотя она не встроена, но это часть JCP.
В качестве "быстрой" графической библиотеки можешь попробовать JavaFX - это что то вроде FireMonkey в Java, гуй реализованный полностью на OpenGL. При этом с некоторыми костылями на неё можно писать и игры(ну как в Delphi по старинке все делали, кидали TImage на форму и двигали :))
Но по правде говоря, JMonkey или lwjgl я не пробовал, так что сказать не могу.

Но про тормознутость не согласен. Если у тебя Pentium 4, то чо жаловаться?
У меня на серверном Xeon NetBeans летает под любую платформу(и j2me, и j2se).

Но в целом, Java становится только шустрее.

#20
9:28, 2 авг. 2018

Кстати на j2me ситуация в целом получше.
Несмотря на то что там кастрированная java(профиль cldc), уровня 1.3 - в целом там есть на чём разогнаться.
Практически во всех телефонах на j2me есть софтварная реализация m3g(местное gapi), и учитывая сравнительно слабые характеристики тех телефонов(1-2мб озу, 233мгц памяти), умудрялись делать неплохие игры с приемлемым фпс(15-20). Но в этом случае придется заниматься байтодрочерством См. STALKER Mobile, Galaxy On Fire 2, Wolfenstein RPG, различные FPS.
Можно ещё посмотреть 2D игры от Gameloft. Не то чтобы они нагружали процы на 100%, но они тоже выглядят неплохо(например серия Gangster с открытым миром).

#21
9:29, 2 авг. 2018

Кот Зловред
> JVM дольше заводится, чем код должен исполняться - позорище какое-то
Java больше ориентирована на серверный софт и прочий энтерпрайз, где время непрерывной работы может исчисляться месяцами. На фоне этого время старта JVM надо с микроскопом искать, зато GC и куча готовых библиотек помогают в разработке, а статическая типизация и многоуровневый профилирующий JIT — в работе разработанного. В маленьких короткоживущих программках с большой вероятностью до JIT-а дело даже не дойдёт, т.к. виртуальная машина банально не успеет собрать достаточно статистики для компиляции.

#22
10:01, 2 авг. 2018

Dinosaur
> В маленьких короткоживущих программках с большой вероятностью до JIT-а дело
> даже не дойдёт, т.к. виртуальная машина банально не успеет собрать достаточно
> статистики для компиляции.
у азуловской машины как раз таки есть возможность сохранять статистику между перезапусками.

#23
10:46, 2 авг. 2018

Delfigamer
> graphIT
> > За 40 лет так и не завезли хоть какого-то трэд пула в стандартную
> > библиотеку,
> > или я не нашел?
> https://en.cppreference.com/w/cpp/thread/async

Под MSVC  тут пул, а вот когда я пробовал на gcc (года 2 назад) у меня каждый раз новый поток создавался, что не очень хорошо, так как операция эта недешёвая.
Да в этой штуке пул и не обещан никем.

#24
10:52, 2 авг. 2018

se-sss
ахаха, плюса

+ Показать
ны, опять сасалити.
#25
13:19, 2 авг. 2018

monobogdan
> j2me
Оно вообще живое еще, шталь.

#26
(Правка: 14:07) 14:07, 2 авг. 2018

beejah
Я для души пишу разные маленькие игры под j2me, у меня и свой движок есть для них(см. тему в проектах/утилиты).
Ну а так да, формально живо, всё ещё мобилки по 500руб. редко но содержат в себе кривую референсную реализацию jvm, cldc, midp 2.0. За доп. JSR вроде m3g или jsr 75 можно забыть.

#27
(Правка: 15:22) 15:21, 2 авг. 2018

Dinosaur
У меня в конторе серверный софт на С++ работает месяцами на таком количестве компов, что тут большинство никогда столько не видело.
Когда компилируемый язык (С#/Java) сливают динамическому на простых утилах - это очень-очень печально и никаких оправданий у них нет. Не место этой платформе на мобильниках при таких раскладах.
Мифическая убер оптимизация явы почему-то в упор не видна во всяких эклипсах и джетбрейнсах, не смотря на то что они часами работают, в них даже символы с ощутимой задержкой появляются (в двадцать первом веке, между прочим).

#28
15:39, 2 авг. 2018

Кот Зловред
Ты не в сортире работаешь случаем?

#29
(Правка: 16:53) 16:51, 2 авг. 2018

Кот Зловред
> Не место этой платформе на мобильниках при таких раскладах.
Java удачно работала как на очень слабеньких midp(200мгц ARM, 2МБ ОЗУ - это минимальная конфигурация, и многие телефоны имели именно такие хар-ки), и даже на таких телефонах запускались "большие" STALKER Mobile и Galaxy On Fire 2(рекомендую погуглить, или поиграть на альтернативной реализации midp 2.0), так и на современных мощных смартфонах. Напомню что в большинстве телефонов была софтварная референсная реализация M3G, написанная на Java. Ускорители стояли лишь в топовых Symbian флагманах.
А тот же BREW увы провалился(платформа на год младше j2me, предлагала стандартизированную платформу с крестами для использования на разных телефонах), который определенно умел больше но был гораздо сложнее, и имел свои недостатки.
Если бы не было ни Unity ни уеча, все маленькие игры на андроид сейчас бы писали на Java, или JS.

Страницы: 1 2 3 48 Следующая »
ФлеймФорумПрограммирование