Re[45]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 24.08.22 16:17
Оценка: +2
Здравствуйте, Артём, Вы писали:

Аё>Плюснутые вместо чтобы признать поломанность плюсплюсного дизайна


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

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

Ну а несостыковки в каких-то местах -- это следствие многолетней эволюции.

Если бы тебе повезло и ты (вместо того, чтобы прыгать каждые 2-3 года с технологии на технологию) занимался развитием одного проекта на протяжении 10-15-20 лет, ты бы смог осознать что же это такое, когда твои продуманные решения через N лет выглядят уже несколько не так, как тебе казалось.
Re[46]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 24.08.22 16:19
Оценка:
Здравствуйте, Артём, Вы писали:

Аё>Вот управление памятью, но оно поломано.


Покажи мне язык без GC, в котором управление памятью не поломано.
Re[46]: Оставаться в С++ или уходить?
От: DiPaolo Россия  
Дата: 24.08.22 16:36
Оценка: +3
S>С++ делали и делали люди, гораздо умнее меня. И, подозреваю, что и тебя тоже. Поэтому в C++ у всех решений есть и причины появления, и логическое обоснование, и причины, почему сделано именно так. Даже если кому-то (мне, например) может это казаться странным и непонятным.

S>Ну а несостыковки в каких-то местах -- это следствие многолетней эволюции.


Добавлю...

Его разрабатывали 40 лет назад. Тогда индустрия только начиналась. Языков до него было не так уж много. Соответственно, проектировать его было куда сложнее. И то, что он до сих пор активно (несмотря на твои, Темчик, фантазии) в течение стольких лет используется и развивается — это лишь показатель его грамотного и продуманного дизайна. И благодаря плюсам мы имеем языки, где приняли более удачные решения на опыте плюсов.
Патриот здравого смысла
Re[47]: Оставаться в С++ или уходить?
От: CreatorCray  
Дата: 24.08.22 17:21
Оценка:
Здравствуйте, so5team, Вы писали:

S>Покажи мне язык без GC, в котором управление памятью не поломано.

Да и вообще с какого перепугу оно "поломано"?
Просто потому что оно не задизайнено подтирать за жидко обосравшимся криворуким говнокодером?
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[48]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 24.08.22 20:01
Оценка: +2
Здравствуйте, CreatorCray, Вы писали:

S>>Покажи мне язык без GC, в котором управление памятью не поломано.

CC>Да и вообще с какого перепугу оно "поломано"?

Раз разработчику нужно делать это вручную, да еще и думать (думать!) об этом, значит сломано. Подозреваю, Тёмчик это подразумевает.

CC>Просто потому что оно не задизайнено подтирать за жидко обосравшимся криворуким говнокодером?


Именно.
Re[46]: Оставаться в С++ или уходить?
От: Артём Австралия жж
Дата: 24.08.22 22:26
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Я пишу на С++, признаю неудобства, но выбора как-то нет.

N>Я пишу и на Питоне, он меня бесит, но выбора нет.
N>Ещё есть код на С# для GUI, с которым надо интегрироваться и отлаживаться, подбешивает, но выбора нет.

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


PS оффтоп вопрос здесь http://rsdn.org/forum/flame.comp/8343049?tree=tree
Автор: Артём
Дата: 25.08.22
Отредактировано 24.08.2022 22:57 Артём . Предыдущая версия .
Re[47]: Оставаться в С++ или уходить?
От: Артём Австралия жж
Дата: 24.08.22 22:30
Оценка: :)
Здравствуйте, DiPaolo, Вы писали:

DP>Его разрабатывали 40 лет назад. Тогда индустрия только начиналась. Языков до него было не так уж много.

Вот именно. Что когда автор плюсплюс предложил добавить классы к C, это было офигенно. Прошло 40 лет, появились и другие языки чтоб заполнить нишу плюсплюс. А сам плюсплюс скатился в с. гно.
Re[42]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 25.08.22 22:18
Оценка:
S>Просто в C++ из-за обилия возможностей, это страшнее, чем в какой-нибудь условной Java.

Про что и речь.
С++ нужен только там, где он либо уже есть (и его не убрать), либо в очень ограниченных условиях применения. Для остального есть более современные языки.
Re[44]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 25.08.22 22:21
Оценка:
S>Похоже, главная проблема C++ -- это отсутствие защиты от дурака.

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

