LINUX.ORG.RU
ФорумTalks

[размышления]Так ли убог C++ как его малюют?

 


0

4

Стандартный набор аргументов хаяльщиков C++ следующий:

небезопасный, нет сборщика мусора; можно попортить память и сидеть много лет под дебаггером.

В любых более-менее серьезном проекте, не важно какой язык Java/C++/Lisp/whatever, пишут документацию и тесты (лисперы ведь пишут тесты, правда?). Так что у ошибок вида delete NULL и пр. нет шансов. А если какой-то тест падает - то тем проще найти и исправить: какая-нибудь JAVA просто многозначительно промолчит и в релиз войдет бага.

шаблоны == синтаксический сахар, ООП сложен и для гиков.

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

Мое ИМХО: ругают C++ исключительно ниасиляторы, продвигая вперед тем самым маркетинговые машины всяких Java c .NET-ами. А создание действительно качественного софта, будь то C++/Java/.NET, соизмеримы как по деньгам, так и по срокам. Другое дело что ынтерпрайз порой клал на качество... среднее и низкое качество на Java/.NET наверное выходит дешевле.

Ы?


Ответ на: комментарий от Legioner

>Да. А какие примеры софта высокого качества вы можете привести на С++?

Synopsis Synplify, Atrenta SpyGlass, Verific, Mentor Graphics Questa, Aldec Riviera - в общем-то, все, что для Electronic Design Automation.

V_L_A_D ★★
()

>тесты, нет гц
Именно из-за того, что 100%тное покрытие тестами обязательно для избавления от мемликов, всем не нравится цпп.

тьма проблем с темплейтами, наличие гика-профи

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

А при неадекватном руководстве быдлокод пишется на чем угодно

Только на цпп будет гарантия 99% что будет быдлокод, а на джаве, пайтоне или руби - только 10%(и то зависит от опыта самих людей, но не будет превышать 70%).

ругают C++ исключительно ниасиляторы

Нет. Цпп ругают все адекватные люди. Почему? Потому что для написания хоть сколько-то хорошего кода, нужно быть гиком, который очень долго дрочит цпп. Цпп требует больше времени на разработку, чем на том же пайтоне. Цпп требует много держать в голове.

Да что тебе говорить, не переубедим же.

tia
()
Ответ на: комментарий от tia

>Именно из-за того, что 100%тное покрытие тестами обязательно для избавления от мемликов, всем не нравится цпп

Для избавления от мемликов достаточно иметь вменяемый кодинг стандарт (предписывающий обязательное RAII) и следовать ему.

только на цпп будет гарантия 99% что будет быдлокод, а на джаве, пайтоне или руби - только 10%

Ничем не подтвержденная 4.2

Цпп, в основном, ругают школьники на ЛОРе

fixed

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

fixed

Цпп требует больше времени на разработку, чем на том же пайтоне.

Сравнивать цпп и пайтон - это клиника.

Цпп требует много держать в голове.

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

V_L_A_D ★★
()
Ответ на: комментарий от tia

У меня не розовый бинокль, а пятилетний опыт работы с C++ в серьезных коммерческих проектах. «А чего достиг ты, мальчик?»(с)

Кстати, если что - я прекрасно знаю о реальных недостатках плюсов. Но пока что в этой ветке среди цпп-хейтеров я не видел людей, которые бы были подкованы в теме настолько, чтобы высказываться по данному вопросу - одни лишь «ниасиляторы» :(. Ну и ясное дело, те кто в теме - не будут плюсы с пайтоном сравнивать и писать всякую чушь.

V_L_A_D ★★
()
Ответ на: комментарий от V_L_A_D

е кто в теме - не будут плюсы с пайтоном сравнивать и писать всякую чушь

Вот это Вы очень точно сказали, всегда такие сравнения поражали.

maxkit
()
Ответ на: комментарий от Legioner

>Как в джаве отстрелить себе ногу? Пример.

А что ты понимаешь под отстреливанием ноги? Классические грабли — конкатенация строк без использования StringBuffer. Очень легко про*ть в стотысячный раз деаллокацию ресурса в блоке finally и удивлять, куда память течет. Очень смешно бороться с запуском сборщика мусора в неподходящий момент. Новички часто неправильно истолковывают утверждение: «в Java нет явных указателей» и изменяют объект там, где не нужно.

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

linuxfan
()
Ответ на: комментарий от Divius

>Только недавно писало про проблему, которую Valgrind не смог отловить. Банальный index out of bounds.

Бугога! Такое может случиться только если пишешь на «C с классами». Уж по крайней мере для отладки можно перегрузить operator[]. Кто ж виноват, что код писали горе-кульхацкеры?

Это такая утопия?

При наличии на целевой платформе необходимых библиотек.

linuxfan
()
Ответ на: комментарий от Divius

>Ну не думал я

Дальше можно не читать. «Язык прогромирования для тех, кто не думает» называется эйч-ти-эм-эль.

linuxfan
()
Ответ на: комментарий от Skynin

>[C++] Не стал и массовым языком прикладного и заказного программирования (не говоря о веб, а Java и туда кроме php влезла).

Хочу заметить, что джаву в вебе не так уж часто увидишь. Больно уж ынтерпрайз-поделка любит ынтерпрайз-железо и ынтерпрайз-СУБД.

Что пишут на С++ великие программисты с форумов?

Приходилось, например, писать бакенды для хранения почты. В хайлоаде плюсы можно довольно часто встретить.

linuxfan
()
Ответ на: комментарий от V_L_A_D

Пять лет работы с С++ и считаешь что ты можешь говорить что другие языки - ничто, а остальные - «мальчики, которые ничего не достигли» и «неосиляторы»?
Да ты ещё и лицемер с большим ЧСВ от того, что ты ОСИЛИЛ цпп на ТАКОМ уровне, что можешь на нём писать и знаешь РЕШЕНИЯ типичных проблем цпп.

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

А пайтон надо сравнивать с цпп. Почему? Потому что именно такие люди, как ты, стремятся везде применить цпп и игнорируют другие языки. Элементарно доходит до того, что некоторые цпп-кодеры приходят в веб-проект как «программисты» и шлют всех на три буквы с их «языками, о которых никто не слышал»(это цитата одного уникума о руби и пайтоне, и таких людей не мало).

tia
()
Ответ на: комментарий от maxkit

Правильно. Это языки разного уровня. Однако, многие цпп-кодеры(да почти все) не умеют нормально контролировать какие инструменту где применять.
И часто ли тебя поражают сравнения использования цпп и пайтона, например, в прикладном ПО?

tia
()
Ответ на: комментарий от tia

И часто ли тебя поражают сравнения использования цпп и пайтона, например, в прикладном ПО?

Когда вижу призывы заменить C++ на python - довольно часто.

maxkit
()
Ответ на: комментарий от tia

> И часто ли тебя поражают сравнения использования цпп и пайтона, например, в прикладном ПО?

Нечего сравнивать - прикладное ПО (т.е. не то, что исполняется на компе юзера, а не где-то на web-сервере) на python-е не пишут.
Ога, нет такого, за незначительным исключением, с объём использования с C++ даже сранивать смешно, разрыв буквально на порядки.

Ilshat
()
Ответ на: комментарий от Ilshat

Не буду спорить ибо не могу привести статистику.
Однако, сравнивать количество ПО, написанного на паскале или Си с количеством ПО, написанного на С++... Я думаю ты понял что я хочу сказать.
Не важно число, важно как лучше. А лучше прикладное ПО писать на более приспособленном для этого языке/платформе.
С++ как и mysql, создан для всех ниш. Однако, сейчас его ниши занимают более удачные языки и платформы.
Хочешь - спорь.

tia
()
Ответ на: комментарий от tia

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

maxkit
()
Ответ на: комментарий от tia

> Однако, сравнивать количество ПО, написанного на паскале

?!!
Где оно? Delphy - это только в русне.

Однако, сейчас его ниши занимают более удачные языки и платформы.


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

Ilshat
()
Ответ на: комментарий от maxkit

>не играет никакой роли вообще
Бред.

Понимаешь, нормальные программисты умеют оценивать стоимость времени в выполнении задачи. Если задача выполняется 1 сек на цпп и 2 сек на пайтоне, то скорость выполнения не будет играть такой роли. Выберут пайтон за более простой, удобный и гибкий синтаксис, бОльшее количество инструментов и бОльшую скорость разработки в сравнении с цпп.

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

что будь она написана не на python'е - возможно, было бы лучше

В ней было бы больше костылей, велосипедов(реализации многих вещей, которые реализованы в стандартных библиотеках python, вместо которых можно было бы использовать только qt/boost/свой велосипед).

tia
()
Ответ на: комментарий от tia

Конечно, выберут. Но потом, когда эта секунда умножается на 10000 и потом ещё на миллионы человеко-часов - это уже другое дело. Посмотрите, сколько emerge зависимости вычисляет. Казалось бы, мелочь, а каждый раз по 10-20 секунд - тоже время.

К чему Вы тут qt/boost упомянули?

maxkit
()
Ответ на: комментарий от Skynin

> И что пишите? Мне вот как раз интересно что же пишут на С++ + Qt, потому что я этого софта не вижу нигде. Не то что написано другими, а вот что пишут эти 10 человек?

Скажем так: софт этот покупают большие корпорации за большие деньги. Я понимаю, что это звучит пафосно и неубедительно, но я не вру. Большее я рассказать не могу, тк подписывал соглашение о неразглашении, и ради прокачки собственного ЧСВ его нарушать не собираюсь.

Так я не понимаю вашей аргументации: С++ крут, потому что в нем бывают все проблемы Java/.NET да плюс-плюс своих кучи?

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

А кто вам сказал что вы - не быдлокодер? Вы сами так решили потому что что-то пишите на С++?

А где я сказал, что я не быдлокодер? ;) И вообще так замечательно беседовали, а тут переход на личности... фи

И сработает ли мой аргумент - «а если наладить разработку так что быдлокодеров в ней не будет»? ;)

Я не понял аргумента, можно поподробнее?

LORd
() автор топика
Ответ на: комментарий от maxkit

>когда эта секунда умножается на 10000 и потом ещё на миллионы человеко-часов
Я всё о тебе понял.
Не нужно ценить каждую секунду, ты больше тратишь времени на бездельничество и нытьё здесь на лоре что, якобы, цпп нужно везде применять и его обижают ни за что.
Не преувеличивай, очень тяжёлые задачи решают на асме, да сях, на цпп, на хаскеле, на паскале, на делфи. Однако, таких задач очень и очень мало. Я имею ввиду задачи, для которых время выполнения крайне важно и даже малейший оверхед(как в пайтоне, руби или любом другом динамическом языке) может заставить ждать выполнения не 1 день, а 3.

На самом деле, в реальности всё совсем не так как рассказывают фанатики цпп. Никто не использует динамический язык для всех задач сразу в едином проекте. Никто не использует пайтон для написания субд, ядра ОС etc. Все тяжёлые задачи пишутся на низкоуровневых языках(си, цпп, асм) и подключаются как модули к высокоуровневым языкам. Это позволяет работать на ПАЙТОНЕ, используя цпп ГДЕ НУЖНО и не получать оверхед ВООБЩЕ(оверхед есть, но имеет ли он вес? нет).

Пример: bazaar dvcs. Казалось бы, ТАКАЯ МЕДЛЕННАЯ СИСТЕМА, однако если коммит в гит делается 5 секунд, то в bzr не больше 8. Играет ли это роль если ты коммитишь по задачам в реальном проекте? Нет.

К чему Вы тут qt/boost упомянули?

К примеру того, какие вещи используют люди при написании прикладного ПО на цпп.

tia
()
Ответ на: комментарий от LORd

Как-будто процесс так приятен. Нет, я понимаю что здесь есть несколько троллей, которым просто приятно идти против течения, им приятно сейчас говорить что цпп нужно везде, нужно даже html заменить на цпп.
Лично мне «процесс» не интересен. Я уже высказал свою позицию «против фанатиков».

tia
()
Ответ на: комментарий от tia

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

У Вас, похоже, галлюцинации, иначе, покажите, где я это утверждал.

К примеру того, какие вещи используют люди при написании прикладного ПО на цпп.

Я Вам конкретный пример привёл про систему управления пакетами в Gentoo. Понятно, что на C/C++ её переписывать никто не будет, но иногда хотелось бы, чтобы оно работало быстрее. А Вы мне - про сферического коня в вакууме.

maxkit
()
Ответ на: комментарий от tia

ОК, тогда объясните, пожалуйста, где я ошибаюсь?

Именно из-за того, что 100%тное покрытие тестами обязательно для избавления от мемликов, всем не нравится цпп.

100% покрытие тестами это the must в индустрии

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

