C++ или Java

C++
37
Нейтральная
сторона
4
Java
11
Производительно, гениально, мощно
Прежде чем писать комментарии или выбрать сторону вы должны авторизироваться!
Производительнее, всё включено и согласовано, проще

26-09-2009 23:52 -1

Это типо луна и две звёздочки рядом?Красиво,оригинально,я за C++!

0 комментариев
27-09-2009 00:06 0

Джава не производительнее и не проще. Хотя против неё ничего не имею, но всё же предпочитаю С++.

3 комментария
Eternal 27-09-2009 00:41 0

PadonakSem, А отсутствие указателей(как и других низкоуровневых возможностей) и сборка мусора только уже не делают её проще?

PadonakSem 27-09-2009 00:46 +1

Eternal, Отсутствие указателей, лично мне, не проще. Их удобно использовать. А "сборка мусора"... Не проще ли сразу - не мусорить, или убирать за собой? Как говорится - чисто не там где убирают, а там, где не сорят.

Eternal 27-09-2009 20:55 0

PadonakSem, Я бы сказал лучше, но не проще.

27-09-2009 00:10 +3

Производительнее? А как же ява-машина?)

0 комментариев
27-09-2009 00:39 +1

Логичнее сравнивать С# и Java.

20 комментариев
PadonakSem 27-09-2009 00:40 0

patrik, Не логичнее. Первый - труп, намертво пришитый к заднице венды. А С++ и Java - инструменты для разработки на нормальных платформах.

patrik 27-09-2009 00:44 0

PadonakSem, я написал логичнее, потому что С# больше похож на Java, чем С++.

Eternal 27-09-2009 00:44 0

patrik, Чемто может и логичнее, но джависты умудряются противопостовлять её именно С++, как и разрекламировать её, что хоть дрова пиши.

Eternal 27-09-2009 00:46 0

patrik, Они сюда видимо не добрались ещё(Браузер грузится), а так хорошо что пиар не побеждает здравое мышление пока.

Eternal 27-09-2009 00:47 0

patrik, упс 2 раза отправил, а удаления не предусмотрено, мда...

PadonakSem 27-09-2009 00:47 0

patrik, С# больше похож на делфи. От жабы там - виртуальная машина.

PadonakSem 27-09-2009 00:49 0

Eternal, Виртуальная машина концептуально не может быть производительнее нативного бинарного кода.

PadonakSem 27-09-2009 00:49 0

Eternal, [Off]

Что-то за синих пока никто не голосовал

[/Off]

Eternal 27-09-2009 00:55 0

PadonakSem, Так то оно так, но по их тестам выходит почти впритык. Если они правдивы, думаю надо отдать им должное, но не более того.

PadonakSem 27-09-2009 00:59 -1

Eternal, Тестами натестить можно и превосходство C# над ассемблером. В реальных же задачах Java таки отстаёт по производительности от С++, где-то больше, а где-то - меньше. И памяти кушает непомерно. А так - нормальная штука...

Eternal 27-09-2009 01:01 0

PadonakSem, Ну вот, за отсутствием явистов между собой холивар ведём. Хитрые. Когда ненадо дак тут как тут.

PadonakSem 27-09-2009 01:08 0

Eternal, Хмм... Ну, могу зайти повоевать за явистов... Жаль, правда, потом сторону не смогу назад сменить.

NightmareZ 27-09-2009 23:20 0

PadonakSem, Слу, а вот правда, что C# - намертво пришит к Винде, да? А знаешь, что, например, в Гноме с версии 2.22 (если не ошибаюсь) вливают приложения на C# (например, NDesk.DBus) и, как следствие, в зависимостях будет моно.

Вот блин разработчики Гнома сидят и не знают, что C# только на Винде. Ты бы пошёл их просвятил.

PadonakSem 28-09-2009 21:27 0

NightmareZ, Знаю я про это тормозное и глючное поделие грязного Мигелюшки. С обезьяной на логотипе, что кагбэ намекает.

