10 лет кодить на С++ и так не стать программистом С++ в самом узком и правильном смысле этого понятия. Это правда очень сильно. Давай, удачи тебе в Rust!
В младших классах школы у нас были уроки природоведения и учительница использовала их для научпопа. Однажды она рассказала нам, что есть люди без нервов и они совсем не чувствуют боли. Нам сразу захотелось стать такими людьми, но учительница нас вразумила - люди, не чувствующие боли, долго не живут, потому что не знают, что у него рука находится в кипятке, нога неестественно вывернута и сейчас сломается, а голова давно уже отрублена. Нервная система и боль защищают человека от тупых необдуманных действий. Так вот, Плюсы - это язык без нервной системы. На Плюсах можно творить что угодно - прыгнуть в смертельный кульбит с переломом позвоночника, нарезать руку по кусочкам, засунуть голову в микроволновку, предварительно запихав кучу вилок в одно место. Плюсы об этом даже не пикнут. Плюсы - это динозавр, пожирающий свой хвост и балдеющий от этого увлекательного процесса. Раст язык нового поколения, это первый язык с нервной системой, здесь при любом опасном шевелении Раст начинает орать, что так делать низзя! И тут выходит плюсовик на сцену и заявляет, что он на Расте сможет засунуть член в мясорубку и прокрутить в фарш. И действительно, всё это эффектно исполняет на публику, обколовшись предварительно с ног до головы unsafe-блоками. Да, на Расте можно самоубиться. Но в отличии от Плюсов: 1. Ты будешь об этом знать. 2. Ты будешь целенаправленно этого хотеть.
Просто есть языки гибкие и налагающие ответственность на программиста в том аспекте, что он понимает: что делает, что хочет и как работает железка, а есть языки для птушников, где за тебя побеспокоились обо всем, но из-за этого падает производительность и гибкость языка - короче раст ваш не взлетит... Замечу, что весь эмбдед и низкий уровень - это С и С++, потому что эти языки "могут", а раст "ни туда - ни сюда в проруби")))))))))))))))))))
Я бы сказал - без знания, а лучше опыта работы с асинхронностью и многопоточностью. А тут в основном про "удобство" пакетного менеджера и прочие "плюшки".
про скорость компиляции к сожалению ты наврал, она к раста одна из самых больших в принципе. для меня одно из главных преимуществ раста - его std и его сообщество с обилием интерсесных опенсорс проектов и различных ресурсов (типа тех же книг "The book ...")
Если с какой-нибудь джавой сравнивать, то да, конечно. А если с C++ или Scala? Всё не так однозначно, правда? А если учесть, что раст метит на место плюсов, то выигрыш в скорости компиляции очевиден. Про std - согласен. Есть всё нужное и нет лишнего. Остальное можно накатить через cargo. С документацией всё неплохо, да (в том числе с буками). А вот всяких специфических библиотек мне показалось маловато.
Много лет, с большими интервалами во Времени, программирую исключительно микроконтроллёры на Ассемблере и опять же исключительно как хобби для своих нужд. Первыми были 8-ми разрядные микроконтроллеры, затем один 16-ти разрядный, но уже на демонстрационной плате. Программы писал простенькие. Очень нравится сам процесс, он просто захватыает. Сейчас однозначно решил перейти на линейку 32 битные ARM Cortex, и уже приобрёл пару отладочных плат. Очень давно хотелось перейти на новый уровень программирования и освоить язык более высокого уровня и теперь, выйдя на пенсию и обнаружив много свободного Времени понял - ПОРА!!! Вот только не знаю с чего начать. Думал о С и С++, но хочется чего-то нового, более современного. Буду очень признателен, если подскажете полный пакет софта и документации по Rust для изучения. Мне как-то сказали, что будет сложно без начального багажа например того же С++, но я думаю, что как раз должно быть легче, т.к. мозг не засорен и будет проще и эффективнее сразу изучать Rust. Спасибо.
Ну, с++ не такой уж и "несовременный", тот же андроид, все библиотеки в нём на плюсах/си, ядро на си. Игры - в основном плюсы, тот же unreal engine на нём. C++ и Си живее всех живых, он везде.
@@moya_mama ну тут снова к вопросу о поддержке старинных сорцов. Апелляция к unreal engine, не выдерживает критики, как минимум потому что, это не единственный игровой движок на планете, а использовать его стоит в контексте кровавой 3А разработки. Ну не нужен тебе в обыденной жизни такой комбайн как unreal, в противном случая, что в нем такого?
Плюсовики как раз в Раст прекрасно залетают. Там практически все те же концепции что и в плюсах что касается управления памятью, указатели и дженерики.
Именно. Говорить так может либо новичок, который хочет покататься на волне хайпа, либо человек, который детально разобрался в вопросе. Кто я -- тебе решать :)
Как вы гуглите раст? Всегда игруха попадается, если явно не прописываю ЯП. Вообще крайне не удачное название. Ещё бы counter-strike назвали или dota 2.
си назвал устаревшим мда. Без сишных программ ты даже компьютер включить не сможешь. Все основано на нем. Всему свое место. Раст, си, плюсы. У всех свои ниши.
Да, Си устарел. То, что на нём написано много продуктов - это всего лишь дело времени. Тут уже и в Linux добавили код на Расте, так ещё и coreutils переписывают. Под винду сам Microsoft официально поддерживает Rust для разработки приложений.
У карго только один минус - все эти пакеты нев***бенно весят. Мне стоило скачать три либы, как размер папки проекта возрос до двух с половиной ГБ. Ни на одном пакетном менеджере я такого ещё не видел.
Хотел зайти в раст после го, посмотрел что нет библиотек и решил повторить попытку через лет так 5-10. Синтаксис раста тоже заслуживает отдельного внимания, вырвиглаз.
И да, cmake - это не система сборки, а утилита, которая упрощает работу с системами сборки. У тебя есть один CMakeLists по которому Cmake строит файл сборки для make, ninja и т.п.
Как по мне раст никогда не станет топ 5 языков программирования. На C/С++ как бы ты не хотел написано слишком много кода чтобы просто вот так его взять и "заменить"
а что, кто-то заявлял, что собирается полностью все на раст переписать? у него точно будет своя ниша. я уже устал читать каждый день об обнаруженных дырах в безопасности в самых неожиданных утилитах. как правило все они написаны на с или на плюсах. я не говорю, что раст это панацея, но в этом плане он точно поможет улучшить ситуацию.
Если просто освоить программирование, т.е. войти в тему, бери обычный Си, книга за авторством Прата подойдет, а когда Си изучишь и попрактикуешься чуток на нем - выбирай что душе угодно и то что просят в той области куда стремишься. Для старта Си идеален - ты и железки поймешь как твой код понимают и всякие фокусы попробуешь, да и под капотом будешь понимать как всякие очереди, да связные списки работают, например....
В целом, я с вами согласен, НО пока что на Rust не все новые проекты стоит писать. Например для геймдева в Расте до сих пор недоделали движки и фреймворки, все в альфе или в бете.
Я потратил несколько месяцев на изучения Rust и понял что просто не мой язык и не хочется на нем писать. В результате для себя присмотрел Dlang и всем советую, к тому же у него ниже порог вхождения и сам язык проще в использовании (но это все вкусовщина). В Rust меня расстроило отсутствие чистых функций и то что нельзя делать перегрузку функций, а мне такого не хватает.
Dlang в своё время смотрел. Сам по себе он хорош, но у него проблемы с популярностью, а значит, и с экосистемой. Как личный проект Александреску он, может быть, и хорош, но в продакшене его использовать весьма опрометчиво. Его популярности в своё время навредило несколько вещей: дуализм phobos/tango, gc, ну и отсутствие поддержки со стороны больших компаний. Поэтому, сейчас dlang больше мёртв, чем жив. И вряд ли это изменится в сколь либо ближайшее время.
@@RussianITGuy дуализма tango/phobos уже давно нет. Для D есть только одна стандартная библиотека. GC свободно настраивается вплоть до полнейшего отключения.
Почитал инструкции по установке. Для сборки программ в Раст нужно установить среди всего прочего и Desktop Development with C++. Это как-то не вяжется с утверждениями автора видео. Лично я пока погодю. Или погожу.
Если веган 5 минут не агитировал за веганство - он сломался. Если юниксфан 5 минут не агитировал за юниксвей - он сломался. Хм, разговор про юниксвей зашёл на второй минуте, можно выдыхать.
Раст быстрее плюсов ? То есть если я решу сложить sizeof(машинное слово) машинных слов в машинное слово будет ли это быстрее чем на плюсах с фором ? Просто судя по плюсам, которые я слышу можно и на питоне писать, тоже язык огонь. Главное компилировать нормально. И вот уже даже не в 10-ки раз медленнее плюсов, а в 1.5-2.
Конечно, нет. Раст скомпилится ровно в тот же машинный код, что и плюсы. Насчёт питона -- ну да, кто ж мешает. Отличный язык. Но для критичных по скорости мест я бы рассмотрел переписывание на Раст.
Ага, С можно считать устаревшим, а юниксы - так подавно. А если честно, что заменить С нечем - низкий уровень на чём предлагаете писать? Единственная замена С - Cyclone, причём Cyclone незаслуженно обделён вниманием, т.к. в отличии от Rust ещё умеет и низкий уровень хорошо.
@You Tube Ну вы видимо не ознакомились с преимуществами Rust: RAII из коробки; ОТСУТСТВИЕ DATA RACE, SEGMENTATION FAULT И UNDEFINED BEHAVIOR; Мощнейшие подсказки компилятора; Утилита Cargo ( официальный менеджер пакетов + система сборки в одном флаконе), которая ускоряет подключение сторонних библиотек на порядки; Поддержка дженериков ( в сравнении с С); Мощные структуры в сравнении с C; Замена header файлов нормальными модулями, которые убирают многие проблемы с ними связанные И это то что я только смог вспомнить
ПРИШЛО ВРЕМЯ ОСВОБОДИТЬ ПАМЯТЬ ПАМЯТЬ САМА НЕ ОСВОБОДИТСЯ ОСВОБОДИ ЕЁ, ОСВОБОДИ ЕЁ ЕЩЕ РАЗ ЗАЧЕМ МНЕ НУЖЕН РАСТ, У МЕНЯ НЕТ ВРЕМЕНИ ЧТОБЫ ЕБАТЬСЯ С НИМ ЛУЧШЕ ЕЩЕ РАЗ ОСВОБОДИТЬ ПАМЯТЬ Я ОСВОБОЖДАЮ ПАМЯТЬ ПО 3 РАЗА В ДЕНЬ КАЖДОЕ ОСВОБОЖДЕНИЕ ЗАНИМАЕТ ДВАДЦАТЬ НАНОСЕКУНД Я ЖИВУ АКТИВНОЙ И ПОЛНОЦЕННОЙ ЖИЗНЬЮ Я УСПЕШЕН И ПОЭТОМУ ЦЕЛЫЙ ДЕНЬ ВЫДЕЛЯЮ ПАМЯТЬ А ПОСЛЕ ЭТОГО ОСВОБОЖДАЮ ЕЁ ТУПЫЕ РАСТОБЛЯДИ ОДЕРЖИМЫ ВЛАДЕНИЕМ А Я СВОБОДНЫЙ ОТ ЗАДРОТСТВА ЧЕЛОВЕК template BAR* FOO::doWork() int SUM = (N & (N % 2 ? 0 : ~0) | ( ((N & 2)»1) ^ (N & 1) ) ); ЛУЧШЕ Я ВЫДЕЛЮ ЕЩЕ РАЗ ПАМЯТЬ И ЗАБУДУ ОСВОБОДИТЬ ЕЁ, СТАБИЛЬНОСТЬ НЕ НУЖНА Я НЕ ОСВОБОЖДАЛ ПАМЯТЬ НЕДЕЛЮ ПОЙДУ ОСВОБОЖУ В C++ ВСЕ ПРОСТО И ПОНЯТНО SEGMENTATION FAULT. ЭТО ЖЕ ОЧЕВИДНО КАК ЕЕ РЕШИТЬ ПРИШЛО ВРЕМЯ ОСВОБОДИТЬ ПАМЯТЬ КОКОКОКОКОКОКО КВИКСОРТ КОНКАТЕНАЦИЯ ЗА O(1) INLINE ASSEMBLER КОКОКОКОКОКОКО
@You Tube Ну раз вы такой уникальный разработчик, который способен писать без ошибок и гонок данных, то вам, пожалуй, действительно не нужно переходить на Rust. А ваше утверждение про скорость - просто неправда. Любое сравнение посмотрите, Rust либо наравне, либо уделывает C/C++.
Короче Rust - это такая своеобразная секта. Ни один Rustоман пока не может объяснить почему Rust заменит C++ и не понятно в каком месте он может его заменить. Все, кто высказался в этом ролике не совсем понимают, что такое безопасность кода. И да ваш код на Rust не безопасен.
1) Раст доказуемо безопаснее с++, при этом без использования никаких сборщиков мусора. rustbelt/paper.pdf или на хабрике /articles/492410/ 2) Нет ни 1 причины выбирать раст по сравнению с с++, нет ни 1 причины выбирать с++ по сравнению с си, нет ни 1 причины выбирать си по сравнению с ассемблером. Наглядно продемонстрировал дегенеративность твоих рассуждений? 3) Целый поток дерьма и ни 1 нормальный аргумент не был озвучен. Вы не понимаете, что такое безопасный код, код не безопасен, но что такое безопасность я не скажу, потому что ну это же очевидно, но очевидно, что вы не правы, да-да. Ну собственно чего ожидать от облученного крестами, после них уже мозги не варят. Главное пока ответ читаешь, указатель случайно 2жды не очисти.
ну конечно, вы все такие спецы невъ3бенны3, пишете свой код без ub, ваш код это просто неприступная крепость, нет никаких способов заэксплоитить его. а раст секта, да, все верно) именно из-за того, что это секта, масоны уже приняли законы, обязывающие использовать безопасные языки в критически важном по. но ты не расстраивайся, главное не сдавайся и продолжать и дальше свою борьбу
@@luckystrike91Ну так докажи чем Раст может заменить С++? Или сам будешь заменять код микроконтроллеров написанных на Си/С++, на Раст? Если боишься утечки памяти, засунь код в try{} catch (...){}. Но вопрос, что в этом сложного? Просто Раст прогеры хотят "хвастаться" какие они полезные. Раст, это просто видоизмененный С++, где люди не смогли понять смысл try{}, и "вдохновились" в расте от unsafe и '?', когда в С++ есть тот же try с catch(). Даже библиотека std была украдена с С++, и кстати, твой компилятор Раст, как и твой язык был написан на С++.
У меня простой вопрос - нахрена придумали абсолютно не похожий на С/С++ синтаксис, когда большая часть ЯП, на которых написана и неплохо работает большая часть ПО - именно такие? Повысить "порог вхождения"? С как минимум задумывали как уход от ассемблера с его movxz, и вот опять.
@@imsomewhere1734 вот такой оператор хотят добавить или уже добавили с плюсы. это по твоему хороший синтаксис? где у раст плохой синтаксис, в каком месте?
Вряд ли. Эти языки в очень разных весовых категориях. Rust может легко и непринуждённо вытеснить Си. Возможно, C++ и Go. А вот Java и C# - нет. Под JVM и.NET уже слишком много всего написано, что просто так их не подвинуть. Java может подвинуть Kotlin, разве что.
@@RussianITGuy C не смог вытеснить даже C++ за более чем четверть века - при полной совместимости с таковым, причем куда более легкой и полной, чем в Rust.
тему не изучал, видел статью, где упоминалась тема, что под Доту-2 переделали движок, толи что-то ещё, что позволило запускать, играть с лучшей производительностью, тоесть, чистое улучшение, без новых проблем.
Привет! не знаю с чего начать, хочу научиться программированию микроконтроллеров AVR и STM можно ли этот язык взять как основополагающий? и если да, посоветуйте пожалуйста наилучший способ или литературу для изучения. я ранее не изучал никаких языкофф..
канал на ютубе narod stream, у него есть про AVR и про C. Всё же C знать - это неплохо, на RUST пока что я не видел ни одной вакансии для программирования микроконтроллеров
@@MrChelovek68чтобы создать безопасные абстракции поверх ансейф кода! прежде чем писать хрень, посмотри как в стд ансейф используется. и вообще, что значит ансейф
На ресурсе Khronos образцы кода для OpenGL/Vulkan на C/C++. На сайте Microsoft для DirectX тоже на C/C++. Странно, ведь Rust такой-растакой, лучше и быстрее😂😂😂
Язык может и лучше, другой вопрос - популярность и продвижение языка, так что дизайн языка может быть и не причем, да и С и С++ слишком огромную нишу заняли и много чего переписывать пришлось бы
умиляет, когда столько людей доказывает свой скил писать безопасное по на плюсах) на практике же мы все знаем, чем заканчивается их самолюбие! я считаю, что новые проекты нужно запретить писать на си или на плюсах, и не обращать внимание на вой сектантов, они неизлечимые
@AlastGhost проблема в UB и некорректной работой с памятью, а как следствие - огромное количество критических уязвимостей даже в самых "проверенных" библиотеках
Мне Rust понравился тем что он чёрт побери похож на python) Например: У Rust cargo , у python pip Некоторые конструкции по типу условных операторов , циклов и pattern matching ) for i in range(0, 10): print("hello world") for in in 0..10 { print!("hello world"); } А также ошибки)
Кто сказал, что для серьезных проектов обязательно ООП? По мне ООП во многом та ещё хрень, кое-что там действительно хорошо, раст как раз от ООП и берёт самое нормальное
4:08 - ДАААААА, только я бы сказал не для машин C++, а для суровых дядь создателей компиляторов, это их произведение исскуства, не более того, но НИКАК НЕ ЯЗЫК ПРОГРАММИРОВАНИЯ
Не знаю что такое Cargo, но похоже это помойка библиотек как в питоне. Каждый дурачина пытается создать свою библиотеку, которая в свою очередь использует чужие библиотеки. И конечное программирование сводится к поиску библиотек, а что они из себя представляю и сколько там багов не кто не знает.
Библиотеки в любом языке есть, использовать их или нет - выбор разработчиков конкретного проекта. Cargo лишь очень сильно облегчает работу с ними тем, кому они нужны, наряду с некоторыми другими вещами. При желании или нужде можно полноценно использовать Rust вообще не используя Cargo
fn main(){println!("Hello, world!");let numb: u8="200".parse().expect("Not a number!");let numb = numb * numb;println!("{numb}");} вуаля, выстрел в ногу на Rust. При этом на С мы, объявляя numb2, будем всегда в любом случае писать "int", обязательно указывая тип. И преобразуя из стринг в инт тоже будем указывать, какой это инт. А здесь тип определяется автоматически, в итоге всё нормально компилируется и запускается по cargo run но на выходе получаем panic. На Хабре видел статью, где автор почему-то утверждает, что это невозможно, что всё определит автоматически компилятор. На деле же все ошибки преобразования типов тут могут быть, причём неявные, и компилятор их пропустит. Всё точно так же придётся проверять ручками через юнит-тесты, как и на Си.
раст - игра, карго - корабль с лутом в расте, по другому не воспринимаю
я тоже
эта игра норм реализация, но быстро теряет смысл после нескольких десятков часов просмотра роликов на его тему, язык Rust на десятилетия.
Ну если будешь кодить на расте то в скорее тоже будешь бегать голым с камнем по улице охотясь на котов, учитывая какие там зарплаты
10 лет кодить на С++ и так не стать программистом С++ в самом узком и правильном смысле этого понятия. Это правда очень сильно. Давай, удачи тебе в Rust!
Поддерживаю.
Ленин красавчик !
10 лет на с++ и не смог научиться готовить мьютексы, это конечно сильно
Человек иногда пытался синхронизировать потоки и использовать память безопасно - но он честно признается, что не фартануло :)
Поэтому - в Rust!
что полезного я узнал из этого ролика - ни-че-го
Либо ты слушал анусом,либо уже знал это всё
@@Wellmeetagainsome причем знал скорее всего через злостный С/С++
@@imsomewhere1734 бля, жиза
Конференция РаКон-24, что вам нравится в расте? Да я тут кофе пришел попить...😂
В младших классах школы у нас были уроки природоведения и учительница использовала их для научпопа. Однажды она рассказала нам, что есть люди без нервов и они совсем не чувствуют боли. Нам сразу захотелось стать такими людьми, но учительница нас вразумила - люди, не чувствующие боли, долго не живут, потому что не знают, что у него рука находится в кипятке, нога неестественно вывернута и сейчас сломается, а голова давно уже отрублена.
Нервная система и боль защищают человека от тупых необдуманных действий.
Так вот, Плюсы - это язык без нервной системы. На Плюсах можно творить что угодно - прыгнуть в смертельный кульбит с переломом позвоночника, нарезать руку по кусочкам, засунуть голову в микроволновку, предварительно запихав кучу вилок в одно место. Плюсы об этом даже не пикнут. Плюсы - это динозавр, пожирающий свой хвост и балдеющий от этого увлекательного процесса.
Раст язык нового поколения, это первый язык с нервной системой, здесь при любом опасном шевелении Раст начинает орать, что так делать низзя!
И тут выходит плюсовик на сцену и заявляет, что он на Расте сможет засунуть член в мясорубку и прокрутить в фарш.
И действительно, всё это эффектно исполняет на публику, обколовшись предварительно с ног до головы unsafe-блоками.
Да, на Расте можно самоубиться. Но в отличии от Плюсов: 1. Ты будешь об этом знать. 2. Ты будешь целенаправленно этого хотеть.
говно этот раст. и все ойти тоже гнилое говно
Просто есть языки гибкие и налагающие ответственность на программиста в том аспекте, что он понимает: что делает, что хочет и как работает железка, а есть языки для птушников, где за тебя побеспокоились обо всем, но из-за этого падает производительность и гибкость языка - короче раст ваш не взлетит... Замечу, что весь эмбдед и низкий уровень - это С и С++, потому что эти языки "могут", а раст "ни туда - ни сюда в проруби")))))))))))))))))))
вот к слову пример жертвы изучения С++ без знания С
Я бы сказал - без знания, а лучше опыта работы с асинхронностью и многопоточностью.
А тут в основном про "удобство" пакетного менеджера и прочие "плюшки".
Зачем расту нужен FFI ? Чтобы в случае чего позвать мамочку ? Ну так мальчик же совсем уже взрослый.
Видеоигры вроде все на плюсах пишут, смогёт ли Rust заменить тут C++?
Что же интересно у тебя в голове было, когда ты созрел написать этот комент
про скорость компиляции к сожалению ты наврал, она к раста одна из самых больших в принципе. для меня одно из главных преимуществ раста - его std и его сообщество с обилием интерсесных опенсорс проектов и различных ресурсов (типа тех же книг "The book ...")
Если с какой-нибудь джавой сравнивать, то да, конечно. А если с C++ или Scala? Всё не так однозначно, правда?
А если учесть, что раст метит на место плюсов, то выигрыш в скорости компиляции очевиден. Про std - согласен. Есть всё нужное и нет лишнего. Остальное можно накатить через cargo. С документацией всё неплохо, да (в том числе с буками). А вот всяких специфических библиотек мне показалось маловато.
"про скорость компиляции к сожалению ты наврал, она к раста одна из самых больших в принципе." Это ж кем надо быть что бы так написать?)
@@spappinventor2850 что не так?
Скорее не Rust заменит С\С++, а ИИ заменит вот таких программистов. 😝😂🤣
«Rust может заменить Си во всех областях»
Ага, про эмбеддед мы похоже вообще не в курсе)
04:12 типичный программист
Много лет, с большими интервалами во Времени, программирую исключительно микроконтроллёры на Ассемблере и опять же исключительно как хобби для своих нужд.
Первыми были 8-ми разрядные микроконтроллеры, затем один 16-ти разрядный, но уже на демонстрационной плате. Программы писал простенькие. Очень нравится сам процесс, он просто захватыает.
Сейчас однозначно решил перейти на линейку 32 битные ARM Cortex, и уже приобрёл пару отладочных плат.
Очень давно хотелось перейти на новый уровень программирования и освоить язык более высокого уровня и теперь, выйдя на пенсию и обнаружив много свободного Времени понял - ПОРА!!!
Вот только не знаю с чего начать.
Думал о С и С++, но хочется чего-то нового, более современного.
Буду очень признателен, если подскажете полный пакет софта и документации по Rust для изучения.
Мне как-то сказали, что будет сложно без начального багажа например того же С++, но я думаю, что как раз должно быть легче, т.к. мозг не засорен и будет проще и эффективнее сразу изучать Rust.
Спасибо.
Ну, с++ не такой уж и "несовременный", тот же андроид, все библиотеки в нём на плюсах/си, ядро на си. Игры - в основном плюсы, тот же unreal engine на нём. C++ и Си живее всех живых, он везде.
Если за 4 месяца все ещё не нашел ответа - "окей Гугл Раст официальная документация". В нем лучшая документация которую когда-либо видели человечество
@@moya_mama ну тут снова к вопросу о поддержке старинных сорцов. Апелляция к unreal engine, не выдерживает критики, как минимум потому что, это не единственный игровой движок на планете, а использовать его стоит в контексте кровавой 3А разработки. Ну не нужен тебе в обыденной жизни такой комбайн как unreal, в противном случая, что в нем такого?
Плюсовики как раз в Раст прекрасно залетают. Там практически все те же концепции что и в плюсах что касается управления памятью, указатели и дженерики.
@@sfera888 Спасибо.
Когда говорят, что С не актуальный язык - это многое говорит о компетентности оратора.
Именно. Говорить так может либо новичок, который хочет покататься на волне хайпа, либо человек, который детально разобрался в вопросе. Кто я -- тебе решать :)
@@RussianITGuy Люди, разобравшиеся в вопросе явно не будут говорить, что си это не актуальный ЯП.
@@RussianITGuy Человек, который разбирается, никогда не скажет, что сишка - неактуальна.
@@RussianITGuy Ну судя по утверждениям, что я тут прочитал, типа "Раст скомпилится ровно в тот же машинный код, что и плюсы." - точно не последнее.
@@RussianITGuy новичек на хайпе, кто ж еще-то)))))
c++ будет вечным)
Как вы гуглите раст? Всегда игруха попадается, если явно не прописываю ЯП. Вообще крайне не удачное название. Ещё бы counter-strike назвали или dota 2.
Rust lang
А зачем гуглить когда есть афигенная оф дока :)
Так, язык Rust начал создаваться в 2006, тогда игры rust и вовсе не было, кто ж мог подумать то что найдется гений который назовет игру Rust ;D
@@evquuначал это другое rust 1 вышел в 2015
не знаю, как вы гуглите, но у меня проблем вообще никаких не возникает, всегда по первым 3 ссылкам нахожу что искал
4:19 Короче сразу итог всего видео
си назвал устаревшим мда. Без сишных программ ты даже компьютер включить не сможешь. Все основано на нем. Всему свое место. Раст, си, плюсы. У всех свои ниши.
Да, Си устарел. То, что на нём написано много продуктов - это всего лишь дело времени. Тут уже и в Linux добавили код на Расте, так ещё и coreutils переписывают. Под винду сам Microsoft официально поддерживает Rust для разработки приложений.
@@RussianITGuy Балабольство какое то.
У карго только один минус - все эти пакеты нев***бенно весят. Мне стоило скачать три либы, как размер папки проекта возрос до двух с половиной ГБ. Ни на одном пакетном менеджере я такого ещё не видел.
Ну а что ты хотел, в проекте С++ тоже подобное есть, ты же весь проект с любой в любом случае кидаешь в папку с твоим проектом
всеравно непонятно, что можно написать на расте кроме мелких поделок, с которыми и любой другой язык справится
Хотел зайти в раст после го, посмотрел что нет библиотек и решил повторить попытку через лет так 5-10. Синтаксис раста тоже заслуживает отдельного внимания, вырвиглаз.
И да, cmake - это не система сборки, а утилита, которая упрощает работу с системами сборки. У тебя есть один CMakeLists по которому Cmake строит файл сборки для make, ninja и т.п.
CMake - это что-то типо интерфейса для билд систем
c/c++,c# их не заменить, они были и будут.
c#?
Как по мне раст никогда не станет топ 5 языков программирования. На C/С++ как бы ты не хотел написано слишком много кода чтобы просто вот так его взять и "заменить"
а что, кто-то заявлял, что собирается полностью все на раст переписать? у него точно будет своя ниша. я уже устал читать каждый день об обнаруженных дырах в безопасности в самых неожиданных утилитах. как правило все они написаны на с или на плюсах. я не говорю, что раст это панацея, но в этом плане он точно поможет улучшить ситуацию.
Только вот у раста нестабильный ABI. Так что C++ он не заменит, у них своя задача
Блин чувак, с первых минут уже по твоей футболке становится ясно что ты будешь топить за Rust.
Правильно мне бабушка говорила что от этих ваших компутктеров один вред, радиация и излучения,
4:08 вон у парня уши выросли.
Врываюсь в программирование с двух костылей-> подскажите, c rust можно начинать? Или сложно будет?
Смотря в какой области ты будешь работать
Если просто освоить программирование, т.е. войти в тему, бери обычный Си, книга за авторством Прата подойдет, а когда Си изучишь и попрактикуешься чуток на нем - выбирай что душе угодно и то что просят в той области куда стремишься. Для старта Си идеален - ты и железки поймешь как твой код понимают и всякие фокусы попробуешь, да и под капотом будешь понимать как всякие очереди, да связные списки работают, например....
В целом, я с вами согласен, НО пока что на Rust не все новые проекты стоит писать.
Например для геймдева в Расте до сих пор недоделали движки и фреймворки, все в альфе или в бете.
в коммах -порванные джеппы СИшников?😂
Я потратил несколько месяцев на изучения Rust и понял что просто не мой язык и не хочется на нем писать. В результате для себя присмотрел Dlang и всем советую, к тому же у него ниже порог вхождения и сам язык проще в использовании (но это все вкусовщина). В Rust меня расстроило отсутствие чистых функций и то что нельзя делать перегрузку функций, а мне такого не хватает.
Dlang в своё время смотрел. Сам по себе он хорош, но у него проблемы с популярностью, а значит, и с экосистемой. Как личный проект Александреску он, может быть, и хорош, но в продакшене его использовать весьма опрометчиво.
Его популярности в своё время навредило несколько вещей: дуализм phobos/tango, gc, ну и отсутствие поддержки со стороны больших компаний. Поэтому, сейчас dlang больше мёртв, чем жив. И вряд ли это изменится в сколь либо ближайшее время.
@@RussianITGuy дуализма tango/phobos уже давно нет. Для D есть только одна стандартная библиотека. GC свободно настраивается вплоть до полнейшего отключения.
что только люди не придумают чтобы не изучать C и C++ xD.
@@MariaEsenina java, а всё остальное это питон и попытки скинуть java, c/c++
Я тут пишу на гоу...
Поржал )
Почитал инструкции по установке. Для сборки программ в Раст нужно установить среди всего прочего и Desktop Development with C++. Это как-то не вяжется с утверждениями автора видео. Лично я пока погодю. Или погожу.
куда пропал, здраствуйте?
Брат когда новые видосы, ждемс)
плюсы определены впереди раста, раст не взлетел
Если веган 5 минут не агитировал за веганство - он сломался.
Если юниксфан 5 минут не агитировал за юниксвей - он сломался.
Хм, разговор про юниксвей зашёл на второй минуте, можно выдыхать.
Раст быстрее плюсов ?
То есть если я решу сложить sizeof(машинное слово) машинных слов в машинное слово будет ли это быстрее чем на плюсах с фором ?
Просто судя по плюсам, которые я слышу можно и на питоне писать, тоже язык огонь. Главное компилировать нормально. И вот уже даже не в 10-ки раз медленнее плюсов, а в 1.5-2.
Конечно, нет. Раст скомпилится ровно в тот же машинный код, что и плюсы. Насчёт питона -- ну да, кто ж мешает. Отличный язык. Но для критичных по скорости мест я бы рассмотрел переписывание на Раст.
Спасибо, очень интересно рассказываете
Ага, С можно считать устаревшим, а юниксы - так подавно. А если честно, что заменить С нечем - низкий уровень на чём предлагаете писать? Единственная замена С - Cyclone, причём Cyclone незаслуженно обделён вниманием, т.к. в отличии от Rust ещё умеет и низкий уровень хорошо.
В чем проблема писать "низкий уровень" на Rust? Ржавчина отлично применима в Embedded разработке
@You Tube Так раст создан для написания безопасного низкого уровня. В чем извращение?
@You Tube Ну вы видимо не ознакомились с преимуществами Rust:
RAII из коробки;
ОТСУТСТВИЕ DATA RACE, SEGMENTATION FAULT И UNDEFINED BEHAVIOR;
Мощнейшие подсказки компилятора;
Утилита Cargo ( официальный менеджер пакетов + система сборки в одном флаконе), которая ускоряет подключение сторонних библиотек на порядки;
Поддержка дженериков ( в сравнении с С);
Мощные структуры в сравнении с C;
Замена header файлов нормальными модулями, которые убирают многие проблемы с ними связанные
И это то что я только смог вспомнить
ПРИШЛО ВРЕМЯ ОСВОБОДИТЬ ПАМЯТЬ
ПАМЯТЬ САМА НЕ ОСВОБОДИТСЯ
ОСВОБОДИ ЕЁ, ОСВОБОДИ ЕЁ ЕЩЕ РАЗ
ЗАЧЕМ МНЕ НУЖЕН РАСТ, У МЕНЯ НЕТ ВРЕМЕНИ ЧТОБЫ ЕБАТЬСЯ С НИМ
ЛУЧШЕ ЕЩЕ РАЗ ОСВОБОДИТЬ ПАМЯТЬ
Я ОСВОБОЖДАЮ ПАМЯТЬ ПО 3 РАЗА В ДЕНЬ
КАЖДОЕ ОСВОБОЖДЕНИЕ ЗАНИМАЕТ ДВАДЦАТЬ НАНОСЕКУНД
Я ЖИВУ АКТИВНОЙ И ПОЛНОЦЕННОЙ ЖИЗНЬЮ
Я УСПЕШЕН И ПОЭТОМУ ЦЕЛЫЙ ДЕНЬ ВЫДЕЛЯЮ ПАМЯТЬ
А ПОСЛЕ ЭТОГО ОСВОБОЖДАЮ ЕЁ
ТУПЫЕ РАСТОБЛЯДИ ОДЕРЖИМЫ ВЛАДЕНИЕМ
А Я СВОБОДНЫЙ ОТ ЗАДРОТСТВА ЧЕЛОВЕК
template BAR* FOO::doWork()
int SUM = (N & (N % 2 ? 0 : ~0) | ( ((N & 2)»1) ^ (N & 1) ) );
ЛУЧШЕ Я ВЫДЕЛЮ ЕЩЕ РАЗ ПАМЯТЬ
И ЗАБУДУ ОСВОБОДИТЬ ЕЁ, СТАБИЛЬНОСТЬ НЕ НУЖНА
Я НЕ ОСВОБОЖДАЛ ПАМЯТЬ НЕДЕЛЮ
ПОЙДУ ОСВОБОЖУ
В C++ ВСЕ ПРОСТО И ПОНЯТНО
SEGMENTATION FAULT. ЭТО ЖЕ ОЧЕВИДНО КАК ЕЕ РЕШИТЬ
ПРИШЛО ВРЕМЯ ОСВОБОДИТЬ ПАМЯТЬ
КОКОКОКОКОКОКО
КВИКСОРТ КОНКАТЕНАЦИЯ ЗА O(1) INLINE ASSEMBLER
КОКОКОКОКОКОКО
@You Tube Ну раз вы такой уникальный разработчик, который способен писать без ошибок и гонок данных, то вам, пожалуй, действительно не нужно переходить на Rust. А ваше утверждение про скорость - просто неправда. Любое сравнение посмотрите, Rust либо наравне, либо уделывает C/C++.
Короче Rust - это такая своеобразная секта. Ни один Rustоман пока не может объяснить почему Rust заменит C++ и не понятно в каком месте он может его заменить. Все, кто высказался в этом ролике не совсем понимают, что такое безопасность кода. И да ваш код на Rust не безопасен.
1) Раст доказуемо безопаснее с++, при этом без использования никаких сборщиков мусора.
rustbelt/paper.pdf
или на хабрике /articles/492410/
2) Нет ни 1 причины выбирать раст по сравнению с с++, нет ни 1 причины выбирать с++ по сравнению с си, нет ни 1 причины выбирать си по сравнению с ассемблером. Наглядно продемонстрировал дегенеративность твоих рассуждений?
3) Целый поток дерьма и ни 1 нормальный аргумент не был озвучен. Вы не понимаете, что такое безопасный код, код не безопасен, но что такое безопасность я не скажу, потому что ну это же очевидно, но очевидно, что вы не правы, да-да. Ну собственно чего ожидать от облученного крестами, после них уже мозги не варят. Главное пока ответ читаешь, указатель случайно 2жды не очисти.
ну конечно, вы все такие спецы невъ3бенны3, пишете свой код без ub, ваш код это просто неприступная крепость, нет никаких способов заэксплоитить его. а раст секта, да, все верно) именно из-за того, что это секта, масоны уже приняли законы, обязывающие использовать безопасные языки в критически важном по. но ты не расстраивайся, главное не сдавайся и продолжать и дальше свою борьбу
@@luckystrike91 а ты на расте пишешь свой код без уб?
@@luckystrike91Ну так докажи чем Раст может заменить С++? Или сам будешь заменять код микроконтроллеров написанных на Си/С++, на Раст? Если боишься утечки памяти, засунь код в try{} catch (...){}. Но вопрос, что в этом сложного? Просто Раст прогеры хотят "хвастаться" какие они полезные. Раст, это просто видоизмененный С++, где люди не смогли понять смысл try{}, и "вдохновились" в расте от unsafe и '?', когда в С++ есть тот же try с catch(). Даже библиотека std была украдена с С++, и кстати, твой компилятор Раст, как и твой язык был написан на С++.
Rust может заменить С++ но не сам С.
Микроконтроллеры которые программируются на Си, так и представляю как их Rust заменит. Какие узкие люди.
У меня простой вопрос - нахрена придумали абсолютно не похожий на С/С++ синтаксис, когда большая часть ЯП, на которых написана и неплохо работает большая часть ПО - именно такие?
Повысить "порог вхождения"?
С как минимум задумывали как уход от ассемблера с его movxz, и вот опять.
ну да, особенно оператор космическое кораблекрушение доставляет в с++, отменный синтаксис😂
@@luckystrike91 это какой?
Хотя твой вопрос непонятно как относится к моему посту.
@@imsomewhere1734 вот такой оператор хотят добавить или уже добавили с плюсы. это по твоему хороший синтаксис? где у раст плохой синтаксис, в каком месте?
Синтаксис связан с концепциями языка. И при чем тут вообще синтаксис ? И что с ним вообще не так ? Эти мамкины хеллоувордлщики...
Как думаешь, а может ли Rust подвинуть Java и C#?
Вряд ли. Эти языки в очень разных весовых категориях. Rust может легко и непринуждённо вытеснить Си. Возможно, C++ и Go. А вот Java и C# - нет. Под JVM и.NET уже слишком много всего написано, что просто так их не подвинуть. Java может подвинуть Kotlin, разве что.
Раст для С++ то с трудом продвигают.
@@RussianITGuy да врятли раст вытеснит си, слишком страшный синтаксис у него.
@@RussianITGuy C не смог вытеснить даже C++ за более чем четверть века - при полной совместимости с таковым, причем куда более легкой и полной, чем в Rust.
@@OlegLecinskyи похер что С++ является продолжением С ….. 🤡
Как Rust себя чувствует в геймдеве?
тему не изучал, видел статью, где упоминалась тема, что под Доту-2 переделали движок, толи что-то ещё, что позволило запускать, играть с лучшей производительностью, тоесть, чистое улучшение, без новых проблем.
см. Veloren
Привет! не знаю с чего начать, хочу научиться программированию микроконтроллеров AVR и STM можно ли этот язык взять как основополагающий? и если да, посоветуйте пожалуйста наилучший способ или литературу для изучения. я ранее не изучал никаких языкофф..
канал на ютубе narod stream, у него есть про AVR и про C. Всё же C знать - это неплохо, на RUST пока что я не видел ни одной вакансии для программирования микроконтроллеров
@@allex_lyric потому что в принципе компилятор на расте куда сложнее сделать, чем компилятор на си
изучай язык си
Что то на страшном, воспринимаю только 3 разновидности букв "у" "х" "й"
Бери голый Си, книжка за авторством Прата, например...
Будет ли урок типа "Раст за час"?
в расте лучше официальной доки ничего не придумали еще, по нему курсы особо не нужны
не .. в жопу "раст за час".. ДАЁШЬ РАСТ за 30 секунд!!!!
@@ovechkindevесть на ютубе прекрасный курс, дополняющий доку. но в целом, если есть опыт с плюсами и т.д. то доки будет достаточно
Привет Придлогаю стать програмистом нашей команды по созданию игр. Для это го нужно будет знать язык c#
Микроконтроллеры тоже на расте планируете писать?
Да, почему бы и нет. Завернуть в unsafe все критичные части и готово. Для тех же ESP32 и STM32 можно собирать код на Расте.
@@RussianITGuy и нафиг тогда раст?
@@RussianITGuy а зачем в unsafe заворачивать, HAL разве не разруливает эту часть (в большинстве своем)?
@@MrChelovek68чтобы создать безопасные абстракции поверх ансейф кода! прежде чем писать хрень, посмотри как в стд ансейф используется. и вообще, что значит ансейф
Лучше golang изучать
На ресурсе Khronos образцы кода для OpenGL/Vulkan на C/C++. На сайте Microsoft для DirectX тоже на C/C++. Странно, ведь Rust такой-растакой, лучше и быстрее😂😂😂
Язык может и лучше, другой вопрос - популярность и продвижение языка, так что дизайн языка может быть и не причем, да и С и С++ слишком огромную нишу заняли и много чего переписывать пришлось бы
OpenGL 4.0 появился 11 марта 2010 года. Rust 1.0 появился 15 мая 2015 года. Дааа в самом деле не понятно почему OpenGL написан не на Rust
умиляет, когда столько людей доказывает свой скил писать безопасное по на плюсах) на практике же мы все знаем, чем заканчивается их самолюбие! я считаю, что новые проекты нужно запретить писать на си или на плюсах, и не обращать внимание на вой сектантов, они неизлечимые
@AlastGhost проблема в UB и некорректной работой с памятью, а как следствие - огромное количество критических уязвимостей даже в самых "проверенных" библиотеках
Мне Rust понравился тем что он чёрт побери похож на python)
Например:
У Rust cargo , у python pip
Некоторые конструкции по типу условных операторов , циклов и pattern matching )
for i in range(0, 10):
print("hello world")
for in in 0..10 {
print!("hello world");
}
А также ошибки)
+++
Побольше бы синтаксического сахара был бы вообще огонь
@@luden6794 Был бы второй carbon тогда :) Разве нет?
Если нравится cargo у Rust, то для Python есть хорошая штука - poetry
В питоне print выводит текст который ты написал и знак след строки. Так что в коде на расте нужно исправить print! на println!
Зачем такие стрëмные коды? Вместо "range(0, 10)" можно же использовать просто "range(9)".
Как же писать серьёзные проекты на расте, если в нём нет ООП?)))
Там есть типажи со структурами, которые вполне можно использовать так же, как ООП :) Хотя, это не совсем то же самое
Кто сказал, что для серьезных проектов обязательно ООП? По мне ООП во многом та ещё хрень, кое-что там действительно хорошо, раст как раз от ООП и берёт самое нормальное
@@joly3122 > Кто сказал, что для серьезных проектов обязательно ООП?
Ну, чуть менее чем все
@@nanoqsh Почему тогда на расте удается писать большие проекты, например, Firefox ? Может это вам напрасно втюхали ваше богоподобное ООП?
@@joly3122 ну Firefox не целиком написана на расте. В первую очередь на Си и Плюсах
звук дерьмо брат
Сбрей бородку
Всему своё время :)
4:08 - ДАААААА, только я бы сказал не для машин C++, а для суровых дядь создателей компиляторов, это их произведение исскуства, не более того, но НИКАК НЕ ЯЗЫК ПРОГРАММИРОВАНИЯ
Си удобнее и гибче, я никогда не вернусь этому кансерному и неприятному языку.
Можно примеров где С "удобнее и гибче"?
@@watchman3676 везде. ты пишешьь с удобного и гибкого си,через инфраструктуру на си. ах да, и видишь все через си) опенджиэль ф помосчь
Rust - это язык компании зла Mozilla
Я не доверяю расту
@AlastGhost вообще-то это игра такая, не путай!
Rust безусловно лучше C++ ,но C врядли
С++ лучшее
Не знаю что такое Cargo, но похоже это помойка библиотек как в питоне. Каждый дурачина пытается создать свою библиотеку, которая в свою очередь использует чужие библиотеки.
И конечное программирование сводится к поиску библиотек, а что они из себя представляю и сколько там багов не кто не знает.
Библиотеки в любом языке есть, использовать их или нет - выбор разработчиков конкретного проекта. Cargo лишь очень сильно облегчает работу с ними тем, кому они нужны, наряду с некоторыми другими вещами. При желании или нужде можно полноценно использовать Rust вообще не используя Cargo
Rust это не для людей, как вообще язык с точкой с запятой в конце каждой строки может считаться лучше c++ где она тоже есть
пшик
fn main(){println!("Hello, world!");let numb: u8="200".parse().expect("Not a number!");let numb = numb * numb;println!("{numb}");}
вуаля, выстрел в ногу на Rust. При этом на С мы, объявляя numb2, будем всегда в любом случае писать "int", обязательно указывая тип. И преобразуя из стринг в инт тоже будем указывать, какой это инт. А здесь тип определяется автоматически, в итоге всё нормально компилируется и запускается по cargo run но на выходе получаем panic. На Хабре видел статью, где автор почему-то утверждает, что это невозможно, что всё определит автоматически компилятор. На деле же все ошибки преобразования типов тут могут быть, причём неявные, и компилятор их пропустит. Всё точно так же придётся проверять ручками через юнит-тесты, как и на Си.
Не понял в чем проблема. Падает из-за переполнения. По-моему все ОК
Тип определился автоматически только для numb2, для numb тип указал ты
fn main(){
println!("Hello, world!");
let numb: u8 ="200".parse().expect("Not a number!");
let numb = numb.checked_mul(numb);
println!("{numb:?}");
}
ну конечно, паника куда хуже чем уб при переполнениях в с)) такие вы лалки
ммм, спасибо за всратый звук) громче делай