.NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shmj Ниоткуда  
Дата: 10.02.22 18:10
Оценка: :)
В FAQ есть статья, которую я прочитал много лет назад и сделал выбор в пользу .Net. Все дерзко и вроде бы разумно: https://rsdn.org/forum/info/FAQ.philosophy.dotnetvscpp

Вроде все разумно, но дошло до того, что сфера применения .Net — это написание бэкенда с выводом на WebAPI. Ну и собственно все.

Для современных сайтов используют JS-фреймворки и пререндер на Node.JS (если нужна индексация).

А злополучный C++ живее всех живых и помирать не собирается.

Как вы сейчас на это все смотрите?
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: samius Япония http://sams-tricks.blogspot.com
Дата: 10.02.22 18:14
Оценка:
Здравствуйте, Shmj, Вы писали:

S>А злополучный C++ живее всех живых и помирать не собирается.


Речь была о МС++, который почил.
Re[2]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shmj Ниоткуда  
Дата: 10.02.22 18:22
Оценка: +2
Здравствуйте, samius, Вы писали:

S>Речь была о МС++, который почил.


Он не настолько особенный, чтобы выделять его в отдельный язык.
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 10.02.22 18:54
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>Как вы сейчас на это все смотрите?

Adonz пропал после 08 08 2008. Как Кикабидзе. Интересный был собеседник
и солнце б утром не вставало, когда бы не было меня
Отредактировано 10.02.2022 18:55 Serginio1 . Предыдущая версия .
Re[3]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: samius Япония http://sams-tricks.blogspot.com
Дата: 10.02.22 19:00
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Здравствуйте, samius, Вы писали:


S>>Речь была о МС++, который почил.


S>Он не настолько особенный, чтобы выделять его в отдельный язык.

Дело не в особенностях, а в том, что поклонники C++ могут обидеться за смешение MC++ и C++.

Да, Роман упомянул в вопросе именно MC++, но Игорь ответил не вдаваясь в MC++ специфику. Я бы дополнил... MC++ безобразен тем, что в качестве самостоятельного языка он не нужен. А предназначался он лишь как клей между нативным и управляемым (.NET) мирами. Для успешного использования его нужно быть далеко не новичком в C++ и примерно экспертом в .NET. Иначе можно такие горы говн наворотить, что голый C++ столько не позволит наворотить.
Re[2]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: samius Япония http://sams-tricks.blogspot.com
Дата: 10.02.22 19:03
Оценка: +1
Здравствуйте, Serginio1, Вы писали:

S>Здравствуйте, Shmj, Вы писали:


S>>Как вы сейчас на это все смотрите?

S>Adonz пропал после 08 08 2008. Как Кикабидзе. Интересный был собеседник
Может быть, много после. Я помню его посты в то время, как он реагировал на события. А спустя года полтора я вроде бы не пошел к нему в проект, был вариант.
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Alexander G Украина  
Дата: 10.02.22 19:11
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Как вы сейчас на это все смотрите?


Я думаю, интересно, что в этом вопросе так мало поменялось за эти 18 лет.
Русский военный корабль идёт ко дну!
Re[2]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: RonWilson Россия  
Дата: 10.02.22 19:55
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>Adonz пропал после 08 08 2008. Как Кикабидзе. Интересный был собеседник


А куда он делся, нет инфы?
Re[3]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 10.02.22 20:15
Оценка:
Здравствуйте, RonWilson, Вы писали:

RW>Здравствуйте, Serginio1, Вы писали:


S>>Adonz пропал после 08 08 2008. Как Кикабидзе. Интересный был собеседник


RW>А куда он делся, нет инфы?

Нет не знаю.
и солнце б утром не вставало, когда бы не было меня
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 10.02.22 20:45
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Вроде все разумно, но дошло до того, что сфера применения .Net — это написание бэкенда с выводом на WebAPI. Ну и собственно все.

S>Для современных сайтов используют JS-фреймворки и пререндер на Node.JS (если нужна индексация).

С современными средствами получилось, что JIT для JS не сильно хуже, чем JIT для C#, зато единство языка для обеих сторон (браузер и бэкенд) для многих является супер-плюсом. Ну а для желающих типизации есть TS.
(А я ещё видел применение JS внутри андроида на той же базе.)

S>А злополучный C++ живее всех живых и помирать не собирается.


Основные рынки, отрезанные от C++, уже были отрезаны к 2008. Причин существенно меняться тут пока нечему.
С современной техникой сначала должны быть урезаны средства, которые не имеют нормального JIT (как Python или Erlang; для обоих только обещают что-то стартовать в ближайших релизах), и только после этого можно начать смотреть на борьбу C++ vs Java vs C#.

А вот то, что .NET при всех современных попытках усесться на все платформы не стал ходовым на Linux и прочих юниксах — это большой проигрыш. Надо было раньше избавляться от виндовых заточек.

S>Как вы сейчас на это все смотрите?


У меня сейчас C++. Пока нормально.
The God is real, unless declared integer.
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 11.02.22 00:40
Оценка: :)))
Здравствуйте, Shmj, Вы писали:

S>А злополучный C++ живее всех живых и помирать не собирается.


S>Как вы сейчас на это все смотрите?


Ошибся человек, бывает, был в восторге от потенциально хорошего инструмента, который был фактически загублен желанием управленцев МС всех пересадить на венду. Сделали бы сразу кроссплатформенное решение — был бы отличный конкурент миру JVM, ну а вышло что вышло.

Так же в то время реально казалось что C++ может помереть, но он после 2011 на оборот стрельнул вверх.

Ещё я рад что никакого отношения к C# не имею, а то имел бы сложности с поиском работы
Re[2]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shmj Ниоткуда  
Дата: 11.02.22 07:18
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Ошибся человек, бывает


Интересно мнение самого IT — считает ли что он ошибся, что его одурачили заманчивыми возможностями, но самого главного — фундамента — он не увидел?
Re[3]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Mihas  
Дата: 11.02.22 07:31
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Интересно мнение самого IT — считает ли что он ошибся, что его одурачили заманчивыми возможностями, но самого главного — фундамента — он не увидел?

Как-то можно приглашать пользователя в беседу, но я не знаю как.
Re[4]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 11.02.22 07:32
Оценка: +1
Здравствуйте, Mihas, Вы писали:

M>Здравствуйте, Shmj, Вы писали:


S>>Интересно мнение самого IT — считает ли что он ошибся, что его одурачили заманчивыми возможностями, но самого главного — фундамента — он не увидел?

M>Как-то можно приглашать пользователя в беседу, но я не знаю как.

Тут есть отправка личных сообщений, их кидает в почту.
The God is real, unless declared integer.
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: VladD2 Российская Империя www.nemerle.org
Дата: 11.02.22 23:07
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Вроде все разумно, но дошло до того, что сфера применения .Net — это написание бэкенда с выводом на WebAPI. Ну и собственно все.

S>А злополучный C++ живее всех живых и помирать не собирается.

У нас фронтэнд на дотнете, а бэкэнд на плюсах. Прикинь?

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

С другой стороны если тебе нужно написать бэкнд сайта или десктопное приложение для Винды, то дотнет самое то.

А если ты собрался писать код для Андроида, то Ява или Котлин лучший выбор.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: VladD2 Российская Империя www.nemerle.org
Дата: 11.02.22 23:08
Оценка:
Здравствуйте, samius, Вы писали:

S>Речь была о МС++, который почил.


Вообще-то живет до сих пор. У нас используется для изготовления оберток над нативными плюсами для дотнетного фронтэнда.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shtole  
Дата: 12.02.22 03:19
Оценка: +1
Здравствуйте, Serginio1, Вы писали:

S>Здравствуйте, Shmj, Вы писали:


S>>Как вы сейчас на это все смотрите?

S>Adonz пропал после 08 08 2008. Как Кикабидзе. Интересный был собеседник

lolwut?
Do you want to develop an app?
Re[2]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shtole  
Дата: 12.02.22 03:33
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Плюсы чертовско отвратиельная вещь, но в виду того, что в них вбухано море денег в некоторых применениях они рулят.


Легенды не врали! Адекватные сиплюсплюсники существуют!!!

P.S. Чертовски отвратительная вещь, да, но последний проект тоже начал на плюсах. Увы, в некоторых применениях они рулят, да.
P.P.S. Я вообще считаю, что хорошим сиплюсплюсником можно стать только имея опыт хотя бы по годику на шарпе/джаве (лучше шарпе), джаваскрипте и чём-нибудь функциональном. Чтобы научиться видеть, где у плюсов реально сильные стороны, а где слабые. К сожалению, большинство их — дети монокультуры, которые вокруг себя ничего не видят и, что самое печальное, видеть не хотят.
Do you want to develop an app?
Re[3]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 12.02.22 08:00
Оценка:
Здравствуйте, Shtole, Вы писали:

VD>>Плюсы чертовско отвратиельная вещь, но в виду того, что в них вбухано море денег в некоторых применениях они рулят.


S>Легенды не врали! Адекватные сиплюсплюсники существуют!!!


Такой комментарий в сторону дотнетчика удивляет

S>P.S. Чертовски отвратительная вещь, да, но последний проект тоже начал на плюсах. Увы, в некоторых применениях они рулят, да.

S>P.P.S. Я вообще считаю, что хорошим сиплюсплюсником можно стать только имея опыт хотя бы по годику на шарпе/джаве (лучше шарпе), джаваскрипте и чём-нибудь функциональном. Чтобы научиться видеть, где у плюсов реально сильные стороны, а где слабые. К сожалению, большинство их — дети монокультуры, которые вокруг себя ничего не видят и, что самое печальное, видеть не хотят.

Где мерял?
The God is real, unless declared integer.
Re[4]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: Shtole  
Дата: 12.02.22 08:16
Оценка:
Здравствуйте, netch80, Вы писали:

S>>P.S. Чертовски отвратительная вещь, да, но последний проект тоже начал на плюсах. Увы, в некоторых применениях они рулят, да.

S>>P.P.S. Я вообще считаю, что хорошим сиплюсплюсником можно стать только имея опыт хотя бы по годику на шарпе/джаве (лучше шарпе), джаваскрипте и чём-нибудь функциональном. Чтобы научиться видеть, где у плюсов реально сильные стороны, а где слабые. К сожалению, большинство их — дети монокультуры, которые вокруг себя ничего не видят и, что самое печальное, видеть не хотят.

N>Где мерял?


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

А! Про большинство, видимо? Это не измерения, это впечатление. Могу заменить на «встречаются среди них…», мне не принципиально.
Do you want to develop an app?
Отредактировано 12.02.2022 8:32 Shtole . Предыдущая версия .
Re[5]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 12.02.22 08:49
Оценка: +1
Здравствуйте, Shtole, Вы писали:

S>>>P.S. Чертовски отвратительная вещь, да, но последний проект тоже начал на плюсах. Увы, в некоторых применениях они рулят, да.

S>>>P.P.S. Я вообще считаю, что хорошим сиплюсплюсником можно стать только имея опыт хотя бы по годику на шарпе/джаве (лучше шарпе), джаваскрипте и чём-нибудь функциональном. Чтобы научиться видеть, где у плюсов реально сильные стороны, а где слабые. К сожалению, большинство их — дети монокультуры, которые вокруг себя ничего не видят и, что самое печальное, видеть не хотят.

N>>Где мерял?


S>Мерял что? Если вы про профессиональные качества, была возможность сравнить тех, кто пописал на всяком-разном и осознанно выбрал плюсы как оптимальный инструмент для решения задачи и тех, кто ничего другого знать просто не хочет.


Какая ширина выборки 1) в людях и 2) в фирмах/командах?
Что-то я подозреваю, что в обоих случаях объёмы близкие к ничтожным.

S>А! Про большинство, видимо? Это не измерения, это впечатление. Могу заменить на «встречаются среди них…», мне не принципиально.


Ну вот достоверность такого статистического впечатления под очень естественным сомнением.
The God is real, unless declared integer.
Re[6]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: Shtole  
Дата: 12.02.22 09:13
Оценка:
Здравствуйте, netch80, Вы писали:

S>>Мерял что? Если вы про профессиональные качества, была возможность сравнить тех, кто пописал на всяком-разном и осознанно выбрал плюсы как оптимальный инструмент для решения задачи и тех, кто ничего другого знать просто не хочет.


N>Какая ширина выборки 1) в людях и 2) в фирмах/командах?

N>Что-то я подозреваю, что в обоих случаях объёмы близкие к ничтожным.

Вы о чём? Статистика не нужна, когда у вас есть объяснения. Если человек говорит, например, что стандартная библиотека C++ прекрасна и лишена изъянов только потому, что он других просто не видел, мне не нужна никакая широкая выборка, чтобы назвать такое поведение профессиональной близорукостью.

S>>А! Про большинство, видимо? Это не измерения, это впечатление. Могу заменить на «встречаются среди них…», мне не принципиально.

N>Ну вот достоверность такого статистического впечатления под очень естественным сомнением.

Я же сказал, этот момент для меня не принципиален. Пусть будет не большинство. Пусть будет «некоторые». Беру про большинство назад! Я же ведь только рад буду, на самом деле, если большинство будет разделять точку зрения, озвученную Владом.
Do you want to develop an app?
Re[7]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 12.02.22 09:22
Оценка:
Здравствуйте, Shtole, Вы писали:

N>>Какая ширина выборки 1) в людях и 2) в фирмах/командах?

N>>Что-то я подозреваю, что в обоих случаях объёмы близкие к ничтожным.

S>Вы о чём? Статистика не нужна, когда у вас есть объяснения.


О да. А гром от того, что Илья-пророк по небу катается. Объяснение есть, зачем что-то ещё?

S> Если человек говорит, например, что стандартная библиотека C++ прекрасна и лишена изъянов только потому, что он других просто не видел, мне не нужна никакая широкая выборка, чтобы назвать такое поведение профессиональной близорукостью.


Ещё раз — сколько людей и из скольких команд вы видели и сколько из них такое утверждает?

N>>Ну вот достоверность такого статистического впечатления под очень естественным сомнением.


S>Я же сказал, этот момент для меня не принципиален.


Ааа. Ok, считаю, отказ от предыдущего вывода принят.

S> Пусть будет не большинство. Пусть будет «некоторые». Беру про большинство назад! Я же ведь только рад буду, на самом деле, если большинство будет разделять точку зрения, озвученную Владом.


Почему именно эту точку зрения? Она не менее бредовая, чем ваш пример с "стандартная библиотека C++ прекрасна и лишена изъянов", только в противоположную сторону.
The God is real, unless declared integer.
Re[8]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: Shtole  
Дата: 12.02.22 09:49
Оценка:
Здравствуйте, netch80, Вы писали:

N>>>Какая ширина выборки 1) в людях и 2) в фирмах/командах?

N>>>Что-то я подозреваю, что в обоих случаях объёмы близкие к ничтожным.

S>>Вы о чём? Статистика не нужна, когда у вас есть объяснения.


N>О да. А гром от того, что Илья-пророк по небу катается. Объяснение есть, зачем что-то ещё?


Прилично или нет будет дать ссылку на свой материал на другом ресурсе, где разобрана эта тема? Здесь явно не место для эпистемологических изысканий. Да и желания у меня нет в очередной раз эту тему мусолить. Могу просто в личку скинуть и закроем эту тему, ОК?

S>> Если человек говорит, например, что стандартная библиотека C++ прекрасна и лишена изъянов только потому, что он других просто не видел, мне не нужна никакая широкая выборка, чтобы назвать такое поведение профессиональной близорукостью.


N>Ещё раз — сколько людей и из скольких команд вы видели и сколько из них такое утверждает?


Ещё раз: обсуждайте по существу. Если есть что сказать по существу. Утверждение приведено, и оно, как мне кажется, из разряда самоочевидных. Если человек знает только один инструмент, очевидно, что он понимает его сильные и слабые стороны хуже, чем человек, знакомый с несколькими разными инструментами. Какая вам вообще разница, со сколькими людьми я общался, чтобы придти к этому нехитрому выводу?

N>Ааа. Ok, считаю, отказ от предыдущего вывода принят.


Смотря какого предыдущего. Про большинство — да. От остального я, вроде бы, не отказывался, чтобы принимать.