Только оно нафик в Юниксе не нужно, там много своих, хороших языков и фреймворков.

Eternal 28-09-2009 21:34 0

NightmareZ, Шарпы собственический продукт мелкомягких. Вероятно платный=) А С++ достояние общественности, и QT почти копилефт.

NightmareZ 28-09-2009 22:10 0

PadonakSem, Где есть одно поделие, там будут и другие.

NightmareZ 28-09-2009 22:10 0

Eternal, Шарпы бесплатны.

PadonakSem 28-09-2009 22:11 0

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

PadonakSem 28-09-2009 22:12 0

NightmareZ, M$-Like грязь в UNIX-мире не нужна.

NightmareZ 13-03-2011 23:24 0

PadonakSem, Не логичнее. Первый - труп, намертво пришитый к заднице венды. А С++ и Java - инструменты для разработки на нормальных платформах.

Бгога, теперь Java - труп, намертво пришитый к заднице стебанутого Оракла ))

28-09-2009 09:48 +2

Один язык не может быть быстрее другого! И Delphi не может быть медленнее C++. Да, прога, написанная с использованием VCL работает медленнее, чем аналог на WinAPI. Но сам язык Delphi никак не медленнее других.

Java тоже никак не быстрее других.

0 комментариев
28-09-2009 13:40 +1

Хотя C++ не люблю, но это лучше, чем Java!

0 комментариев
28-09-2009 13:41 0

К.О. какбэ намекает, что Java выполняется на виртуальной машине, поэтому НИКАК не может быть производительнее родных процессорных инструкций.

17 комментариев
NightmareZ 28-09-2009 17:07 0

unnamet, Ты не слышал о такой штуке, как JIT-компилятор?

Lelik 13-03-2011 23:26 0

unnamet, Какбі бывает и другая джава, которая реалтайм, она в разы быстрее

Tro 22-02-2016 23:40 0

unnamet, Родные инструкции - это Assembler, в крайнем случае С. Зачем нужны плюсы - непонятно. Хотите ООП и другие фичи программирования без жопоболи - идите уже в Java/C#

opera.rulez 23-02-2016 00:33 0

Tro, Какую боль причиняет C++ и как её устраняют Java/C#?

Tro 23-02-2016 09:06 0

opera.rulez, Например, вручную чистить память.

cherepets 23-02-2016 12:51 0

Tro, www.hboehm.info/gc/

BerkutOi 23-02-2016 12:56 0

cherepets, IT IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
окей

BerkutOi 23-02-2016 13:13 +1

opera.rulez, Хедер файлы, разные размеры примитивных типов на разных платформах, указатели, слабая типизация

opera.rulez 23-02-2016 13:16 0

Tro, Я не считаю это болью. У нас порядок такой: поел — убери за собой!

Как раз мусоросборщик из Java приносит много боли, потому что он может никогда не сработать и программа распухнет.

А в C++ для лентяев есть аж несколько решений:

1. RAII — создание объектов в стеке, тогда деструктор автоматически вызывается, когда объект исчезает из зоны видимости.

2. C++/CX с вашими любимыми счётчиками ссылок, как в Java.

BerkutOi 23-02-2016 13:20 0

opera.rulez, еще соблюдение ооп парадигмы в С++ у меня вызывает боль, но мне кажется что из-за непривычки

opera.rulez 23-02-2016 13:22 0

BerkutOi, 1. Хедер файлы

Поддерживаю. Считаю это анахронизмом. В нормальных языках есть система модулей (всякие import/use/using/uses).

2. разные размеры примитивных типов на разных платформах

А это я не считаю проблемой. Нужен тип фиксированного размера — используй всякие int64_t, uint8_t etc.

3. указатели

Иногда это плюс, иногда минус.

4. слабая типизация

А это дурное наследство старой Сишки. Действительно, причиняет много боли.

Tro 23-02-2016 13:22 +1