Наличие гика-профи крайне желательно в любом серьезном проекте

Только на цпп будет гарантия 99% что будет быдлокод, а на джаве, пайтоне или руби - только 10%(и то зависит от опыта самих людей, но не будет превышать 70%).

Пруф? Даже если Вы верны, неужели если прийти к менеджеру и сказать " нас нехватает .... сеньор-девелопера, есть 10% шансов что получится какашка", да наймет он этого сеньор-девелопера и заставит его и код ревьюить и тесты писать.

Нет. Цпп ругают все адекватные люди.

Неверно. Хотя бы из-за квантора «все».

Почему? Потому что для написания хоть сколько-то хорошего кода, нужно быть гиком, который очень долго дрочит цпп.

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

Цпп требует больше времени на разработку, чем на том же пайтоне.

Место пайтона - скрипты.

Цпп требует много держать в голове.

Ой ли? Собственно я эти метания начал начитавшись тредов «как убог C++», пошел смотреть в сторону Java-ы. Как представил что все это себе придется в голову утрамбовывать...

---------------- Где у меня логика, а где C++ головного мозга, помогите?))

LORd
() автор топика
Ответ на: комментарий от maxkit

>У Вас, похоже, галлюцинации, иначе, покажите, где я это утверждал.
Именно это ты и утверждал, рассказывая как 1 секунда превращается в часы.

пример привёл про систему управления пакетами в Gentoo

чтобы оно работало быстрее


Ты правда считаешь что она будет работать ощутимо быстрее если будет написано на плюсах?

tia
()
Ответ на: комментарий от LORd

>100% покрытие тестами это the must в индустрии
Если ты будешь покрывать тестами все языковые проблемы, то это потребует дополнительного времени, строк кода.
Зачем программисту задумываться ещё и над проблемами языка(ручная очистка памяти, например)? У программиста в наше время мозг должен свободен для новых абстракций, идей. У современного программиста нет возможности и времени следить за каждой проблемой.
Тесты должны покрывать логику программы, а покрытие логики языка должен предоставлять сам язык.

Наличие гика-профи крайне желательно в любом серьезном проекте

А что если человек захочет написать что-то своё? Он не сможет ничего сделать, у него ничего не будет компилиться, он забросит всё это дело. Если бы он изучал пайтон, то он мог бы реализовать свою идею и продвинуться выше, стать более опытным, стать «гиком-профи».

Пруф?

Просто подумай. На сколько просто писать код на цпп в сравнении с кодом на джаве, на руби, на пайтоне?
Если тебя, как тимлида, будут каждый час дёргать «а у меня вот такой эксепшн на 4 листа А4 и я не знаю что делать!», это будет хорошо?
Если он будет юзать пайтон, то ему не просто скажут в какой строчке он забыл поставить символ, но и скажут где его нужно поставить.

Неверно

Верно. Его ругают все адекватные люди. Боготворят его только идиоты и фанатики. Ну и да, тролли.

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

Думаю что ты не помнишь как сам учился кодить.

Место пайтона - скрипты.

Лучше бы ты молчал.

Как представил что все это себе придется в голову утрамбовывать...

Джава просто требует знать больше адстракций. Всё остальное проще и удобнее чем цпп. Сравни цпп и джаву по количеству синтаксических схем и пойми что джава удобнее и проще.

Где у меня логика, а где C++ головного мозга, помогите?))

Везде.

tia
()
Ответ на: комментарий от tia

> Если ты будешь покрывать тестами все языковые проблемы, то это потребует дополнительного времени, строк кода. Зачем программисту задумываться ещё и над проблемами языка(ручная очистка памяти, например)? У программиста в наше время мозг должен свободен для новых абстракций, идей. У современного программиста нет возможности и времени следить за каждой проблемой. Тесты должны покрывать логику программы, а покрытие логики языка должен предоставлять сам язык.

Насколько я понимаю, единственное усилие, которое требуется дополнительно приложить цпп девелоперу в отличие, скажем, от java девелопера: это написать тест на то, что память освобождается. Все. написал-забыл, ничего в голове не нужно держать, можно дальше копаться в своих абстракциях. Нет? Какие еще «языковые проблемы» есть, под которые надо дополнительно писать тесты? я не могу придумать.

Если тебя, как тимлида, будут каждый час дёргать «а у меня вот такой эксепшн на 4 листа А4 и я не знаю что делать!», это будет хорошо?

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

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