S>> Пусть будет не большинство. Пусть будет «некоторые». Беру про большинство назад! Я же ведь только рад буду, на самом деле, если большинство будет разделять точку зрения, озвученную Владом.

N>Почему именно эту точку зрения? Она не менее бредовая, чем ваш пример с "стандартная библиотека C++ прекрасна и лишена изъянов", только в противоположную сторону.

А вы писали годик на шарпе, JS и чём-то более-менее функциональном? Имеется в виду, в реальном проекте, на постоянной основе, с утра до вечера, а не просто потыкать палочкой.
Do you want to develop an app?
Re[9]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 12.02.22 10:55
Оценка: +1
Здравствуйте, Shtole, Вы писали:

N>>Ещё раз — сколько людей и из скольких команд вы видели и сколько из них такое утверждает?


S>Ещё раз: обсуждайте по существу. Если есть что сказать по существу. Утверждение приведено, и оно, как мне кажется, из разряда самоочевидных. Если человек знает только один инструмент, очевидно, что он понимает его сильные и слабые стороны хуже, чем человек, знакомый с несколькими разными инструментами. Какая вам вообще разница, со сколькими людьми я общался, чтобы придти к этому нехитрому выводу?


Я и говорю по существу, в отличие от вас. Раньше вы писали:

>> Чтобы научиться видеть, где у плюсов реально сильные стороны, а где слабые. К сожалению, большинство их — дети монокультуры, которые вокруг себя ничего не видят и, что самое печальное, видеть не хотят.


Вот поэтому и вопрос — откуда утверждение про "большинство" и почему вы его не уточнили хотя бы до "большинство тех, с кем я общался на эту тему" (даже не "тех, кого видел/знаю")?

Есть такое понятие anecdotal evidence, и вы показываете именно его. В мире существует 100500 вариантов всего, включая разработчиков с их отношением к языкам. Кто-то подходит по принципу "задачу решил, а там хоть трава не расти". Кто-то говорит "это идеальный инструмент для всего, другого и не нужно". Кто-то говорит "идеального инструмента не может быть в принципе, но для данных условий с этим можно вполне эффективно работать". У кого-то промежуточная позиция (полный континуум промежуточных позиций, ограниченный количеством людей на планете; считаем, у инопланетян нет C++).

У вас есть какие-то результаты опроса хотя бы на RSDN? На StackOverflow? В каком-то ещё месте, где можно получить ответ на вопрос хотя бы от 200 человек (лучше 1000) и чтобы эта выборка имела шанс быть репрезентативной? И чтобы она была с адекватными вопросами (в первую очередь, сколько ещё языков и подходов человек освоил)?


N>>О да. А гром от того, что Илья-пророк по небу катается. Объяснение есть, зачем что-то ещё?


S>Прилично или нет будет дать ссылку на свой материал на другом ресурсе, где разобрана эта тема? Здесь явно не место для эпистемологических изысканий. Да и желания у меня нет в очередной раз эту тему мусолить. Могу просто в личку скинуть и закроем эту тему, ОК?


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


S>>> Пусть будет не большинство. Пусть будет «некоторые». Беру про большинство назад! Я же ведь только рад буду, на самом деле, если большинство будет разделять точку зрения, озвученную Владом.

N>>Почему именно эту точку зрения? Она не менее бредовая, чем ваш пример с "стандартная библиотека C++ прекрасна и лишена изъянов", только в противоположную сторону.
S>А вы писали годик на шарпе, JS и чём-то более-менее функциональном? Имеется в виду, в реальном проекте, на постоянной основе, с утра до вечера, а не просто потыкать палочкой.

Ну если задача померяться... ok. Я писал, если считать только по пересчёту суммарного времени на чистое рабочее (на глаз, но в целом близко): 9 лет на Python (можно считать эквивалентом JS для данного контекста, тоже максимально динамический), полгода на Perl (аналогично), около года на Java, 4 года на Erlang (пойдёт вам за функциональный?), 4 на C, 4 — на C++. В календарном — большинство цифр умножить примерно на 2, для Perl — около 10, для C — больше 20. Это только основные, были ещё разнообразные отвлечения на ассемблеры, Fortran, Pascal, шеллы, тот же JS... и да, это всё реальные проекты.
Думаю, я на основании этого очень разнообразного опыта могу судить, что C++ вполне неплох в своей нише, и эта ниша вполне широка, чтобы не игнорировать его. И про людей, которые на нём пишут, могу судить: большинство вполне адекватно понимает его преимущества, области адекватной применимости и недостатки — даже если их карьерная среда, как вы выразились, это "монокультура" (хотя таких меньшая часть, из тех, что я видел).


Теперь ваша очередь рассказывать про себя. И спектр средств и задач, и количество разных команд и людей с C++ и не только. Ну или не рассказывайте — но это не придаст вашему личному опыту хоть какой-то вес для остальных.
The God is real, unless declared integer.
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: okman Беларусь https://searchinform.ru/
Дата: 12.02.22 13:03
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>В FAQ есть статья, которую я прочитал много лет назад и сделал выбор в пользу .Net. Все дерзко и вроде бы разумно: https://rsdn.org/forum/info/FAQ.philosophy.dotnetvscpp

S>Вроде все разумно, ...
S>...
S>Как вы сейчас на это все смотрите?

И что там разумного? Сравнение C++ с хождением по граблям на ходулях? Да это какой-то детский сад, даже комментировать нечего.
"XXX лучше YYY" для определенного круга задач. Ну ок, и что с того? Уже обсуждали это все миллионы раз на разных форумах,
разве нет более интересного занятия? Да, все такие обсуждения быстро перерастают в срач и пиписькометрию. Не стоит на это
тратить свое время, его и так с каждым годом становится все меньше.
Re[10]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: Shtole  
Дата: 12.02.22 19:59
Оценка:
Здравствуйте, netch80, Вы писали:

А теперь вернёмся к истокам
Автор: netch80
Дата: 12.02.22
, тысызыть:

S>Мерял что? Если вы про профессиональные качества, была возможность сравнить тех, кто пописал на всяком-разном и осознанно выбрал плюсы как оптимальный инструмент для решения задачи и тех, кто ничего другого знать просто не хочет.

N>Какая ширина выборки 1) в людях и 2) в фирмах/командах?

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

Но трёх раз мало, давайте в четвёртый раз обсудим во всех деталях, как этот парень напрасно сказал «большинство», ведь на самом деле нет никаких доказательств, что это большинство, ведь большинство делает большинством количественное превосходство большинства и только тогда оно большинство. Большинство, большинство, большинство!

S>>>> Пусть будет не большинство. Пусть будет «некоторые». Беру про большинство назад! Я же ведь только рад буду, на самом деле, если большинство будет разделять точку зрения, озвученную Владом.

N>>>Почему именно эту точку зрения? Она не менее бредовая, чем ваш пример с "стандартная библиотека C++ прекрасна и лишена изъянов", только в противоположную сторону.
S>>А вы писали годик на шарпе, JS и чём-то более-менее функциональном? Имеется в виду, в реальном проекте, на постоянной основе, с утра до вечера, а не просто потыкать палочкой.

N>Ну если задача померяться... ok. Я писал, если считать только по пересчёту суммарного времени на чистое рабочее (на глаз, но в целом близко): 9 лет на Python (можно считать эквивалентом JS для данного контекста, тоже максимально динамический), полгода на Perl (аналогично), около года на Java, 4 года на Erlang (пойдёт вам за функциональный?), 4 на C, 4 — на C++. В календарном — большинство цифр умножить примерно на 2, для Perl — около 10, для C — больше 20. Это только основные, были ещё разнообразные отвлечения на ассемблеры, Fortran, Pascal, шеллы, тот же JS... и да, это всё реальные проекты.

N>Думаю, я на основании этого очень разнообразного опыта могу судить, что C++ вполне неплох в своей нише, и эта ниша вполне широка, чтобы не игнорировать его. И про людей, которые на нём пишут, могу судить: большинство вполне адекватно понимает его преимущества, области адекватной применимости и недостатки — даже если их карьерная среда, как вы выразились, это "монокультура" (хотя таких меньшая часть, из тех, что я видел).

Нет, задача не померяться. Я просто с трудом себе представляю человека, который с таким бэкграундом сомневался бы в изначальном тезисе. Что-то вы, Герасим, недоговариваете.