cherepets, * множественное наследование
* разный код под разную платформу (ну да, какой-нибудь Qt спасёт, но если речь про винду, придётся его тащить с каждым приложением, потому что не можем в репозитории, тогда как какой-нибудь Swing уже встроен в JRE)
* длина массива? Не, не слышали. И длину строки давайте считать за O(n). И копировать её давайте за O(n). Ну или собственные костыли в виде хранения размера массива в нулевом элементе
* вышел за пределы массива и случайно попал в память, занятую твоим же приложением. Здравствуй, весёлый дебаг!
* #define. Радость для IDE: рефакторинг и подсветка синтаксиса без глюков

Tro 23-02-2016 13:26 0

opera.rulez, поел — убери за собой!
Зачем, если можно пользоваться услугами официантов?

BerkutOi 23-02-2016 13:26 0

opera.rulez, int64_t, uint8_t
но это ведь ужасно

cherepets 23-02-2016 14:14 0

Tro, C++.Net и C++ for UWP (или как его в итоге обозвали).

Tro 23-02-2016 14:15 +1

cherepets, Зачем, если есть C#?

cherepets 23-02-2016 14:24 0

Tro, Сложный вопрос. Некоторые говорят, что частью либ из него пользоваться удобнее (в основном речь о DX).
Но лично я не вижу проблем и в SharpDX, и в ManagedEsent (для встраиваемой бд) и в использовании нативных библиотек для шифрования из шарпа...

23-02-2016 14:27 0

Язык Java конечно приятнее, но нет реализаций под кучу платформ => всё равно писать на ней не всегда можно.

1 комментарий
opera.rulez 23-02-2016 16:31 0

cherepets, Жалко, что gcj почти не развивается. С помощью него можно получать нативный код из Java.

27-09-2009 11:23 +1

си++ производительнее потому что он более старый и отработанный ява же более новый язык и розвиваеться быстрее и по производительности очень скоро догонит и обгонит тотже си++

5 комментариев
PadonakSem 27-09-2009 11:34 +1

Lelik, А ассемблер и обычный С ещё более древний... Давайте предадим их заслуженному забвению, и будем пейсать драйверы и ядра ОСей на джаве?

Eternal 27-09-2009 11:55 0

Lelik, А вы осознаёте, что семантика языка ну совсем наврядли влияет на производительность? Библиотечное обеспечение С++ развивается живее некуда. Посмотрите QT. Она быстрее JFC кстати.

PadonakSem 27-09-2009 12:31 0

Eternal, QT - это Quick Time.

Qt - это мощный и удобный фреймворк для C++, имеющий также биндинги для Python, Perl, и, как ни удивительно - Java

maxmoshko 09-05-2013 22:56 0

Lelik, жаба производительней?

BerkutOi 23-02-2016 14:48 0

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

27-09-2009 17:06 +1

С++ - убогий отпрыск трупострауса.

15 комментариев
PadonakSem 27-09-2009 19:14 0

NightmareZ, Жаба - гигантский, прожорливый слоупок.

Eternal 27-09-2009 20:54 0

NightmareZ, Пока за вашими аргументами нет оснований и докозательств, убогими можно вполне основательно считать только их.

NightmareZ 27-09-2009 22:48 0

Eternal, А какие основания нужны? Всё и так очевидно.

Например, ты считаешь нормальным язык, стандарт которого практически ни один компилятор не держит?

Он настолько убог и мутантен, что расширять его весьма проблематично. Знаешь, почему в новый стандарт не добавили концепты?

Или может скажешь, для чего он вообще нужен? У него тупо нет своей ниши. В любой области его уделывают более узкоспециализированные языки.

Ява же хороша в своей области.

Eternal 27-09-2009 23:37 0

NightmareZ, Именно область её узка тоже. Не стоит объявлять её стандартом и преувеличивать достоинства. Вспомним бедолагу Томми.

