Недостатки java?

Любые обсуждения, не нарушающие правил форума.

Модератор: Модераторы

Re: Недостатки java?

Сообщение vitaly_l » 19.11.2015 19:17:27

debi12345 писал(а):ей требуется выполнить гораздо меньше инструкций

И что? Кто виноват в том что, JAVA продумана в этой части лучше? Язык Си? Язык Pascal?
Или же программисты, которые допустили что, их код выполняет больше инструкций нежели JAVA?


.
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: Недостатки java?

Сообщение debi12345 » 19.11.2015 19:44:21

И что? Кто виноват в том что, JAVA продумана в этой части лучше? Язык Си? Язык Pascal?

Это фишка виртуальной машинерии. С/Паскаль такой машины не создают - а значит не могут иметь этой фишки.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: Недостатки java?

Сообщение vitaly_l » 19.11.2015 19:49:17

debi12345 писал(а):Это фишка виртуальной машинерии. С/Паскаль такой машины не создают - а значит не могут иметь этой фишки.

И что? Кто виноват?
Вывод: С/Паскаль или код систем в целом - плохо продуман программистами, которые допустили что, JAVA... - быстрее системного языка.
Всему приходится обучать этих программистов... ох уж и тяжёлая работа у художников...

.
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: Недостатки java?

Сообщение debi12345 » 19.11.2015 20:08:46

Вывод: С/Паскаль или код систем в целом - плохо продуман программистами, которые допустили что, JAVA..

С/Pascal полагаются, что роль умной виртуальной машины будет выполнять операционка (в первую очередь LIBC/MSVCRT) - но она (ОСь) не может получать от таких программ контестные "подсказки" какие дают java-проги своей виртуальной машине. В итоге более быстрые LIBC/MSVCRT выполняют в разы больше машинных инструкций, чем JVM (к тому же по-максимуму оптимизирванной , в том числе под новейшие SSE/AVX-инструкции, огромной командой опытнейших высоко-оплачиваемых разработчиков) - и в итоге проигрывают. Что тут можно поделать ? Все и вся переводить на виртуальные машины?
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: Недостатки java?

Сообщение vitaly_l » 19.11.2015 20:26:56

debi12345 писал(а):Все и вся переводить на виртуальные машины?

Для разрешения проблемы замените файл Msvcrt.dll его исходной версией с помощью консоли восстановления Windows XP. И сделайте это пожалуйста, где нить в Линуксе...
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: Недостатки java?

Сообщение debi12345 » 19.11.2015 20:31:13

И сделайте это пожалуйста, где нить в Линуксе...

В Линуксе кстати приняли-таки кое-какие меры - внедрив MULTIARC(сразу несколько версий LIBC, автовыбираемые под конкретный проц на конретном компе)
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: Недостатки java?

Сообщение Лекс Айрин » 19.11.2015 20:46:49

vitaly_l писал(а):И сделайте это пожалуйста, где нить в Линуксе...

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

Добавлено спустя 2 минуты 9 секунд:
А для замены библиотеки ее предыдущей версией в линуксе пользуются процедурой даунгрейда.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Недостатки java?

Сообщение Mikhail » 19.11.2015 22:20:56

debi12345 писал(а):грубо говоря - ей требуется выполнить гораздо меньше инструкций

неправда.
debi12345 писал(а):ричем перед выполнением каждого куска машинного кода она точно знает рантайм-контекст (место в программе после всех предыдущих циклов и ветвлений) где находится - оптимизируй по месту не хочу

Повторю еще раз, некоторые оптимизирующие компиляторы тоже так умеют. Сначала генерируется код, затем программа запускается на выполнение и собирается статистика, после чего оптимизация выполняется еще раз. Можно и вручную - это называется профилировка.
Mikhail
энтузиаст
 
Сообщения: 565
Зарегистрирован: 24.10.2013 16:06:47

Re: Недостатки java?

Сообщение vitaly_l » 19.11.2015 22:47:06

Mikhail писал(а):собирается статистика, после чего оптимизация выполняется еще раз

Интересная мысль... в лазарусе я такого не видел... та оптимизация, которая в лазарусе - работает не так...
но изложенная Вами оптимизация выполнима, и даже без участия человека(в некоторых случаях)...
И в каких IDE такое реализовано?

.
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: Недостатки java?

Сообщение Mirage » 20.11.2015 00:11:58

В Лазарусе (на самом деле в FPC, конечно) бы обычную оптимизацию допилить для начала. А еще лучше LLVM какой-нибудь прикрутить.
Насчет автоматической профилировки AOT компилятором интересно, не знал. Но пессимизацию AOT-компилятор произвести не сможет, а значит и набор допустимых оптимизаций меньше, чем у JIT. Тот же виртуальный метод не заинлайнишь.
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Re: Недостатки java?

Сообщение stanilar » 20.11.2015 04:06:57

vada писал(а):11. Понятие "утечка памяти" это не для Java.


А что будет, если два объекта содержат в себе неосвобожденные ссылки друг на друга?
stanilar
постоялец
 
Сообщения: 289
Зарегистрирован: 09.03.2010 19:09:02

Re: Недостатки java?

Сообщение Mikhail » 20.11.2015 09:41:08

stanilar писал(а):А что будет, если два объекта содержат в себе неосвобожденные ссылки друг на друга?

Для GC нет проблемы циклических ссылок.
Mikhail
энтузиаст
 
Сообщения: 565
Зарегистрирован: 24.10.2013 16:06:47

Re: Недостатки java?

Сообщение azsx » 20.11.2015 10:45:15

JAVA... - быстрее системного языка.

я запутался.
1. java при запуске требует 2 ядерного современного проца. Иначе тормозит. java при работе требует много оперативной памяти. Памяти будет не хватать, будет юзать файл подкачки := тормоза...
2. в то же время вы пишите, что java работает быстрее С, особенно на числодробительных задачах.
ну вот как???
azsx
энтузиаст
 
Сообщения: 959
Зарегистрирован: 16.11.2015 06:38:32

Re: Недостатки java?

Сообщение vada » 20.11.2015 11:13:14

stanilar
А что будет, если два объекта содержат в себе неосвобожденные ссылки друг на друга?

Вы даже не заметите этого. Все тихонько вычистится. Циклические ссылки разрешаются.

Добавлено спустя 23 секунды:
Mikhail Опередил :)

Добавлено спустя 2 минуты 50 секунд:
azsx
2. в то же время вы пишите, что java работает быстрее С, особенно на числодробительных задачах.
ну вот как???

А что будет с С-шной программой при нехватки оперативной памяти? Она будет работать быстрее чем JAVA программа? :D
Аватара пользователя
vada
энтузиаст
 
Сообщения: 691
Зарегистрирован: 14.02.2006 13:43:17

Re: Недостатки java?

Сообщение azsx » 20.11.2015 11:27:44

А что будет с С-шной программой при нехватки оперативной памяти?

может я ошибаюсь, но здесь коренное отличие. Запуская программу на С, я, (как Программист) могу посчитать в екселе сколько памяти надо будет для моей программы. Будут какие то неучтенные накладные расходы, но они будут невилики.
в java (так как там рулит виртуальная машина) я не могу знать сколько потребляет памяти моя программа.
azsx
энтузиаст
 
Сообщения: 959
Зарегистрирован: 16.11.2015 06:38:32

Пред.След.

Вернуться в Потрепаться

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

Рейтинг@Mail.ru