N>Теперь ваша очередь рассказывать про себя. И спектр средств и задач, и количество разных команд и людей с C++ и не только. Ну или не рассказывайте — но это не придаст вашему личному опыту хоть какой-то вес для остальных.


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

Давайте я просто обозначу реперные точки, которые сочту нужным.

Впервые я начал изучать плюсы одновременно с Direct3D (IM), и было это… в 1998 году, кажется. Изучать и то, и другое приходилось по сэмплам, что, вообще говоря, лучший способ что-то изучить, но, к сожалению, не тогда, когда приходится изучать три вещи сразу: язык, API и MFC (как в некоторых примерах, причём как раз тех, которые мне были нужны — загрузчиках моделей через File/Open). Вообще-то, четыре: ещё и COM, хотя его изучение тогда почему-то совсем не запомнилось. Книги по актуальным компьютерным технологиям тогда стоили дорого для бедной студентоты (впрочем, тут мало что поменялось), а Интернета не было (а вот тут поменялось радикально всё, и слава богам), приходилось читать в магазине. По полчаса за раз. Пока дворник не выгонял, ибо «тут не библиотека». Пока я так не дочитал до главы про this, можете представить, какие адские порождающие паттерны приходилось использовать, чтобы все заинтересованные стороны про всех знали! Особенно, в MFC. Он же, в первую очередь, Model-View-Controller, и только во вторую — библиотека оконных классов. «Житие у нас тогда в шестнадцать лет… тяжкое было».

И после этого я очень много лет каждый день кроме плюсов ничего не видел. Когда появился дотнет, прямо тут про него и читал. Помните? «Память больше не ресурс!» ©IT. Я и до сих пор на плюсах пишу временами. Гигабайты Буста, бесконечные поиски, как чисто плюсовыми средствами сделать не слишком ущербно то, что нужно
Автор: удусекшл
Дата: 04.02.22
, вот это всё.

К счастью, я не стал вариться в собственном соку, а пробовал новое. И после того, как я пописал хорошенько с применением FCL, LINQ, TIS, поизучал немного Nemerle, уж про веб вообще молчу, я его фулстек труба шатал изучал, смотреть без слёз на std::chrono::system_clock::now().time_since_epoch().count(); не могу.

А про разных людей и команды… Ну ок, будет вам сейчас разоблачение сеанса чёрной магии, которого так упорно добивался любезнейший netch80. В общем, когда я написал «большинство», я имел в виду конкретный ресурс. Догадайтесь, какой. Только не просите меня переходить границу невежливости совсем глубоко, приводя конкретные примеры и расчёты. Считайте, что я его читаю так давно, что даже помню поимённо всех, у кого в плюсовом форуме была зелёненькая надпись «Эксперт». Между прочим, на других ресурсах (Хабре, например) картина совсем другая. Там подавляющее большинство согласно с тем, что плюсы отвратительная штука, хотя ей часто приходится пользоваться. А измерения там встроенные.

Что касается этого спора, как вы сами считаете, он аргумент в пользу чего?
Do you want to develop an app?
Re[11]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 12.02.22 22:15
Оценка:
Здравствуйте, Shtole, Вы писали:

S>Я написал про профессиональные качества, но вы начали требовать с меня выборку. А теперь делаете вид, что всё это время спор был про «большинство», хотя я от этого тезиса отказался сразу.


1. Я перечитал ветку и собственно "отказа от тезиса" не вижу. Если это про реплику

S>>Вы о чём? Статистика не нужна, когда у вас есть объяснения.


то его крайне сложно считать "отказом от тезиса".

2. Как уже сказал, странных позиций и подходов может быть много. Но чтобы о них говорить, нужно, чтобы они были значимы — или статистически для многих, или чем-то лично, или ценными идеями. Первое не доказано, второе если имеет значение, то лично для вас, третьего не наблюдается по определению. Тогда зачем мы их тут обсуждаем по вашему побуждению? Я не учёл ещё какого-то фактора или варианта?

S>Нет, задача не померяться. Я просто с трудом себе представляю человека, который с таким бэкграундом сомневался бы в изначальном тезисе. Что-то вы, Герасим, недоговариваете.


Ну, почему бы вам таки не предположить, что дело не в каком-то "недоговаривании", а в реальных причинах?

S>Это забавно. Часто бывает, что пишешь-пишешь кулсторию, а её никто не читает. Но стоит раззадорить кого-то в споре, появляется искренний интерес, лол. Жаль, что практической ценности этот приём не имеет.


Я не вполне понял, с какой стороны, по-вашему, появляется искренний интерес. Но интересные дискуссии это ценно, даже если не приводят к однозначно общему мнению — отдельные аргументы могут быть ценны сами по себе. Это именно то, почему я вообще тут пытаюсь вести данный диалог.

S>Давайте я просто обозначу реперные точки, которые сочту нужным.


S>Впервые я начал изучать плюсы одновременно с Direct3D (IM), и было это… в 1998 году,


[...]

S>И после этого я очень много лет каждый день кроме плюсов ничего не видел. Когда появился дотнет, прямо тут про него и читал. Помните? «Память больше не ресурс!» ©IT.


Помню. Я ещё в конце 2000 или начале 2001 пытался читать/писать этот сайт. Он бесконечно вис и не работал ни под чем кроме IE, а у меня на работе был Netscape (сначала под Solaris, потом под FreeBSD), в котором ничего этого тупо не работало — а дома я не хотел ходить сюда, было чем заняться. Только в 2004 оно начало нормально работать.
Да, это был важный контраргумент против дотнета
И "память больше не ресурс" — тоже, потому что память таки ресурс. Особенно с тем, что с 2012 цена на RAM не уменьшается (ходит в одном коридоре).
Современному дотнету это не очень мешает _покамест_, но некоторым другим подходам — однозначно.

S> Я и до сих пор на плюсах пишу временами. Гигабайты Буста, бесконечные поиски, как чисто плюсовыми средствами сделать не слишком ущербно то, что нужно
Автор: удусекшл
Дата: 04.02.22
, вот это всё.


Ну хорошо, вы озвучили проблему C++. Хотя это проблема не только C++, но и C — через fopen() такого тоже не достичь. Но там ещё много есть чего так не сделать. Например, безопасная работа с файлами в Linux предполагает O_NOCTTY (грустное глупое наследие SVR). В многонитевом приложении сейчас является нормальным тоном сразу открывать любой файл с O_CLOEXEC. Или есть O_DIRECT, O_EXLOCK (в BSD системах...) Должно ли это всё выноситься на уровень языка и если да, то как? И что нам дотнет для этого предложит? Я вот быстро заглянул в справку — там, например, OpenOrCreate не сочетается с Truncate, а Truncate — с чтением файла после этого. Create, судя по доке, тоже не позволяет читать. И оба они не сочетаются с Append. Ну и как с таким работать?

S>К счастью, я не стал вариться в собственном соку, а пробовал новое. И после того, как я пописал хорошенько с применением FCL, LINQ, TIS, поизучал немного Nemerle, уж про веб вообще молчу, я его фулстек труба шатал изучал, смотреть без слёз на std::chrono::system_clock::now().time_since_epoch().count(); не могу.


Ну да, громоздко пишется. Тут проблемка, согласен. Зато выливается в достаточно эффективный код (там разве что чуть-чуть лишних умножений и делений).
Но вы понимаете, что это всё для разных задач, что дотнет неприменим в огромном классе задач, где работают C/C++?
И что тот же дотнет реализован на C++?

S>А про разных людей и команды… Ну ок, будет вам сейчас разоблачение сеанса чёрной магии, которого так упорно добивался любезнейший netch80. В общем, когда я написал «большинство», я имел в виду конкретный ресурс. Догадайтесь, какой. Только не просите меня переходить границу невежливости совсем глубоко, приводя конкретные примеры и расчёты. Считайте, что я его читаю так давно, что даже помню поимённо всех, у кого в плюсовом форуме была зелёненькая надпись «Эксперт».


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

S> Между прочим, на других ресурсах (Хабре, например) картина совсем другая. Там подавляющее большинство согласно с тем, что плюсы отвратительная штука, хотя ей часто приходится пользоваться. А измерения там встроенные.