Про С++ сказал бы иначе, он настолько гениален и мощен, что ещё никто не смог воплотить его в фреймворк, который бы отражал его сущность. QT(так привык говорить и буду) довольно минималистична в своей абстрактности, но это не предел. А чем меньше кода, тем он обычно гибче. Ява такой роскошью не обладает.

Насчёт ниши возможно было бы так без QT, ненадо забывать что С++ много лет была и есть негластным стандаром программирования.

Моё мнение: Ява хороша, но пригревшись на её самодостаточности, недостатки игнорировать не стоит.

NightmareZ 27-09-2009 23:52 0

Eternal, Никто не говорил, что Java всемогуща. Нет. У неё есть своя сфера применения и там Java очень хороша.

C++ не гениален, он убог. Гениален лисп.

C++ не стандарт программирования, он неудачный результат генетических экспериментов и галлюциногенных грибов.

И, да, я совсем не использую Яву. Тут (http://holywars.ru/comments/5310) я уже писал, что я юзаю.

Eternal 28-09-2009 13:36 0

NightmareZ, Лисп и смалтак концептуально гениальны... На практике их применение узкоспциально даже там, где вообще возможно. С++ при своей убогой реализации состовляет 80% вклад в мировое ПО. Что Луна, что Мак, что Винды. Нелепо непризнавать его стандартом, когда это аксеома.

NightmareZ 28-09-2009 17:06 +1

Eternal, Дык! Я и не говорю, что C++ нераспространён. Да, на нём много что написано. Но он не становится от этого лучше.

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

Для десктопа - это, например, C# (и весь .NET), Java, тот же Delphi.

Для веба есть гумно-PHP, Python, всякие Ruby и прочие.

Для низкоуровневого кодинга - чистый C.

В линухах всяких - опять же больше предпочтение отдают чистому C, а не C++.

По поводу Мака... я не очень осведомлён, но разве там восновном не Objective C?

Eternal 28-09-2009 17:30 0

NightmareZ, Дотнет не балует производительностью. Акромя является продуктом M$. Поводов его не признавать достаточно. Delphi для тривиальных вещей. Ява для приложений критичных по переносимости и не критичных по скорости. В вебе С++ небыло и нет. С++ позволительно использовать не для самых низкоуровневых задач. Она лучше Си и не намного медленнее. ООП никто не отменял. Самые низкоуровневые могут писаться на Asm. В той или иной части она входит в ядро любой ОС.

А теперь подумай на чём будешь писать серверное приложение ориентированное на множество клиентов? Производительность Питонов, яв и дотнетов станут непринципиальны не раньше чем железо станет мощнее раз в 30. Но развитие С++ тоже не стоит на месте. И по мере усложнения ПО их недостатки будут тоже проявлятся сильнее.

P.S.: Если С++ в чёмто и слаба как язык, то в обобщённом программировании и только. Но над этим работают. Скоро выходит 0x, и ещё внесёт свой вклад. Да и ява с шарпами этого не решили.

NightmareZ 28-09-2009 18:02 0

Eternal, По поводу производительности ты не прав. Качественный код под .NET отстаёт от сишного кода лишь на пару десятков процентов. В некоторых же случаях, дотНетовский код может быть быстрее, чем код на C++ хотя бы по той причине, что копилируется уже на целевой машине с оптимизацией именно под неё.

По поводу делфи - не согласен. Delphi2010 для десктопа мало чем уступает тому же C# или Яве. И как язык и как среда.

В вебе C++ был. И есть. И пишутся на нём критичные к скорости приложения. И зря.

Ассемблер в очень подавляющем большинстве случаев - зло. Даже для низкоуровнего кодинга. Если конечно, ты не знаешь архитектуру процессора вдоль и поперёк.... Таких людей я пока не видел, ни в жизни ни в Сети.

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

C++0x меня огорчил больше, чем обрадовал. Часть фич потырили из шарпов и прочих. Часть сначала пообещали, а потом не смогли сделать (например, контракты). Так что, имхо, он будет ещё бОльшим уродцем, чем нынешний C++.

Eternal 28-09-2009 18:35 0

NightmareZ, Скажу то, что всегда хотел сказать про Яву и Шарп. Когда я запускаю новую софтину, то либо не обращаю внимания, либо думаю "Опять на дотнете/яве", без измерений микросекунд.

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

На Яве пишутся любительские эмуляторы игровых серверов. Держал пару лет явовый сервер Ла2. При числе подключений больше тысячи он уже начинает раскрывать своё происхождение. 4 тысячи для него предел. Далее идёт унстейбл. Я не буду утверждать, вина платформы это или разработчиков, но свой вклад имеют оба.

Сервер какраз то место, где есть части критичные по производительности и прикладные задачи. Совместить 2 разных языка..., когда Си семейство с этим справляется.

NightmareZ 28-09-2009 19:36 0

Eternal, А можно примеры софтин, которые вызывают мысли "опять на дотнете"? Мне просто интересно попробывать.

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

Учавствовал я в довольно большом проекте на C#. И получился он тормозным. Глядя на него снаружи, люди ругали дотНет, хотя изнутри ясно было видно, что проблема в наплевательском отношении к разработке.

Ну микроконтроллеры программировал. Немного. И давно. И на C, а не на ассемблере. Спорить не буду, что для многих из них лучше писать на ассеблере ихнем. Но вот для x86 и т.п. я бы никому ассемблер не советовал.

Вставки ассемблерного кода в драйверах, имхо, не в тему. Ибо там того кода ассемблерного по-хорошему - кот наплакал.

SViN95 28-09-2009 21:14 0

NightmareZ, Пустое окно на .NET и то долго грузится! (по сравнению с WinAPI)

Eternal 28-09-2009 21:17 0

NightmareZ, Ходовая часть хороших драйверов(как видео) пишется на асме, вспомогательная уже не всегда принципиальна С или С++.

На С++ тоже много наплевательских проектов, но такого эффекта не наблюдается.

Если сравнивать средний код С++ с идеальным шарповым, да ещё на участках выйгрышных позиций шарпа... То вероятно получаются тесты...^_^

Eternal 26-10-2009 15:08 0

NightmareZ, Вспоминаем сколько грузилась Visual Studio 6 и сколько Visual Studio 7 .NET. Скорость работы VS2008 вообще сравнима с Java.

NightmareZ 13-03-2011 23:19 0

Eternal, Вспоминаем, как убога была Visual Studio 6 и как хорошо Visual Studio 2010.

Купи современный компьютер. Что удивительно, на современных компах среднего ценового диапазона VS2010 работает весьма шутро.

И! Внимание! Гуй то у неё на WPF!

01-10-2009 19:21 0

как язык, Java гораздо красивее, как платформа - каждому своё

3 комментария
Eternal 26-10-2009 15:45 0

HolyDark, За счёт минимальной мощности, стандартной библиотеки, и функций с большой буквы ^_~

Зато на С++ не приходится для тривиальной задачи писать тонну кода. Но только когда есть либы.

alexd 26-03-2010 14:24 0

HolyDark, ява ужасна во всех планах, от скорости до синтаксиса... недоязык это...

NightmareZ 08-05-2011 17:37 0

alexd, Ололо. А что лучше? Монстроподобный C++?

20-04-2013 22:34 0

Не думал, что у нас так много разработчиков самой Джавы и всяких МК. А что ещё на плюсах писать?

0 комментариев
27-12-2013 20:57 0

Java быстрее: JIT. И у неё больше возможностей

1 комментарий
cherepets 27-12-2013 21:51 0

danpetruk, быстрее: JIT.

Блин, ты самый толстый и бессмысленный тролль на HW.

//алсо, как это связано вообще с ЯЗЫКАМИ?

23-02-2016 00:35 0

Встану на эту сторону не из-за того, что мне нравится Java, а из-за того, что не люблю C++.

0 комментариев