Вот только не надо про "а мы дураков не пустим". Пустите, куда денетесь, — у инженеров власти над набором сотрудников как правило нет.
Re[46]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 25.08.22 22:24
Оценка: -1
S>Ну а несостыковки в каких-то местах -- это следствие многолетней эволюции.

Именно потому — избыток сложности. Везде торчат рудименты и атавизмы. Про что и было много раз написано: если б не груз совместимости ("сложно переписать на новом языке"), давно бы уже С++ вынесли из большинства важных мест. Примерно как Фортран — он есть, там где нужно старый код гонять.
Re[43]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 26.08.22 05:12
Оценка:
Здравствуйте, SkyDance, Вы писали:

SD>либо в очень ограниченных условиях применения.


"О чем, блин, я тут уже раз 5 написал." (c)
Re[45]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 26.08.22 05:17
Оценка:
Здравствуйте, SkyDance, Вы писали:

S>>Похоже, главная проблема C++ -- это отсутствие защиты от дурака.


SD>Точно.


Ой ли?

SD>Именно так.


Можете показать язык, где такая защита есть?

SD>Пустите, куда денетесь,


Отучаемся говорить за всех.

На счет сложности: сопромат -- это непростая дисциплина, но почему-то никому и в голову не приходит утверждать, что сопромат говно, патамушта сильнасложно, и на задачи по расчету прочности конструкций и элементов двигателей почему-то берут именно тех, кто сопромат смог освоить.
Re[47]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 26.08.22 05:27
Оценка: +1
Здравствуйте, SkyDance, Вы писали:

SD>Именно потому — избыток сложности.


Это только вершина айсберга, не самая страшная, имхо.

SD>Везде торчат рудименты и атавизмы.


Как и в любом языке возрастом постарше 30 лет. Будь то C++, или Python, или Perl.

SD>Про что и было много раз написано: если б не груз совместимости ("сложно переписать на новом языке"), давно бы уже С++ вынесли из большинства важных мест.


Но пока приходится жить в мире, в котором это счастливое событие еще не наступило. И пока у C++ реальными конкурентами на его поле являются чистый Си, Ada и Rust. И я не могу сказать, что Ada и Rust уступают C++ в сложности. В Rust-е так еще и от ООП с исключениями отказались, потому что сложность языка тогда бы зашкалила до предела, да и не факт, что вообще удалось бы подружить ООП с Rust-овскими принципами. Чистый Си, конечно же, много проще, но там другая проблема: писать на нем в разы сложнее, чем на C++.

Так что если у кого-то есть задача сделать свой условный nginx или ffmpeg, то C++ будет на первых позициях в очень и очень коротком шорт-листе подходящих языков.

SD>Примерно как Фортран — он есть, там где нужно старый код гонять.


Говорят, что ученые, которым приходится заниматься вычислениями (математики, физики, химики и т.д.), гораздо лучше справляются с современным Фортраном, чем с C++. Так что, предположу, что и здесь вы сильно не правы.
Re[46]: Оставаться в С++ или уходить?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 26.08.22 12:44
Оценка:
Здравствуйте, Артём, Вы писали:

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


N>>_Циклическим_?

N>>Это что и как надо курить, чтобы такой код написать? Делись рецептами.

Аё>https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rc-dtor-fail

Аё>https://www.learncpp.com/cpp-tutorial/circular-dependency-issues-with-stdshared_ptr-and-stdweak_ptr/

Тёмчик, тебя спросили, как RAII приводит к циклическим зависимостям. RAII, а не схема со счётчиком ссылок. Но тебе, видимо, слишком сложно понять разницу.
То же про UB. Проблема обработки ошибок в финализаторе — она общая. Она и в Java, и в C#, и везде, где есть финализатор, как бы он ни назывался.

Аё>Конечно, фанатики плюсплюс сразу пишут код правильно.


"Фанатики плюсплюс" (c), в отличие от Тёмчика, умеют читать и даже обдумывать прочтённое.
The God is real, unless declared integer.
Re[46]: Оставаться в С++ или уходить?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 26.08.22 12:45
Оценка:
Здравствуйте, DiPaolo, Вы писали:

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

DP>Ага. Так и представляю картину: сидит такой плюсовщик и ничего не делает в понедельник на работе. На вопросы начальства отвечает, что в выходные он осознал и признал "поломанность плюсплюсного дизайна", и отказывается работать в таких ужасных условиях: либо переписываем все на Го, либо давайте надбавку за вредные условия труда!