Вы как-то однобоко смотрите. Да, здесь меньше таких, как khim, который рассказывает, как в базе C++ сделаны катастрофические диверсии. Но это не значит, что тут такое не понимают.

S>Что касается этого спора, как вы сами считаете, он аргумент в пользу чего?


Разумеется, аргумента, что у C/C++ своя широчайшая ниша и что сравнение с C#, JS и прочими неадекватно потому, что они в принципе в ней не могут работать.

(А два ваших конкретных примера ещё и характерны тем, что воспользоваться платформенными средствами вместо недостающего в них банально. Вот в управляемых средах кроме дотнета обойти ограничения иногда невозможно.)
The God is real, unless declared integer.
Re[12]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: Shtole  
Дата: 14.02.22 02:04
Оценка:
Здравствуйте, netch80, Вы писали:

S>>Я написал про профессиональные качества, но вы начали требовать с меня выборку. А теперь делаете вид, что всё это время спор был про «большинство», хотя я от этого тезиса отказался сразу.


N>1. Я перечитал ветку и собственно "отказа от тезиса" не вижу. Если это про реплику


Перечитайте ещё раз, чтобы увидеть, где дискуссия разделилась на два направления и где должно было закрыться обсуждение слова «большинство». Впрочем, скорее всего не поможет. Если бы цель была понять, вы бы давно поняли. Но цель, очевидно, позащищать любимый инструмент от критики. Я уже прямо написал: вот такие разговоры и показывают всю близорукость поклонников плюсов.

N>2. Как уже сказал, странных позиций и подходов может быть много. Но чтобы о них говорить, нужно, чтобы они были значимы — или статистически для многих, или чем-то лично, или ценными идеями. Первое не доказано, второе если имеет значение, то лично для вас, третьего не наблюдается по определению. Тогда зачем мы их тут обсуждаем по вашему побуждению? Я не учёл ещё какого-то фактора или варианта?


Позицию, которая не нравится, мы называем «странной» безо всякой статистики. А вот чтобы заиметь право её после этого обсуждать — нужна статистика. Удобно, чо.

N>Я не вполне понял, с какой стороны, по-вашему, появляется искренний интерес. Но интересные дискуссии это ценно, даже если не приводят к однозначно общему мнению — отдельные аргументы могут быть ценны сами по себе. Это именно то, почему я вообще тут пытаюсь вести данный диалог.


Как говорил Станиславский… Выглядит больше так, что вам просто не понравилось моё критическое замечание в адрес поклонников плюсов и вы хотите заткнуть мне рот. Требованием статистики в ситуации, когда такое требование просто неуместно. («Если человек знает только один инструмент, очевидно, что он понимает его сильные и слабые стороны хуже, чем человек, знакомый с несколькими разными инструментами.»)

N>Да, это был важный контраргумент против дотнета

N>И "память больше не ресурс" — тоже, потому что память таки ресурс. Особенно с тем, что с 2012 цена на RAM не уменьшается (ходит в одном коридоре).

Если вы действительно помните контекст, то полностью это звучало примерно как: «[И хочется просто сказать, что ] память больше не ресурс [и закрыть редактор со статьёй, но это будет глупо ... <тут куча технических подробностей>]».

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

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

Вообще, к слову сказать, это в наши дни уже не так актуально. Но дело не в ценах на RAM, а в том, что подход к написанию софта сильно изменился. Сейчас пишется, по большей части (по опыту предыдущей беседы, видимо, пора вставлять после каждого предложения формулировки как у юристов: «личное оценочное суждение»), «клеевой» (glue) код между большими готовыми кусками. Требование к памяти этого кода — вопрос вообще третьестепенной важности.

Простой пример. Вот вы пишете на плюсах и используете для UI CEF3. Опаньки: 6 процессов, минимум гиг виртуальной и плюс сто метров в каждом обновлении. А если вы пишете на плюсах, но используете вместо CEF3 сами-знаете-что — у вас внутрипроцессная библиотека, на порядки меньшее потребление памяти, плюс несколько метров в обновлении. Причём, и CEF3, и сами-знаете-что тоже написаны на плюсах. Понимаете? Выбор «большого куска» (такого как CEF3) повлияет на результирующее потребление памяти неимоверно сильнее, чем выбор плюсов или шарпа для кода, который им управляет.

S>> Я и до сих пор на плюсах пишу временами. Гигабайты Буста, бесконечные поиски, как чисто плюсовыми средствами сделать не слишком ущербно то, что нужно
Автор: удусекшл
Дата: 04.02.22
, вот это всё.


N>Ну хорошо, вы озвучили проблему C++. Хотя это проблема не только C++, но и C — через fopen() такого тоже не достичь. Но там ещё много есть чего так не сделать. Например, безопасная работа с файлами в Linux предполагает O_NOCTTY (грустное глупое наследие SVR). В многонитевом приложении сейчас является нормальным тоном сразу открывать любой файл с O_CLOEXEC. Или есть O_DIRECT, O_EXLOCK (в BSD системах...) Должно ли это всё выноситься на уровень языка и если да, то как? И что нам дотнет для этого предложит? Я вот быстро заглянул в справку — там, например, OpenOrCreate не сочетается с Truncate, а Truncate — с чтением файла после этого. Create, судя по доке, тоже не позволяет читать. И оба они не сочетаются с Append. Ну и как с таким работать?


А что в этом хорошего («Ну хорошо»)? Это значит, что фокус разработчиков много лет смещён от практических задач к… да хрен его разберёт к чему. К сложностям ради сложностей.

Вот недавно была статья «Си должен умереть» (или как-то так, не помню). Я её только раза с пятого правильно прочитал. Конечно, это не потому, что авторы тролли, а потому, что я плохой инженер, да. Неважно, на самом деле. Суть в том, что в наши дни Си тоже попал в руки астронавтов. Там приводилась, например, переписка Линуса, который пишет что-то полезное, и разработчиков компиляторов. Можете представить, да? Линус в таких случаях за словом в карман не лезет и проходится по всей домовой книге.

А уж про плюсы в этом смысле можно вообще не говорить: Марс атакует.

S>>К счастью, я не стал вариться в собственном соку, а пробовал новое. И после того, как я пописал хорошенько с применением FCL, LINQ, TIS, поизучал немного Nemerle, уж про веб вообще молчу, я его фулстек труба шатал изучал, смотреть без слёз на std::chrono::system_clock::now().time_since_epoch().count(); не могу.


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


Аааааа! Я не могу.

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

Вот вам художественное («личное оценочное суждение»!) сравнение. Вы покупаете Форд Фокус, а там из приборной панели торчит резиновый член, поддерживает крышечку от вентиляции. Можно, конечно, сказать: «Ну да, громоздко». А я вот скажу: как, как ЭТО дошло до релиза и попало в руки юзеров? Что вообще с этим автопроизводителем случилось?

N>Но вы понимаете, что это всё для разных задач, что дотнет неприменим в огромном классе задач, где работают C/C++?


А вы понимаете, что небо синее? Трава зелёная? Или что я написал где-то вверху: «пришлось последний проект начинать на плюсах»?

Дело, кстати говоря, не так уж часто именно в задачи упирается. Скорее, что-то типа: «Храним всё в sqlite, рисуем Скайтером, вмешиваемся в хендловый слой винды. Бля, и как сюда впишется дотнет? Ничего не поделаешь, опять крестики к бою»! (Пальцы написали: «К болю». Что тоже верно).

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

N>И что тот же дотнет реализован на C++?


Мне стыдно за нас обоих, что разговор дошёл до такого.
Do you want to develop an app?
Re[2]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.02.22 02:16
Оценка:
Здравствуйте, VladD2, Вы писали:

VD> У нас фронтэнд на дотнете, а бэкэнд на плюсах. Прикинь?


Это ты про KAV? Ну вот кстати там взять .NET для самого движка было бы крайне проблематично даже если бы дело шло не о "что в них вбухано море денег".

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


Сейчас очень сложно найти железо на котором нельзя хотя бы C++11 использовать. Ты даже какой-нибудь контроллер для поворотника вполне можешь на C++11 писать в наши дни, хотя чаще на C++14/17. Время когда Си был лучшим выбором для таких вещей уже прошло.
Re[3]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.02.22 02:18
Оценка:
Здравствуйте, Shtole, Вы писали:

S>P.P.S. Я вообще считаю, что хорошим сиплюсплюсником можно стать только имея опыт хотя бы по годику на шарпе/джаве (лучше шарпе), джаваскрипте и чём-нибудь функциональном. Чтобы научиться видеть, где у плюсов реально сильные стороны, а где слабые. К сожалению, большинство их — дети монокультуры, которые вокруг себя ничего не видят и, что самое печальное, видеть не хотят.


Для того что бы быть хорошим разработчиком надо в принципе знать несколько языков и парадигм. Это работает по отношению к совершенно любому языку программирования и почему тут только C++ представлен как нечто особое мне не очень понятно.
Re[4]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shtole  
Дата: 14.02.22 02:41
Оценка: +1 :)
Здравствуйте, kaa.python, Вы писали:

S>>P.P.S. Я вообще считаю, что хорошим сиплюсплюсником можно стать только имея опыт хотя бы по годику на шарпе/джаве (лучше шарпе), джаваскрипте и чём-нибудь функциональном. Чтобы научиться видеть, где у плюсов реально сильные стороны, а где слабые. К сожалению, большинство их — дети монокультуры, которые вокруг себя ничего не видят и, что самое печальное, видеть не хотят.


KP>Для того что бы быть хорошим разработчиком надо в принципе знать несколько языков и парадигм. Это работает по отношению к совершенно любому языку программирования и почему тут только C++ представлен как нечто особое мне не очень понятно.


А это уже не ко мне вопрос — почему именно у плюсовиков высокомерие наиболее удачно сочетается с узостью кругозора.

Серьёзно, вы когда-нибудь слышали, чтобы джаваскриптер говорил: «C++ — удел дрессированных мартышек!»? Вот и я не слышал. А обратное…
Do you want to develop an app?
Re[5]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.02.22 03:04
Оценка:
Здравствуйте, Shtole, Вы писали:

S>А это уже не ко мне вопрос — почему именно у плюсовиков высокомерие наиболее удачно сочетается с узостью кругозора.


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

S>Серьёзно, вы когда-нибудь слышали, чтобы джаваскриптер говорил: «C++ — удел дрессированных мартышек!»? Вот и я не слышал. А обратное…


Хм... может ли что-то осмысленное написать разработчик JS на C++? Обычно нет, в то время как обратное довольно просто. Уровень компетенций разный, отсюда и идёт отношение такое. Даже если посмотреть на современные вайтишные тренды — все, или почти все, стараются войти во фронтенд, где по сравнению с бэком и уж тем более плюсами всё относительно просто.
Re[6]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shtole  
Дата: 14.02.22 03:55
Оценка: +1
Здравствуйте, kaa.python, Вы писали:

S>>А это уже не ко мне вопрос — почему именно у плюсовиков высокомерие наиболее удачно сочетается с узостью кругозора.


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


S>>Серьёзно, вы когда-нибудь слышали, чтобы джаваскриптер говорил: «C++ — удел дрессированных мартышек!»? Вот и я не слышал. А обратное…


KP>Хм... может ли что-то осмысленное написать разработчик JS на C++? Обычно нет, в то время как обратное довольно просто. Уровень компетенций разный, отсюда и идёт отношение такое. Даже если посмотреть на современные вайтишные тренды — все, или почти все, стараются войти во фронтенд, где по сравнению с бэком и уж тем более плюсами всё относительно просто.


Дело в том, что никому не нужно, как вы это назвали, «написать что-то осмысленное» (то есть, очередной хелловорлд). Всем нужен промышленный код с best practices, который новичок, разумеется, не напишет, сколько опыта у него не будет в других областях. То есть, ситуация тут симметричная, а отношение — нет. Что мы и видим.

Но поддержать тезис «джаваскрипт для мартышек» это, конечно, смело. Это лучше, чем ходить кругами, писать про «странные утверждения» и требовать статистику. Можно сразу к сути перейти, не тратя время попусту.
Do you want to develop an app?
Re[7]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.02.22 04:08
Оценка: +1
Здравствуйте, Shtole, Вы писали:

S>Дело в том, что никому не нужно, как вы это назвали, «написать что-то осмысленное» (то есть, очередной хелловорлд). Всем нужен промышленный код с best practices, который новичок, разумеется, не напишет, сколько опыта у него не будет в других областях. То есть, ситуация тут симметричная, а отношение — нет. Что мы и видим.


Я про промышленный код и говорю. Ситуация не симметричная, т.к. домен и практики на JS на порядок проще.

S>Но поддержать тезис «джаваскрипт для мартышек» это, конечно, смело. Это лучше, чем ходить кругами, писать про «странные утверждения» и требовать статистику. Можно сразу к сути перейти, не тратя время попусту.


И в чем же он хуже чем?

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


При том что найти монокультурного разработчика на C++ — это еще поискать надо (разве что какой-то MFC-ориантированный динозавр), а вот JS мартышек пруд пруди.

И, да, я и на функциональных языках продуктовый код писал, и на JS доводилось код развивать. Единственный язык который не заходит на ура при наличии большого опыта на C++ — это Haskell.
Re[8]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shtole  
Дата: 14.02.22 04:34
Оценка: +1 :)
Здравствуйте, kaa.python, Вы писали:

S>>Дело в том, что никому не нужно, как вы это назвали, «написать что-то осмысленное» (то есть, очередной хелловорлд). Всем нужен промышленный код с best practices, который новичок, разумеется, не напишет, сколько опыта у него не будет в других областях. То есть, ситуация тут симметричная, а отношение — нет. Что мы и видим.


KP>Я про промышленный код и говорю.


Что плюсовик сядет и с ходу начнёт писать промышленный код на JS? Это просто смешно. На практике знаете, какой типичный вопрос задаёт плюсовик через несколько дней ковыряния? «Как в этом вашем дурацком жабоскрипте делается ::Sleep()?». И знаю я это потому, что имел глупость пару раз перекинуть задачи по макету (с прописанными размерами и таймингами) на вот таких вот самоуверенных людей, утверждавших, что раз уж они осилили плюсы, то с макакаскриптом как-нибудь разберутся. Я за это знание заплатил достаточно крупной суммой денежных знаков, и мне эти сказки не зайдут, извините. Учёный-верчёный уже.

KP>При том что найти монокультурного разработчика на C++ — это еще поискать надо (разве что какой-то MFC-ориантированный динозавр), а вот JS мартышек пруд пруди.


Ещё смешнее.

Как раз MFC-то это был шаг в нужную сторону, в сторону более широкого кругозора, который мало кто делал. MFC это ведь замечательная архитектура «MVC для документов» (а вы думали, это просто обёртка над WinAPI + немного базовых классов? многие так думают!), аналога которой в дотнете не было, пока MVC окончательно не переехал в веб.

Я и сегодня скажу, что эта дырка незаполненность в дотнетовской архитектуре делает дотнет не столь удачным выбором для написания офисных приложений. Нет хороших базовых рельсов — и приложения пилят кто во что горазд, например, сериализация документа бегает по контролам и качает оттуда данные. Ужос.

Впрочем, я видел в своей жизни больше десятка более-менее крупных MFC-based проектов (приложений а-ля Word/Excel) и НИ РАЗУ, ни единого гребанного разу, MFC не использовалась так, как задумывалось её архитекторами (и как она даёт максимум преимуществ). Так что, дело тут определённо не в языке.
Do you want to develop an app?
Re[9]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.02.22 05:29
Оценка:
Здравствуйте, Shtole, Вы писали:

S>Что плюсовик сядет и с ходу начнёт писать промышленный код на JS? Это просто смешно. На практике знаете, какой типичный вопрос задаёт плюсовик через несколько дней ковыряния? «Как в этом вашем дурацком жабоскрипте делается ::Sleep()?». И знаю я это потому, что имел глупость пару раз перекинуть задачи по макету (с прописанными размерами и таймингами) на вот таких вот самоуверенных людей, утверждавших, что раз уж они осилили плюсы, то с макакаскриптом как-нибудь разберутся. Я за это знание заплатил достаточно крупной суммой денежных знаков, и мне эти сказки не зайдут, извините.