Верно. Его ругают все адекватные люди. Боготворят его только идиоты и фанатики. Ну и да, тролли.

Ругают его: - фонатеги-явопистонодрочеры, которые где-то начитались какой это страх Божий «кресты» и повторяют чужие слова из года в год;

- лоровская школота и студенты, которые написали по две с половиной поделки на плюсах;

- эстеты, которых действительно видят его проблемы. Единственно адекватные люди из этого списка.

Джава просто требует знать больше адстракций.

А именно? У меня создалось впечатление (возможно ложное), что сама Java (c ее ООП и неймспйсами, какие там еще абстракции?) - весьма простая. А вот спецификации как надо писать программы и ее либы - это отдельная песня, слова которой хрен выучишь.

Место пайтона - скрипты

Лучше бы ты молчал.

А что, я не прав?

LORd
() автор топика
Ответ на: комментарий от linuxfan

> писать бакенды для хранения почты

Понятно. Спасибо.

Skynin
()
Ответ на: комментарий от LORd

> Скажем так: софт этот покупают большие корпорации за большие деньги.

То есть сказали - никак. Я спрашивал о виде софта, его классе, общей функциональности. А корпорации и зубочистки в свои буфеты покупают.

Я лишь рассуждаю

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

А аргументы и контраргументы я больше от этого треда хочу подчерпнуть

Если бы хотели, то просто воспользовались гуглом, и попробовали сами попрограммировать на Java/.NET

И вообще так замечательно беседовали, а тут переход на личности... фи

Термин быдлокодер употребили вы :) По моим наблюдениям его любят именно быдлокодеры. Опытные программисты используют другие термины для некачественного кода.

Я не понял аргумента, можно поподробнее?

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

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

Skynin
()
Ответ на: комментарий от Skynin

> Если бы хотели, то просто воспользовались гуглом, и попробовали сами попрограммировать на Java/.NET

Гуглом я пользоваться умею, популярные аргументы «за» и «против» мне известны. Я просто не могу понять своим слабым умом, почему эти «против» настолько ужасны, что, даже при правильном подходе, который нивелирует эти «против», выбирается Java/.NET.

Опытные программисты используют другие термины для некачественного кода.

Ну, мы же на лоре ;) А делать выводы о моей компетенции/некомпетецнии на основе употребления мною жаргонов, это, извините меня, о вас самом говорит не очень лестные вещи.

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

Где я такое говорил? Вы КАТН (кандидат астрало-телепатических наук)?

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

Причем тут видел/невидел. Объясните мне что я не прав поэтому и тому-то, или согласитесь со мной. Я много чего видел/не видел, как это влияет на поиск истины? Я вопросы задаю исключительно чтобы сформировать для себя более объективную картину, а не ради дешевого троллинга

LORd
() автор топика
Ответ на: комментарий от LORd

> А вот спецификации как надо писать программы и ее либы - это отдельная песня, слова которой хрен выучишь.

То есть ниасили инфраструктуру, и предпочитаете изобретение лисапедов, «но зато я на С++ пишу!»

Ругают его: - фонатеги-явопистонодрочеры

Это конечно, это обязательно быдлокодеры и пистонодрочеры они, а я - гений, ниасиливший стандарты разработки :)

Все развитие ЯП можно описать как подъем уровня абстракции и освобождение программиста от забот о низком(системном) уровне (за исключением собственно разработки этого уровня), но вот, вся эта тенденция - пистонодрочерство, а ассемблер лучьше всех!

Ах вы ниасили ассемблер и потому пишите на С++? А если организовать процесс разработки, и не пускать быдлокодеров, то скорость разработки на ассемблере будет такая же как и на С++, а эффективность выполнения программ - выше!

А если каждый раз, ниасиливши «библиотеки» написанные другими, писать свои - то это вообще признак величайшей квалификации.

Ну а если .NET упадет релизный, больше там будет отладочной информации?

Про .NET не скажу, а в Java стектрейс - весьма знатный и детальный.

Но вопрос все тот же - чтобы достичь НЕпадения в релизе, затраты на разработку с использованием С++ выше чем на Java/.NET

Потому что Java/.NET и создавались чтобы устранить неизбывные сложности разработки на С/C++. Не было такого девиза - а давайте создадим ЯП для быдлокодеров. Так же и php - создавался для быстрой разработки.