После чего он читает про defer-recover и про случаи когда nil != nil, вырывает остатки волос по всему телу и начинает требовать ещё в 2 раза больше
The God is real, unless declared integer.
Re[45]: Оставаться в С++ или уходить?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 26.08.22 13:21
Оценка:
Здравствуйте, SkyDance, Вы писали:

SD>Точно.

SD>Именно так.
SD>Теперь надо смягчить формулировку (чтоб не обидеть этих самых дураков), и получится такое: "язык слишком сложный". О чем, блин, я тут уже раз 5 написал.

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

SD>Вот только не надо про "а мы дураков не пустим". Пустите, куда денетесь, — у инженеров власти над набором сотрудников как правило нет.


Зато, как правило, есть власть над принятием кода этих сотрудников. И живительные п..юли за полгода-год приводят к норме даже самых упрямых.
The God is real, unless declared integer.
Re[47]: Оставаться в С++ или уходить?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 26.08.22 13:26
Оценка: +1
Здравствуйте, SkyDance, Вы писали:

SD>Именно потому — избыток сложности. Везде торчат рудименты и атавизмы. Про что и было много раз написано: если б не груз совместимости ("сложно переписать на новом языке"), давно бы уже С++ вынесли из большинства важных мест. Примерно как Фортран — он есть, там где нужно старый код гонять.


Ты отличный пример человека, который рассуждает о вкусе апельсинов, даже ни разу их не видев.

Фортран и сейчас активно используется потому, что
1) на нём не нужно думать о всяких указателях и прочей низкоуровневой специфике — что слишком сложно и не нужно для заметной части математиков.
2) он предельно напрямую отражает, кхм, формулы в виде языка.
3) по ряду особенностей (например, логика алиасинга) позволяет делать даже более эффективный код, чем аналогичный на C/C++.

C++ важен тем, что позволяет на уровне языка плюс _простые_ статические анализаторы форсировать политики, сводящие число багов к минимуму. C такого не позволяет.
The God is real, unless declared integer.
Re[46]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 26.08.22 15:09
Оценка:
S>На счет сложности: сопромат -- это непростая дисциплина, но почему-то никому и в голову не приходит утверждать, что сопромат говно, патамушта сильнасложно, и на задачи по расчету прочности конструкций и элементов двигателей почему-то берут именно тех, кто сопромат смог освоить.

А вот в софтостроении не так. Берут не тех, кто смог освоить, а тех, кто зубрил leetcode. Поэтому требуются более простые и дуракоустойчивые инструменты.
Более того, даже если брать только грамотных людей, более простые и комфортные инструменты ускоряют разработку. Меньше багов, быстрее релизы и т.п..
Re[48]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 26.08.22 15:13
Оценка:
S>Но пока приходится жить в мире, в котором это счастливое событие еще не наступило.

Возвращаясь к сабжу: это как раз та причина, по которой дальнейшие вложения в С++ как технологию я бы предпочел ограничить. Иными словами, "уходить". Хотя бы для общего образования, поработать с другими языкам и фреймворками. Знание С/С++ все равно пригодится (ну, скажем, ту же JVM подтюнить, или баги какие в определенном варианте оной машины починить).

SD>>Примерно как Фортран — он есть, там где нужно старый код гонять.

S>Говорят, что ученые, которым приходится заниматься вычислениями (математики, физики, химики и т.д.), гораздо лучше справляются с современным Фортраном, чем с C++. Так что, предположу, что и здесь вы сильно не правы.

Именно про это я и написал: Фортран есть там, где нужно гонять старый [ментальный] код. Где конкретные математики и физики уже умеют работать с Фортраном — поэтому и продолжают с ним работать.

Самое дорогое в нашей профессии — научиться, и научить других людей. Поэтому так и важны технологии, где учиться нужно меньше. Абстракции всякие там.
Re[46]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 26.08.22 15:15
Оценка:
N>Зато, как правило, есть власть над принятием кода этих сотрудников.

Могу только позавидовать. Что я вижу в реале, так это отсутствие оной власти. Конечно, можно прокомментировать на тему "наши гайдлайны говорят делать вот так, а не вот так". Но реальной власти ("не пилите свой лас-вегас с блекджеком, используйте готовый вот отсюда") по факту может и не быть. Говорю о том, что вижу сам.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.