Какой ужас, как сделать ::Sleep()?! По этому вопросу я могу сделать следующие выводы. 1) Эти люди не компитентны, в современном C++ за попытку затищить std::this_thread::sleep_for() в прод просят переписать код. 2) Это не кроссплатформенная C++ функция, а что-то из дебрей Windows API. Из этого следует что это не вообще не C++ разработчики, а ХЗ что такое.

S> [много про то, какой MFC шикарный...]


Дальше комментировать скучно, т.к. на C++ никто в здравом уме писать UI сейчас не будет, разве что на Qt из за отсутствия альтернатив.
Re[10]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрит
От: Философ Ад http://vk.com/id10256428
Дата: 14.02.22 06:30
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>2) Это не кроссплатформенная C++ функция, а что-то из дебрей Windows API. Из этого следует что это не вообще не C++ разработчики, а ХЗ что такое.


А в какой OS нет sleep()?
Сорри, мне почему-то кажется, что некомпетентен ты.
Всё сказанное выше — личное мнение, если не указано обратное.
Отредактировано 14.02.2022 6:47 Философ . Предыдущая версия .
Re[10]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shtole  
Дата: 14.02.22 06:32
Оценка:
Здравствуйте, kaa.python, Вы писали:

S>>Что плюсовик сядет и с ходу начнёт писать промышленный код на JS? Это просто смешно. На практике знаете, какой типичный вопрос задаёт плюсовик через несколько дней ковыряния? «Как в этом вашем дурацком жабоскрипте делается ::Sleep()?». И знаю я это потому, что имел глупость пару раз перекинуть задачи по макету (с прописанными размерами и таймингами) на вот таких вот самоуверенных людей, утверждавших, что раз уж они осилили плюсы, то с макакаскриптом как-нибудь разберутся. Я за это знание заплатил достаточно крупной суммой денежных знаков, и мне эти сказки не зайдут, извините.


KP>Какой ужас, как сделать ::Sleep()?! По этому вопросу я могу сделать следующие выводы. 1) Эти люди не компитентны, в современном C++ за попытку затищить std::this_thread::sleep_for() в прод просят переписать код. 2) Это не кроссплатформенная C++ функция, а что-то из дебрей Windows API. Из этого следует что это не вообще не C++ разработчики, а ХЗ что такое.


Сиплюсплюсники-то, оказывается, тоже по сортам делятся, однако. Пафос 80лвл.

S>> [много про то, какой MFC шикарный...]

KP>Дальше комментировать скучно, т.к. на C++ никто в здравом уме писать UI сейчас не будет, разве что на Qt из за отсутствия альтернатив.

Как стало понятно, что вы его даже не знали, так сразу поскучнели. Зато весело было кидаться какашками в MFC-динозавров, правда?
Do you want to develop an app?
Re[11]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрит
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.02.22 07:07
Оценка: :)
Здравствуйте, Философ, Вы писали:

Ф>А в какой OS нет sleep()?


В POSIX нет функции ::Sleep() в глобальном пространстве имён, есть функция ::sleep(). А вот в как раз Windows API есть ::Sleep(), но нет ::sleep().

Ф>Сорри, мне почему-то кажется, что некомпетентен ты.


Поделись что тебе ещё кажется, интересно прям
Re[11]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.02.22 07:09
Оценка: -1
Здравствуйте, Shtole, Вы писали:

S>Как стало понятно, что вы его даже не знали, так сразу поскучнели. Зато весело было кидаться какашками в MFC-динозавров, правда?


UI приложения на C++ это почти всегда скучно и нелепо
Re[12]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрит
От: Философ Ад http://vk.com/id10256428
Дата: 14.02.22 07:14
Оценка:
Здравствуйте, kaa.python, Вы писали:

Ф>>А в какой OS нет sleep()?

KP>В POSIX нет функции ::Sleep() в глобальном пространстве имён, есть функция ::sleep(). А вот в как раз Windows API есть ::Sleep(), но нет ::sleep().

Не стыдно?
Всё сказанное выше — личное мнение, если не указано обратное.
Re[12]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: Shtole  
Дата: 14.02.22 07:22
Оценка:
Здравствуйте, kaa.python, Вы писали:

S>>Как стало понятно, что вы его даже не знали, так сразу поскучнели. Зато весело было кидаться какашками в MFC-динозавров, правда?

KP>UI приложения на C++ это почти всегда скучно и нелепо

Do you want to develop an app?
Re[13]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрит
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.02.22 07:22
Оценка:
Здравствуйте, Философ, Вы писали:

Ф>Не стыдно?


А должно быть?
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: white_znake  
Дата: 14.02.22 07:34
Оценка:
Здравствуйте, Shmj, Вы писали:

S>В FAQ есть статья, которую я прочитал много лет назад и сделал выбор в пользу .Net. Все дерзко и вроде бы разумно: https://rsdn.org/forum/info/FAQ.philosophy.dotnetvscpp

S>Вроде все разумно, но дошло до того, что сфера применения .Net — это написание бэкенда с выводом на WebAPI. Ну и собственно все.
Ну так большая часть работы — это разработка вебсервисов и веб гуя. Сколько в прцентном соотношении вакансий на разработку веба и софта, работающего с железом и обработкой сигналов, 80% на 20% или 90% на 10%?
Еще .NET используется для разработки десктопа под винду.


S>А злополучный C++ живее всех живых и помирать не собирается.

Все будет нормально с C++ у него своя ниша. Единственное, что Rust грозится потестнить C++, но этот процесс будет ооочень медленным и не факт, что Rust потеснит C++.
Re[13]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 14.02.22 11:33
Оценка:
Здравствуйте, Shtole, Вы писали:

N>>И что тот же дотнет реализован на C++?

S>Мне стыдно за нас обоих, что разговор дошёл до такого.

Красивый приём, запомню. Мне не стыдно, но времени чуть жалко. Обсуждение того, что "верёвка — вервие простое, вереви́стое", возможно с теми, кто понимает, зачем такие споры нужны.
Данный тред закрываю для себя, и больше лично с вами иначе как в 200% технические споры о конкретных деталях не вступаю.
The God is real, unless declared integer.
Re[14]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите
От: Shtole  
Дата: 14.02.22 11:59
Оценка:
Здравствуйте, netch80, Вы писали:

N>>>И что тот же дотнет реализован на C++?

S>>Мне стыдно за нас обоих, что разговор дошёл до такого.

N>Красивый приём, запомню.


Какой ещё приём? То есть, мне, конечно, не жалко, запоминайте и пользуйтесь, но реально ведь это же жесть: спрашивать человека, который написал, что выбрал плюсы для одного из проектов, понимает ли он, что иногда есть необходимость использовать плюсы.
Do you want to develop an app?
Re[3]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.02.22 22:34
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Это ты про KAV?


Да.

KP>Ну вот кстати там взять .NET для самого движка было бы крайне проблематично даже если бы дело шло не о "что в них вбухано море денег".


Там проблема в дырявости дотнета с точки зрения безопасности и в легкости реверсинжерега. Но стоимость разработки на плюсах намного выше. Тут вот добавили в продукт фичу "Производительность" (по факту, набор мелких фич по очистке компьютера) так вот сервисы писала куча людей, а гуй один. Хотя кода в гуе было отношено больше.

Вот думали попробовать Раст. Но что-то он тоже выглядит как-то не очень.

KP>Сейчас очень сложно найти железо на котором нельзя хотя бы C++11 использовать. Ты даже какой-нибудь контроллер для поворотника вполне можешь на C++11 писать в наши дни, хотя чаще на C++14/17. Время когда Си был лучшим выбором для таких вещей уже прошло.


Железо такое найти элементарно. Каждый первый роутер. Вот EKA нафигачили кода на C++17 и применить его в коде прошивки роутера (под который был заказ для фирмы) не удалось. Орел из отдела мобильников (которому это дело поручили) в итоге выбрал С (без плюсов). Писали обработчики ошибок на goto и макросах.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: rosencrantz США  
Дата: 14.02.22 23:05
Оценка: 1 (1) +1
Здравствуйте, Shmj, Вы писали:

S>В FAQ есть статья, которую я прочитал много лет назад и сделал выбор в пользу .Net. Все дерзко и вроде бы разумно: https://rsdn.org/forum/info/FAQ.philosophy.dotnetvscpp