У вас же шиворот-навыворот. Из популярности применения - делается вывод об убогости применяющих. А из сложности применения - об элитарности.

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

Skynin
()
Ответ на: комментарий от Skynin

> У вас же шиворот-навыворот. Из популярности применения - делается вывод об убогости применяющих. А из сложности применения - об элитарности.

Ты такой толстый: додумываешь за меня мои мысли, приписываешь мне слова, которые я никогда не говорил. Высший класс!

LORd
() автор топика
Ответ на: комментарий от LORd

> даже при правильном подходе который нивелирует эти «против»

Потому что при правильном подходе нивелируется много и из попреков в адрес Java/.NET

То есть при прочих равных и получается картина - разработка на С++ дороже потому что дольше. И оправдана только при особых требованиях, либо при большом тираже продукта.

И кто вам сказал что правильный подход - нивелирует затраты на разработку с использованием ЯП с ручным распределением памяти?

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

Объясните мне что я не прав поэтому и тому-то, или согласитесь со мной

Вы не правы, потому что: 1. Не учитываете затраты на создание процесса разработки 2. Не учитываете затраты на затраты по сопровождению ПО 3. Сравниваете в неравных условиях - для С++ идеальный процесс разработки и мегаспециалисты, для Java/.NET - быдлокодеры и пистонодрочеры 4. Игнорируете факт выбора отраслями 5. Опираетесь на придуманный самим же тезис что при всех равных условиях разработка на С++ выйдет по всем 3 характеристикам: дешево, быстро, качественно - такой же как и на Java/.NET

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

С каждым вашим постом я склоняюсь что как раз ради дешевого троллинга. Как говорится, у вас в вопросе вместо вопросительного знака - восклицательный.

Skynin
()
Ответ на: комментарий от LORd

> Ты такой толстый: додумываешь за меня мои мысли, приписываешь мне слова, которые я никогда не говорил. Высший класс!

LORd пишет

Мое ИМХО: ругают C++ исключительно ниасиляторы, продвигая вперед тем самым маркетинговые машины всяких Java c .NET-ами

В этой предложении сразу идет:

1. Наброс говна на вентилятор, троллинг, потому другие разработчики сразу прямо оскобрляются - ниасиляторы.

2. «Маркетинг"ом обычно объясняется популярность продукта. Намекается обычно таким способом также и о том, что все кто подверглись „маркетинговому влиянию“, то есть выбрали популярный, широко распространенный продукт - быдло, не способное к самостоятельному мышлению.

А так как в постах вы, LORd, неоднократно разъясняли свое изначальное ИМХО, то вот поэтому прихожу к выводу что оба пункта - о вас.

Skynin
()
Ответ на: комментарий от linuxfan

Кто ж виноват, что код писали горе-кульхацкеры?

Ну ты конечно гораздо круче, чем Trolltech! Ты им объясни на досуге, как писать надо.

Дальше можно не читать. «Язык прогромирования для тех, кто не думает» называется эйч-ти-эм-эль.

Это каким же ламером надо быть, чтобы HTML называть языком программирования? Оо Ладно, с тобой всё ясно, продолжаем обсуждение с программистами.

Divius ★★
()
Ответ на: комментарий от maxkit

>Вроде системы управления пакетами в Gentoo.

Вменяемыми людьми в генту давно написал paludis на плюсах. Благодаря этому питон можно удалить, а система управления пакетами будет работать как положенно.

argin ★★★★★
()
Ответ на: комментарий от tia

Именно это ты и утверждал, рассказывая как 1 секунда превращается в часы.

А где я утверждал, что всё надо писать на C++, покажите.

maxkit
()
Ответ на: комментарий от alexmaru

>Посмотри на паскаль. Каждая строчка его реализации кричит «я не си! Во мне нельзя отстрелить себе ногу!». Почему на нём никто не пишет?

Паскаль? Паскаль от Си не так сильно и отличается. По крайней мере то, что из Паскаля сделал Борланд в свое время, Си, только в профиль.

Waterlaz ★★★★★
()

Об утечках памяти

Вот свежий примерчик с продакшена (perl):

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
22231 crons     18   0 1730m 1.6g 2188 S    0 46.6 292:10.08 perl
22788 crons     15   0  983m 900m 2188 S    0 25.4  74:50.88 perl

Аналогичные веселости бывают в любом языке. В плюсах же единожды осилив RAII, просветленный спасается практически ото всех видов утечек любых ресурсов (в том числе и памяти).

linuxfan
()
Ответ на: комментарий от Divius

>Это каким же ламером надо быть, чтобы HTML называть языком программирования?

Лол, эйч-ти-эм-эль — язык прогрОМирования для прогрОмиЗдов. Чего именно тебе не понятно? Ну тогда специально для прогромиздов вроде тебя, которые не думают 24 часа в сутки, 7 дней в неделю: «не думая» можно прогромировать только на HTML.

Программирование вообще-то требует наличия развитого мозга и умения им пользоваться.

linuxfan
()
Ответ на: комментарий от argin

Вменяемыми людьми в генту давно написал paludis на плюсах. Благодаря этому питон можно удалить, а система управления пакетами будет работать как положенно.

Выходит, не одному мне кажется, что python и там - не совсем оптимальный выбор.

maxkit
()
Ответ на: комментарий от linuxfan

Лол, эйч-ти-эм-эль — язык прогрОМирования для прогрОмиЗдов.

А, это типа искромётный юмор? Смищно, да, петросян в восторге.

Программирование вообще-то требует наличия развитого мозга и умения им пользоваться.

Ты-то откуда узнал, троллюшко? Где слов-то таких начитался?

Divius ★★
()
Ответ на: комментарий от maxkit

Выходит, не одному мне кажется, что python и там - не совсем оптимальный выбор.

Там лучше asm, инфа 100%. Очен ьудачное решение для тех, кто не может определить, когда нужны скриптовые языки, а когда компилируемые.

Divius ★★
()
Ответ на: комментарий от Divius

>Ты-то откуда узнал, троллюшко? Где слов-то таких начитался?

Я быдлокодерством уже лет 7 профессионально занимаюсь.

linuxfan
()
Ответ на: комментарий от tia

>Пять лет работы с С++ и считаешь что ты можешь говорить что другие языки - ничто, а остальные - «мальчики, которые ничего не достигли» и «неосиляторы»?

Во-первых, жду пруфлинка с моими словами о том, что другие языки - ничто.

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

В-третьих, я не говорю - «все остальные», я говорю преимущественно о любителях сравнить C++ с Пайтоном;)

Как-бы я с тобой и не спорю - я уже сейчас начинаю сливать

fixed

Потому что именно такие люди, как ты, стремятся везде применить цпп и игнорируют другие языки

Жду пруфлинка

Элементарно доходит до того, что некоторые цпп-кодеры приходят в веб-проект как «программисты»

Элементарно доходит до того, что некоторые пхп-кодеры приходят в геймдев-проект как «программисты»

Элементарно доходит до того, что некоторые жава-кодеры приходят в проект на Хаскеле как «программисты»

мысль, надеюсь, понятна?;)

V_L_A_D ★★
()
Ответ на: комментарий от svu

>Но если это не так - начинаются дизастеры, очень быстро и очень страшные.

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

slackwarrior ★★★★★
()
Ответ на: комментарий от RedPossum

>если в шарпе и яве меньше возможностей отстрелить себе ногу, то почему бы не писать на них?

Если человек с автоматом может отстрелить себе ноги, зачем людям выдают автоматы? Почему бы с муляжами не ходить? Все равно никто на нас не нападет... Рубанком, бензопилой, токарно-фрезерным станком можно все себе отрезать - почему не запретить все эти устройства производства смерти и не ввести повсеместно 3D-принтеры?

slackwarrior ★★★★★
()
Ответ на: комментарий от RedPossum

>а почему на паскале никто не пишет я и не знаю. на нём перестали писать в далёкие времена.

Паскалисты, окопавшиеся на ММВБ, не в курсе. Вот ретрограды!

slackwarrior ★★★★★
()
Ответ на: комментарий от mono

>попробуй поставить его без .NET.

Установкой таки рулит внешняя прога. В нативную прогу с системой расширений можно засунуть .Net. В рантайме будет полное впечатление, что Net исполняется в том же AppDomain. (WCF например, можно сравнительно легко захостить на FAR и DownloadMaster). Возможно из офиса это дело неплохо выпиливается «легким движением руки» (нужно просто знать каким... Впрочем, кому оно тут нужно ;)))).

slackwarrior ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.