Автор Тема: Защо никой не обича Java?/Sprechen Sie Java? (слети теми)  (Прочетена 25521 пъти)

lkr

  • Напреднали
  • *****
  • Публикации: 81
    • Профил
Щях да правя нещо подобно, но го намерих наготово -> Java vs. C++: The Performance Showdown
за да не си чешем езиците.

Всъщност за малко да се хвана да тествам, но ме домързя да тегля и слагам JDK.

Тези тестове са безсмислени, авторът няма идея какво прави. JIT работи per method invocation, java methods по default са virtual за разлика от тези на C++ и още много. За да тестваш VM-to първо трябва да направиш dry-run итерации, за да може profilera да събере достатъчно данни.
Активен

bvbfan

  • Напреднали
  • *****
  • Публикации: 1056
  • Distribution: KaOS
  • Window Manager: Plasma 5
    • Профил
И аз я мразя  >:( Целият свят е написан на С, операционните системи, виртуалната машина на Джава, JIT, ... няма ли С се срутва света, е за тва на никой не му дреме за Джава. Сега и Андроид-а ще я разкарат, щото видяха, че всички пишат на С библиотека и после я зареждат през Джавата, което създава само неудобства да избегнеш нещо излишно.
http://www.mycplus.com/featured-articles/top-10-applications-written-in-c-cplusplus/
Активен

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Мисля, че това са глупави спорове. Аз примерно предпочитам C защото дава прост и удобен начин да си изразиш идеите и по същата причина ненавиждам ООП парадигмата и в частност C++ като (поне според мен) малоумна нейна реализация, обаче няма да тръгна да споря по въпроса. И да - убеден съм че JIT като идея има доста предимства и се надявам LLVM да внесе малко промени в това отношение. Примерът, който дадох е доста тривиален и тъп, съгласен съм, но нещата не опират само до това. JIT компилаторите имат повече свобода по отношение на register allocation, минимизиране на performance драми при разклонение на кода и т.н. Не виждам какъв е проблема при определени обстоятелства да генерират по-бърз код.
Активен

"Knowledge is power" - France is Bacon

Odido

  • Напреднали
  • *****
  • Публикации: 627
  • Distribution: Arch Linux
  • Window Manager: Gnome
    • Профил
Сравняваш Java с PHP  :o :o :o...

Ми в единия низ world е с главна буква и има запетайка пред него...

+1
Да сравнявам ги ...в кръга на шегата...
Активен

"Congratulations, you broke the Internet
Look at what you did! Are you happy now?"

gogonk

  • Напреднали
  • *****
  • Публикации: 25
    • Профил
Java има както предимства, така и недостатъци.

Скоро ми се наложи да направя програма, която да обработва изображения, особено важно беше, да ги смалява качествено. Оказа се, че на ява-та има много библиотеки, източници които да помогнат и т.н. От друга страна, например в QT С++, функцията, която смалява картината не дава добро качество. Оттам се започва търсене на допълнителни библиотеки като ImageMagic например. Да ама започва едно гърчене с компилиране, свързване и т.н. С ява-та намерих много кратко и просто решение. Единствения недостатък е, че консумира доста памет ако се използва Swing. А най изненадващото е, че направих някои кратки тестови програми на с с++ (пр. с wxDev-Cpp), конкурентни на ява-та, при което се оказа, че вървят по-бавно. Е, явно не съм се постарал да оптимизирам, но със съвременна виртуална машина, Java върви доста добре.

Какъв е изводът? Ще отговоря с цитат от Мусаши Миямото - самурай, победил стотици противници в двубои с мечове:
"Да нямаш любимо оръжие".
Т.е., да нямаш любим език за програмиране. Избери езикът, който е най-подходящ за решаване на задачата. Тогава ще си победител. ;)
Активен

n00b

  • Напреднали
  • *****
  • Публикации: 1248
  • Distribution: OSX
  • Window Manager: 10.6, 10.8, 10.9
  • Live to hack, hack to live.
    • Профил
Нещо не се чете. Последно казваш че функцията на C била по-бавна от Java?
Активен

mobilio - професионални мобилни приложения

clovenhoof

  • Напреднали
  • *****
  • Публикации: 534
  • Distribution: Mac OSX 10.9.2
    • Профил
Пробал си някакви "тестови програми на С C++" и вече реши че С++ се справя по-зле с твоята задача?!

Сортирането по метода на мехурчето и на асемблер да го напишеш пак ще е по-бавно от примерно quicksort (за големи данни).

Така че всичко зависи от алгоритъма. Езика почти няма значение в тази връзка.
« Последна редакция: Sep 07, 2011, 10:02 от clovenhoof »
Активен

We are just a moment in time
A blink of an eye
A dream for the blind
Visions from a dying brain

task_struct

  • Напреднали
  • *****
  • Публикации: 576
  • Distribution: Kubuntu 14.04
  • Window Manager: KDE 4.13
    • Профил
На Qt функциите за скалиране си работят много добре, ако знаеш какво да им подадеш, за което си има много добра документация. Да не говорим, че може да си скалираш и с помощта на видео картата с QShaderProgram и останалите класове за шейдъри.
Активен

"Minds are like parachutes. They only function when they are open." - James Dewar

irc.freenode.net  / #linux-bg

gogonk

  • Напреднали
  • *****
  • Публикации: 25
    • Профил
Категорично, ако се напише качествен код на с++, той ще работи по-бързо и ефективно от Java. Но
Код:
QImage scaled ( int width, int height, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode = Qt::FastTransformation ) const
не дава достатъчно добър резултат. Еквивалентен код в Java дава по-добър резултат, само че, скалирането трябва да се направи на стъпки. Същия трик с QT не даде добър резултат. Еталон ми е била картина скалирана с фотошоп. Това конкретно съм тествал, а не сортиране или нещо друго. Пак повтарям, разбира се, че това може да се постигне и със с++, но се оказа, че на Java ми е по-лесно.
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
приложение на Java
Общ форум
laik 3 3438 Последна публикация Jun 17, 2004, 13:10
от JOKe
JAVA програмиране
Общ форум
smitev 8 4706 Последна публикация Jul 13, 2004, 00:26
от JOKe
За Java програмисти
Общ форум
smitev 1 2961 Последна публикация Sep 15, 2004, 21:49
от JOKe
Стартиране на Java приложение !
Общ форум
Diabolic_Soul 4 4755 Последна публикация Feb 22, 2005, 00:22
от JOKe
Java IDE?
Идеи и мнения
toxigen 9 5734 Последна публикация Apr 06, 2005, 23:00
от Ivozen