Статья вообще не про языки, а про менталитет и темперамент. "Вы хотите ковыряться в смарт поинтерах, неопределенных поведениях, CRTP, SFINAE и прочих приколах, или вы хотите чтобы сел, сделал и работает"? Не кидаю камни ни в чью сторону — бабки платят в обоих случаях, а удовлетворение все получают от разных вещей в работе.
Re[4]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 15.02.22 00:56
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Там проблема в дырявости дотнета с точки зрения безопасности и в легкости реверсинжерега. Но стоимость разработки на плюсах намного выше. Тут вот добавили в продукт фичу "Производительность" (по факту, набор мелких фич по очистке компьютера) так вот сервисы писала куча людей, а гуй один. Хотя кода в гуе было отношено больше.


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

VD>Вот думали попробовать Раст. Но что-то он тоже выглядит как-то не очень.


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

VD>Железо такое найти элементарно. Каждый первый роутер. Вот EKA нафигачили кода на C++17 и применить его в коде прошивки роутера (под который был заказ для фирмы) не удалось. Орел из отдела мобильников (которому это дело поручили) в итоге выбрал С (без плюсов). Писали обработчики ошибок на goto и макросах.


А вот это прям удивительно. Это что-то невероятно древнее или какой-то совсем экзотический процессор? Там же всегда живёт какой-нибудь Linux для которого так же всегда можно организовать кросс-компиляцию относительно свежим GCC. Может вам орлу в помощь хорошего такаого спеца по встроенным системам надо? Я вот на наших смотрю, они фактически что угодно под что угодно могут кросс-компилировать
Re[5]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: PM  
Дата: 15.02.22 07:30
Оценка: +1
Здравствуйте, kaa.python, Вы писали:

VD>>Железо такое найти элементарно. Каждый первый роутер. Вот EKA нафигачили кода на C++17 и применить его в коде прошивки роутера (под который был заказ для фирмы) не удалось. Орел из отдела мобильников (которому это дело поручили) в итоге выбрал С (без плюсов). Писали обработчики ошибок на goto и макросах.


KP>А вот это прям удивительно. Это что-то невероятно древнее или какой-то совсем экзотический процессор? Там же всегда живёт какой-нибудь Linux для которого так же всегда можно организовать кросс-компиляцию относительно свежим GCC. Может вам орлу в помощь хорошего такаого спеца по встроенным системам надо? Я вот на наших смотрю, они фактически что угодно под что угодно могут кросс-компилировать


Тоже сильно удивился, прочитав что C++ не доступен на каком-то железе. Сейчас в каждую кофеварку Линукс ставят, а ему MMU нужен. Славные времена 8051 давно закончились, сегодня хоть GCC-10 бери и концептами кросскомпилируй: https://toolchains.bootlin.com/toolchains.html
Re[6]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрите?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 15.02.22 08:07
Оценка: 5 (1)
Здравствуйте, PM, Вы писали:

PM>Тоже сильно удивился, прочитав что C++ не доступен на каком-то железе. Сейчас в каждую кофеварку Линукс ставят, а ему MMU нужен.


Linux без MMU бывает, хотя отрывать немного гиморно (и с каждой новой версией всё больше гимора).

PM> Славные времена 8051 давно закончились, сегодня хоть GCC-10 бери и концептами кросскомпилируй: https://toolchains.bootlin.com/toolchains.html


Тут да. Скорее всего привязка на уровне "на этот процессор у нас есть только очень древний компилятор и переносить на новый никто не собирается".

А исключения к вашему списку найти банально. Например, была такая Sipura, делала FXS порты и потом SIP телефоны с кнопками. Потом Cisco в лице Linksys купила их и перебрэндила изделия (SPA2000 -> PAP2 и всё такое). Так вот, в них очень долго был процессор на базе MIPS-X. Я уверен, что большинство тех, кто делал разработки на MIPS, про MIPS-X и не слышал, только про MIPS-R.
Системы команд у них разные. Публичные GCC, LLVM никогда MIPS-X не умели. Какой компилятор там использовался, я не знаю, но вряд ли он умеет что-то выше C++98 (а может вообще C++ не умеет). Ну вот и вписывайся в существующее...
The God is real, unless declared integer.
Re[12]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрит
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 15.02.22 08:24
Оценка:
Здравствуйте, kaa.python, Вы писали:

Ф>>А в какой OS нет sleep()?


KP>В POSIX нет функции ::Sleep() в глобальном пространстве имён, есть функция ::sleep(). А вот в как раз Windows API есть ::Sleep(), но нет ::sleep().


Ну мне было очевидно, что Shtole имел в виду именно идею функции остановить текущую нитку на заданное время, а не конкретную реализацию (будет это sleep, usleep, nanosleep, Sleep, std::this_thread::sleep_for — неважно). Точно так же как и у тебя идея, что эта функция безусловно вредна и использование её — очень плохой знак.

Первое уже обсудили — непонятно, что у него за ситуация и почему её надо решать так — но тут внятного ответа не добиться, будет десяток страниц философии на левые темы. Про второе вопрос более интересный. Я не вижу в sleep ничего плохого как минимум в тестах. Или вот на прошлой работе был один демон, которому это помогало не дёргаться на неэффективные ресканы — а скорость реакции в таком виде безусловно устраивала.
В общем, признаков абсолютного зла не видно.
The God is real, unless declared integer.
Re[13]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрит
От: Shtole  
Дата: 15.02.22 08:28
Оценка:
Здравствуйте, netch80, Вы писали:

N>Ну мне было очевидно, что Shtole имел в виду именно идею функции остановить текущую нитку на заданное время, а не конкретную реализацию (будет это sleep, usleep, nanosleep, Sleep, std::this_thread::sleep_for — неважно).


Именно так. Я ещё хотел уточнить, что тупо не помню, как именно мне был задан этот вопрос, а оформил функцию под винапишную на автомате, но потом решил, что если начались такие придирки, беседа давно уже съехала с конструктивной рельсы

>Первое уже обсудили — непонятно, что у него за ситуация и почему её надо решать так


Это я пропустил как-то. С тем плюсовиком, что ли, ситуация? Это вам непонятно? Ну не знал он, как на джаваскрипте программировать. Не научили бедолагу. И сам он за неделю не научился.

Что касается «не добиться», некрасиво себя ведёте. На вопросы по поводу биографии я ответил в том объёме, в котором посчитал нужным. Мог бы и этого не писать, к делу отношения не имело.
Do you want to develop an app?
Отредактировано 15.02.2022 9:22 Shtole . Предыдущая версия .
Re[13]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрит
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 15.02.22 08:40
Оценка:
Здравствуйте, netch80, Вы писали:

N>Первое уже обсудили — непонятно, что у него за ситуация и почему её надо решать так — но тут внятного ответа не добиться, будет десяток страниц философии на левые темы. Про второе вопрос более интересный. Я не вижу в sleep ничего плохого как минимум в тестах. Или вот на прошлой работе был один демон, которому это помогало не дёргаться на неэффективные ресканы — а скорость реакции в таком виде безусловно устраивала.


С тестами всё не так просто, как мне кажется. С одной стороны я согласен, иногда просто нет другой опции кроме как добавить в тест sleep, ну или нет достаточно не дорого способа это сделать. С другой стороны sleep в тестах делает их либо медленными, но стабильными, когда ты добавляешь sleep с очень большим (секунды) значением, либо быстрыми но не стабильными, когда значение в sleep разумно не велико. Тут я исхожу из предположения что тесты гоняются как часть CI и сложно предугадать что будет запущенно в параллель с тестами, и как следствие скорость выполнения теста не константная.
Re[14]: .NET vs C++ - ответ Роме 18 лет спустя - как смотрит
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 15.02.22 19:38
Оценка:
Здравствуйте, kaa.python, Вы писали:

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


Да, это постоянная проблема. В одном комплекте тестов мы делали поэтому контроль LA — если выше порога, тесты притормаживаются. И то не всегда помогало. Висел с десяток тикетов на конкретные тесты — заменить задержку времени на ожидание конкретного события.

Но чтобы стартовать чтобы хоть как-то проверяло — метод достаточно эффективный.
The God is real, unless declared integer.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.