172 похожих чатов

Мужики, у меня диллема, я понимаю, что много раз подобные

вопросы задавались, но: Раст - это язык для системного программирования, как он себя позиционирует, для того, чтобы этим заниматься - нужно знать Си в любом случае, если мне нужно знать Си - мне нужно знать cmake, если я знаю Си и cmake - мне уже проще выучить С++ поверх этого, поскольку сознание будет улавливать связь между этими мирами. С другой стороны я знаю, что Си++ полностью безопасен с Сore guidelines и статитическим анализатором от Visual Studio. В ближайшие года 3-4 clang-tidy тоже созреет и будет полностью поддерживать этот документ. То есть Си++ будет кроссплатформено полностью безопасным языком за счет статического анализатора. Но в расте все дефолты правильные. Я понимаю, что в современном мире мультитредовый код - основа и SIMD инструкции тоже. но стандартная библиотека у Си++ медленная, поэтому нужно каждый раз её переписывать под себя, поскольку она отстала от современного мира и нельзя ломать обратную совместимость. В общем, очень много тредофов, получается, что Раст никак не лучше плюсов, они примерно на одинаковом уровне. Стоит ли ради этого повышать энтропиую и подводить нашу цивилизацию к концу? Сплитинг экосистем веьсма болезненная вещь как мне кажется. Вопрос в ином, мне нужно держать всё в голове и сmake и cargo и Си и Си++ и Раст - чья голова способна к такому? Ведь если я хочу быть профессионалом - мой мозг взорвется от такой информации. Не проще ли юзать Си++ и смириться с его минусами и постепенно переходить на модули, в общем, на новые фичи языка и Сore guidelines - для безопасности и успокоиться?

5 ответов

9 просмотров

> если я знаю Си и cmake - мне уже проще выучить С++ поверх этого, поскольку сознание будет улавливать связь между этими мирами Сомнительное утверждение. > Си++ полностью безопасен с Сore guidelines и статитическим анализатором от Visual Studio Ложное утверждение. > То есть Си++ будет кроссплатформено полностью безопасным языком за счет статического анализатора Ложное утверждение. > Но в расте все дефолты правильные Сомнительное утверждение. > но стандартная библиотека у Си++ медленная Сомнительное утверждение. > Раст никак не лучше плюсов Субъективное утверждение.

Ладно, окей, давай отвечу без джеркования. C++ с любыми статическими анализаторами уже никогда не будет безопасным. В него с каждой новой редакцией добавляют UB, а не убавляют. Убрать из него UB нельзя фундаментально. C++ также гораздо сложнее, чем Rust. Бонус от знания C к изучению C++ не скомпенсирует эту разницу. Аналогично, cargo гораздо проще cmake. Держать в голове C++ и Rust одновременно на продовом уровне не надо почти никому. C маленький, держать его в голове вместе с чем угодно несложно. Проблема стандартной библиотеки C++ не в том, что она медленная, а в том, что она развивается аддитивным путём, и сейчас представляет из себя огромную помойку. Утверждения «Rust (не) лучше C++» и «C++ (не) лучше Rust» оба очевидно некорректны, потому что это субъективная характеристика.

Да, кресты лучше, не надо нам это доказывать. Нет, раст не лучше, мы не будем это доказывать. Да, кресты — это продолжение сишки, а вовсе не совершенно другой язык, настолько же далёкий от C, насколько от него далёк раст. А если серьёзно, то раст проще учить, и писать на нём проще. Но это субъективный взгляд, так что решать твою дилемму тебе придётся самому.

> Вопрос в ином, мне нужно держать всё в голове и сmake и cargo и Си и Си++ и Раст - чья голова способна к такому? cmake, cargo, и Си "держу в голове", лол, полёт нормальный, про C++ ничего сказать не могу

hirrolot
> Вопрос в ином, мне нужно держать всё в голове и ...

должно быть ты выглядишь примерно так

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта