Rust: зачем выбирать этот язык в 2025 году? | Дмитрий Коваленко | #29

  Рет қаралды 17,153

Организованное программирование | Кирилл Мокевнин

Организованное программирование | Кирилл Мокевнин

Күн бұрын

Пікірлер: 282
@mokevnin
@mokevnin 16 күн бұрын
Вы бы выбрали Rust для своих проектов?
@bondiano
@bondiano 16 күн бұрын
Пишу на Расте последний год прод и кайфую :D
@Morhunov
@Morhunov 16 күн бұрын
Спасибо за гостя.
@BashkaMen
@BashkaMen 16 күн бұрын
Нет
@AndersonSilva-dg4mg
@AndersonSilva-dg4mg 16 күн бұрын
Нет, по многим причинам: 1. сложная система типов 2. долгое время компиляции 3. синтаксис макросов - это кринж 4. Rust не имеет хорошо развитых библиотек для создания GUI 5. Rust не поддерживает рефлексию 6. для машинного обучения вообще не варик ...
@BashkaMen
@BashkaMen 16 күн бұрын
@ та в целом синтаксис говна
@ეროვნებითქართველი
@ეროვნებითქართველი 15 күн бұрын
I'm subscribing to learn Russian here
@mikhailgorshenin9076
@mikhailgorshenin9076 Күн бұрын
Best of luck in your learning journey! Where are you originally from? Georgia?
@panteofs
@panteofs 15 күн бұрын
Классный выпуск! А можно продолжения и раскрыть тему сравнения С++ и Rust? Что выбрать?
@Elx1989
@Elx1989 15 күн бұрын
Рад буду посмотреть третью серию!
@sighupcmd
@sighupcmd 15 күн бұрын
Тут многие ноют по поводу скорости компиляции (видимо, относительно го), я удивлен, мне абсолютно наплевать на нее, если за меня максимально все прочекает компилятор чтоб я смог спать спокойно. Понятно, что облажаться можно даже в расте при желании, но это надо сильно захотеть, либо чего-то не знать. Я не жалею что вкатился, хоть это было и не просто. Тулинг - бомба, ресурсы все твои, выразительность близка к руби (где она лучшая на свете).
@FenexUFO
@FenexUFO 14 күн бұрын
Один раз скомпилировать проект с нуля - вообще пофиг на время компиляции. Если претензии в том, что долгая инкрементальная сборка - ну так надо поменять линкер на многопоточный (например, mold). У меня инкрементальная сборка больших проектов за секунды 3 билдится, не вижу здесь никакой проблемы. Всё равно при разработке чаще вызывается `cargo check`, который отрабатывает моментально.
@atmorozhenka
@atmorozhenka 13 күн бұрын
Сборка идёт, зарплата капает... Чего тут ныть, нужно наслаждаться)
@SeregaZinin
@SeregaZinin 12 күн бұрын
ну если ты не пишешешь ничего сложнее хеллоу ворлд и "работаешь" сам на себя, то да - тебе пофиг.
@АлексейВергей
@АлексейВергей 15 күн бұрын
Благодарю за выпуск и Ваш труд !) Подумайте над тем чтобы показывать кусочки кода в процессе диалога, думаю это гораздо лучше раскроет суть диалога для тех кто не знаком с языком о котором выпуск, в некоторых местах это займет меньше минуты, зато сильно расширит понимание в моменте. Казалось что Дмитрию хотелось в некоторых местах открыть редактор и быстренько пояснить что и как :)
@xshady2967
@xshady2967 14 күн бұрын
правда вот только это не будет работать для аудио формата
@ДокТорасенко
@ДокТорасенко 11 күн бұрын
это же трудиться надо
@Pompiduskus
@Pompiduskus 15 күн бұрын
Дмитрий Коваленко. Огромное тебе спасибо! Твоя объективность стоит отдельного поклона!
@hurricane-rus
@hurricane-rus 15 күн бұрын
Спасибо! Ждем вторую часть про Rust )
@dorozhkoanton
@dorozhkoanton 15 күн бұрын
Давайте вторую часть!
@safort7806
@safort7806 15 күн бұрын
Хороший выпуск, заряженный) Несколько уточнений: 1. Не согласен с тем, что в расте не заморачиваются по размеру бинарей. Как минимум, такие базовые вещи как возможность отрубить std. 2. Не помню, писал это или нет, но на канале "Организованное программирование" нет программирования. Кирилл, сделайте с гостями мини лайвкодинг по каким-то конкретным вещам, иначе сложно понять о чём вы, вы даже сами иногда друг друга не понимаете.
@wsxpocxeafx
@wsxpocxeafx 15 күн бұрын
В Cargo.toml можно настроить так, что размер будет сильно усекаться даже без отрубания std. Секция [profile.release]
@kapustinalexander848
@kapustinalexander848 6 күн бұрын
Спасибо за выпуск! Жду выпуск про lisp-ы 😀
@alexkazimir3835
@alexkazimir3835 3 күн бұрын
Clojure
@murzilkasochi
@murzilkasochi Күн бұрын
Спасибо за видео. Немного знаком с Растом, слушать было интересно. Любопытно, как было с пониманием тех, кто ещё не вкатился?)
@luckystrike91
@luckystrike91 15 күн бұрын
1:11:05 решено через толстые указатели (1 указатель на vtable, 2ой на данные). виртуальные таблицы создаются только тогда, когда это требуется, когда ты это попросишь через dyn keyword! по умолчанию работает статическая диспетчеризация! если ф-ция принимает &SomeTrait, то можно передать как ссылку на SomeTrait, так и &dyn SomeTrait, тогда будет использован динамический вызов
@alexkazimir3835
@alexkazimir3835 3 күн бұрын
Ещё очень большой плюс rust это экосистема вокруг cargo. Писал простой проект под микроконтроллер и всё через cargo подключается, собирается, заливается. Чем-то похоже на clojure, где тоже классная экосистема для разработчика
@phnxbr
@phnxbr 11 күн бұрын
Для всех личных проектов выбирал Rust в последние 2 года
@Вера-л7б9ю
@Вера-л7б9ю 10 күн бұрын
Продолжай держать нас в курсе...
@snatvb
@snatvb 13 күн бұрын
было прикольно, спасибо :)
@igors634
@igors634 10 күн бұрын
Чтобы вызвать нужную функцию полиморфного типа динамически, обычно вместе с данными хранится указатель на класс/прототип с нужной имплементацией.
@dgavrikov84
@dgavrikov84 12 күн бұрын
Не убегайте от Дмитрия - даешь ещё одну встречу.
@ВячеславЯкубчик
@ВячеславЯкубчик 10 күн бұрын
Было бы очень интересно послушать о Node js на хайлоаде, с Мелиховым хорошо вышло, но возможно стоит пообщаться с кем-то ещё
@oleksii766
@oleksii766 15 күн бұрын
Borrow checker нет смысла объяснять без упоминания модели Ownership. Он всего ли проверяет, что "заемщик" данных не может пережить их "владельца". Ну и RefCell не исключает borrow checker - он просто переносит все его проверки на этап runtime.
@alexkazimir3835
@alexkazimir3835 3 күн бұрын
Уважение за упоминание clojure. Тоже один из языков, которые ставят голову на правильное место. Rust молодец. Тоже не соглашусь, что сложно погрузиться. Если на ts писал, то остаётся только разобраться с ссылками и понять одну простую вещь. Один мутирует или много читают (в базовом варианте). Это и из других концепции вполне логично в голову ложится
@systemacennostey
@systemacennostey 13 күн бұрын
Очень классный гость, приятно слушать вдохновленных людей
@qandak
@qandak 15 күн бұрын
6:05 Чувак, формат векторных шрифтов (тот же ttf или otf) - это и есть "svg-шачка", harfbuzz, который используется почти во всех известных приложениях перед рендерингом текста (растеризацией) написан на плюсах. Текст лейаутинг - выбор соответствующих глифов по таблице юникода и их динамическая композиция по разным правилам языка и шрифта (керниниг, лигатура, диакритика, и тд.).
@andim2772
@andim2772 15 күн бұрын
Отличный разговор получился!Спасибо!Теперь логичное продолжение в следующем выпуске обсудить Zig
@sergeykryuchkov8131
@sergeykryuchkov8131 15 күн бұрын
Гость, бомба, смотрел оба выпуска с ним.
@ProGamerru
@ProGamerru 15 күн бұрын
Ура! Rust в массы!
@Mytest437
@Mytest437 15 күн бұрын
Ждем еще выпусков с Дмитрием
@handlewithoutsuitcase
@handlewithoutsuitcase 15 күн бұрын
Я вот из эмбед и как раз на между'Rust'ье нахожусь! Спасибо за этот выпуск, ждем сиквел!
@a1ltair
@a1ltair 15 күн бұрын
Отличный пример с токенайзером, я пишу свой и устал драться с чекером, так что пока у меня все токены хранят String, а не &str. Но все свербит вернуться на ссылки, надо просто решить проблему жизненных циклов
@nicamelschannel227
@nicamelschannel227 15 күн бұрын
Уже 10 лет это слышу
@Александр-ф9в4ю
@Александр-ф9в4ю 15 күн бұрын
Подгорает? Ржавый в последние годы много где стал юзаться...
@nicamelschannel227
@nicamelschannel227 15 күн бұрын
@Александр-ф9в4ю где это много? На хх три вакансии и то одна крипта
@Александр-ф9в4ю
@Александр-ф9в4ю 15 күн бұрын
@@nicamelschannel227 понял, ну если на ХХ вакансий нет - значит нигде не юзается это да. Правда есть проблема - точно за прошлый год вакансии на ХХ были в Тинькофф, Сбер, МТС и ВК и их можно найти, они в архиве висят. Попробуйте - это не сложно и не страшно 😊. Устроится по ним вам конечно будет сложно (если вообще возможно), но думаю найти вы их сможете.
@Pompiduskus
@Pompiduskus 15 күн бұрын
вы забыли сказать что именно, так как "контекстное окно" видео, просто огромное ))
@slashfast
@slashfast 15 күн бұрын
​@@nicamelschannel227многие компании переписывают критические части кода на rust, в их числе Cloudflare и Discord. Не на плюсы :)
@alekseylebedev6278
@alekseylebedev6278 14 күн бұрын
Давайте еще по скале подкаст, будет интересно ❤
@safort7806
@safort7806 15 күн бұрын
Так, лайк авансом. Такое мы смотрим!
@frolissimo
@frolissimo 15 күн бұрын
а я-то думал лет 8 назад как уже началась..
@IshuckShow
@IshuckShow 8 күн бұрын
Мне кажется, что концепция разных языков себя уже изжила
@daniilivanik5021
@daniilivanik5021 15 күн бұрын
Про динамическую диспетчиризацию ничего не понял. Ассемблируйте плюсовый код для полиморфных классов, и вы увидите, что все виртуальные таблицы тоже прямо в код вшиты (созданы в компайл-тайме, получается). В чем от Раста принципиальное отличие?
@mikeofs1304
@mikeofs1304 10 күн бұрын
В расте явно прописываешь где тебе это надо и он делает. Где не надо не делает. Но гость скорее сравнивал с жаба шарпами скорее ну и гошкой
@f0xcatcher
@f0xcatcher 12 күн бұрын
Использую Firefox лет десять, примерно столько же занимаюсь frontend разработкой
@romanburak601
@romanburak601 15 күн бұрын
Спасибо за выпуск. Очень понравился! Если будет возможность, пожайлуста, сделайте выпуск про Nim. Интересный язык. Сделанный инженером для инженеров. Но что-то совсем не популярный. Хотелось бы послушать про причины.
@СлаваВолошин-ы3с
@СлаваВолошин-ы3с 14 күн бұрын
а я еще с такой проблемой в Расте столкнулся, что когда смотришь чужой код видишь там какой-то метод, но как понять какой трейт этот метод принес непонятно, а часто так бывает, что для получения метода нужно установить либу да и еще с определенным фича-флагом и вот это порой вяснить так геморно. Выпуск понравился.
@makarov...
@makarov... 9 күн бұрын
Искать импорт трейта, если импорта нет - по названию метода в файле. За два+ года не испытывал проблем в нахождении. Как бы Вы предложили вызывать метод трейта? Перед методом писать название трейта через точку?
@ivan7094
@ivan7094 16 күн бұрын
Крутой гость, спасибо.
@artemhnilov
@artemhnilov 15 күн бұрын
Давайте про Zig.
@ГеоргВартанов
@ГеоргВартанов 15 күн бұрын
ждем zig
@wsxpocxeafx
@wsxpocxeafx 15 күн бұрын
Зачем Zig, если Rust blaaaaaaaziiiiiing faaaaast
@artemhnilov
@artemhnilov 15 күн бұрын
@ не блэйзингее зига. +- одинаковый перформанс.
@wsxpocxeafx
@wsxpocxeafx 15 күн бұрын
@@artemhnilov у меня немного другая информация. Раст в 2 раза быстрее по тестам. Хотя тест там конечно примитивный. Хочешь увидеть тест, ищи слова: "Рауд 3: Какой язык учить в 2025 | Blazing fast | Odin vs Zig vs Rust vs CPP"
@wsxpocxeafx
@wsxpocxeafx 15 күн бұрын
Наплодили языков. Жизни не хватит, чтобы выбрать.
@bb18299
@bb18299 12 күн бұрын
Последние 15 лет разрабатывал железо, поэтому работал в основном на жестком C и asm. Пару лет назад появился проект в котором есть Linux + мое железо. Появилась потребность в новом языке, который будет удобен в Linux и умеет хорошо сходить на низкий уровень... Муки выбора были огромные на Rust смотрел сразу, но боялся его "сырости", не хотелось бы освоивать язык который лет через 10 загнется... C++ так и несмог еще со школы полюбить, ну не нравится он... Go и подобное это больше про "ITишечку", а не про железо.... Короче решился таки в Rust все таки. И не прогадал - безумно нравится язык! Кто то говорит, что приходится алгоритмы менять, что бы с БЧ в ладах быть! НО! Подумать и поменять алгоритм это намного лучше как для мозгов, так и для проекта, чем тоже время тратить на отлов ошибок! На круг разработка по времени никак не увеличивается! Синтаксис у Rust конечно так себе, слишком много модненького "сахара". Но ПО на нем реально маловесящее и быстрое! НО! У меня большой низкоуровневый бэкграунд. Поэтому работа с памятью, регистрами, непосредственно с ядрами и регистрами процессора, это все моё - мне очень легко было разобраться с понимаем философии БЧ, и далее ей следовать, поскольку я понимаю, что как и где БЧ хочет от меня. Я больше боролся с освоением синтаксиса когда например xxx.copy(), на самом деле ничего не копирует ну итд.... В молодости писал сайты на PHP/Perl/JS/CCS... и если ты до Rust писал только на этом, а железо для тебя просто черный ящик - то готовься. БЧ тебя поимеет во всё.... Я вообще трудно представляю как JS-шлепера пересаживать на Rust, без полного обучения с самого "0". Если вы до этого писали не дай бог на убогом Python... то для вас это будет как пересадка из стульчика в детском саду в кресло разработчика космических аппаратов.... Отсюда и хейт Rust, вкатиться по ITигечному в него не выйдет. Нужно хорошо знать и понимать работу железа.
@Taurdil
@Taurdil 11 күн бұрын
ой ладно стращать. Там весь БЧ - это канончиное 1 писатель или много читателей (RWLock), проверяемое в комп.тайме. Причем есть возможность подвинуть в рантайм эту проверку (Rc/Arc/etc). Собственно вся "тройственность" отсюда потом (Fn, FnOnce, FnMut). Думаю, "JS-шлеперу" и так норм, зачем ему лезть в железо или бэк
@mikeofs1304
@mikeofs1304 10 күн бұрын
​@@Taurdilага , встал товарищ на табуреточку низкоуровнего доминирования. Действительно сложно ,как и говорил гость асинхронка и лайфтаймы
@jaroslavbaker-pg1gs
@jaroslavbaker-pg1gs 3 күн бұрын
что-то много болтовни для такого чсв, трещать - не мешки ворочать
@MrLotrus
@MrLotrus 15 күн бұрын
Присоединяюсь, что интересно было бы послушать про Zig. Люди говорят что это отличный промежуточный вариант между C и Rust.
@wsxpocxeafx
@wsxpocxeafx 15 күн бұрын
А зачем тратить время на промежуток?
@Олег-ю3щ4ъ
@Олег-ю3щ4ъ 15 күн бұрын
По ошибкам, получилось смешно Кирилл только попытался потролить Goшников, как Дмитрий сразу же низвёл обртатно к Goшной обработке ошибок через if err != nil. И "человеческое хрен победишь" почему-то в Go победили =)
@aleksaksinenko7187
@aleksaksinenko7187 15 күн бұрын
Для меня, как для self-edu-man, ни разу не работавшим в разработке, в изучении раста не хватает уроков типа как это работает, как это писать. Со всем этим бороучекером, подсказки компилятора иногда вообще не помогают, он говорит, сделай так то, а мне нужно по другому. Вот сидишь и думаешь, а по другому вообще можно? Хочу какую-нибудь инструкцию, вот так читать из файла, если сделаешь так, то будет то-то, а так делать не надо. Хотя бы на начальном этапе обучения, чтоб заложились какие-то патерны
@Sneg00vik
@Sneg00vik 15 күн бұрын
Пользуйтесь AI-ассистентами, обучение ускоряет в разы.
@aleksaksinenko7187
@aleksaksinenko7187 15 күн бұрын
@@Sneg00vik Ага, пробую. Но боюсь галюцинаций. Недавно понадобилось реализовать алгоритм афинного преобразования на Питоне. Не хотелось тянуть библиотеки, так как этот алгоритм мне потом понадобится в мобилке. Гугление не помогло. Спросил у Перплексити, раза 4 он пытался мне что-то написать, но мимо. Я пол тетрадки изрисовал координатными осями, пока сам допетрил
@michaelmyers717
@michaelmyers717 15 күн бұрын
​@@aleksaksinenko7187советую лучше deepseek или chatgpt
@ОлегПахомов-ы3л
@ОлегПахомов-ы3л 15 күн бұрын
В любом случае все упрется в бизнес и экономическую целесообразность.
@ram0973
@ram0973 15 күн бұрын
Лучший язык, которого не существует: 1) При разработке интерпретируется , причем в реалтайме. (Vite + js) 2) Финальный результат можно скомпилировать в AOT. JIT, VM не обязательны и даже не желательны, зачем усложнять (С подобные) 3) Строгая статическая типизация. (C#, Java)) 4) Хорошо читается, пишется как текст на английском. (C#, Java, Python) 5) Фичи типа рефлексии бесплатны (C++) 6) Умеет компилироваться в JS и можно делать веб на одном языке (возможно WASM, если небольших размеров рантайма). 7) Заботится о безопасности, не за счёт сложности (?) 8) Скобочки как в Java (ненавижу скобки C# и не нравятся отступы Python) 9) Функциональщина встроена изначально и органично, а не прикручена сбоку (привет, Java) 10) Обработка null средствами языка обязательна 11) Нормальный менеджер пакетов из коробки (Rust) ... В целом это похоже на C# и Котлин, но не совсем то
@MariaEsenina
@MariaEsenina 15 күн бұрын
C# и Котлин вполне себе хорошие языки чтобы "просто делать вещи", не критичные к высокой производительности (в большинстве случаев производиетльности и так хватит с головой). При этом писать на них гораздо проще, чем на Rust, да и C++ и их устройство позволяет легко масштабировать проекты, если конечно есть достаточно квалификации.
@wsxpocxeafx
@wsxpocxeafx 15 күн бұрын
@@MariaEsenina C# топчик, Kotlin красив, короток и крут своими библиотеками для асинхронщины. Знаю оба языка.
@MariaEsenina
@MariaEsenina 15 күн бұрын
@@wsxpocxeafx я немало писала на C#, на Kotlin мало опыта, но с другой стороны когда потребовалось сделать небольшой проект под Android, то без особого труда вывезла за короткий срок на Kotlin, т.к. устроен он по большей части разумно. Так то мой основной язык вообще C++ и в долгосрочной перспективе я уже с него не уйду. C# - просто хорошая рабочая лошадка. Kotlin может ещё потыкаю в будущем, т.к. он не раздражает да и фактически стандарт разработки для Android.
@maxbykov229
@maxbykov229 14 күн бұрын
Dart?
@АлексейДавыдов-ъ9э
@АлексейДавыдов-ъ9э 15 күн бұрын
go компилируется моментально
@neshkeev
@neshkeev 15 күн бұрын
Стабилизируйте ABI, глупцы. Серьезный бизнес не может себе позволить использовать язык без обратной совместимости на бинарном уровне
@xshady2967
@xshady2967 14 күн бұрын
а в c++ есть стабильный ABI? его не использует серьезный бизнес?
@neogoose_btw
@neogoose_btw 14 күн бұрын
Ну к растовым библиотекам особо пока не линкаются напрямую и вряд ли будут + это безумно легко в автоматическом режиме сделать сишный публичный апи. Конкретно в каких областях стабилизированное ABI это критически необходимая вещь помимо рантаймов для ЯП и всяких кернелов?
@neshkeev
@neshkeev 13 күн бұрын
​@@xshady2967 тебя в Гугле забанили? Конечно C++ имеет стабильный ABI. У тебя под рукой знания всего человечества, а ты все ещё глупости пишешь, как и любой другой rust фан.
@neshkeev
@neshkeev 13 күн бұрын
​@@neogoose_btw ты похоже слишком юн и не видел с какими сложностями столкнулась индустрия при переходе с python 2 на python 3. Без стабильного ABI в Rust ситуация повторится только кода будет на порядки больше. В будущих релизах Rust неизбежно сломает бинарную совместимость, и ситуация будет очень сложная. У бизнеса будут терабайты бинарников, а новый код с ними линковаться не будет. Индустрия заплатит высокую цену за недальновидность современных "программистов"
@neogoose_btw
@neogoose_btw 12 күн бұрын
@@neshkeev Это даже смешно. Питонист берет в кавычки слово программист.
@Sneg00vik
@Sneg00vik 15 күн бұрын
Мы ждали этого!
@Sedhow
@Sedhow 15 күн бұрын
Дмитрий, рекомендую вам сделать эквализацию микрофона, убрать свестящие и чуть поднять середину
@Hoshiro_dev
@Hoshiro_dev 15 күн бұрын
деэссер и компрессор
@dimarogov4687
@dimarogov4687 13 күн бұрын
последние 5 лет использую только Firefox - там все ок
@sonboy520
@sonboy520 15 күн бұрын
про Ocaml тоже с Дмитрием будет? 😁
@AntiSmithhh
@AntiSmithhh 14 күн бұрын
конструкция "let ... else { ... };" без начального "if" уже вроде давно стаилизирована в расте.
@batorko
@batorko 14 күн бұрын
Лучший выпуск. Отличный гость, главное не фанат.
@736939
@736939 14 күн бұрын
Красивый язык, где паттерн матчинг реализован так, как нигде! Трейты, это охренительная вещ покруче интерфейсов, позволяющая добавлять методы в существующие структуры. Ненавижу лайфтаймы, это пипец! Сериализация, это головная боль. Создайте linked list с методами добавления и удаления с обоих концов ноудов, чтобы понять насколько пипец сложный язык. Ждемс Carbon.
@hr_in_kz
@hr_in_kz 15 күн бұрын
Rust поддерживает Microsoft. Значит какие то позитивные подвижки глобально произошли
@nerdizay
@nerdizay 15 күн бұрын
Где-то видел инфу, что очень много уязвимостей в Windows было из-за C, ошибок программистов в работе с памятью. Логично, что поддерживают.
@hr_in_kz
@hr_in_kz 15 күн бұрын
@ jetbrains еще polars на rust поддерживать начал. Может ML и DataScience возможен
@alexanderkalashnikov2721
@alexanderkalashnikov2721 15 күн бұрын
Странно, при обсуждении работы на Rust не было про web3, DeFi, blockchain…
@Edvard-Aliev
@Edvard-Aliev 13 күн бұрын
Этого говна хватает в других вещах, да и зачем расту блокчейн если есть другие инстументы.
@dlcgaming2642
@dlcgaming2642 12 күн бұрын
Ну да 80% вакансий именно там
@SergKoshelev
@SergKoshelev 8 күн бұрын
почему все упоминают zig, но конкретно о нем выпуска нет?) ничто не работает на фултайм?
@mokevnin
@mokevnin 8 күн бұрын
Как найдется гость, который сечет, так и бахнем)
@alexkazimir3835
@alexkazimir3835 3 күн бұрын
Алексей Кладов сейчас пишет какой-то стартап на zig. До этого внёс очень большой вклад в rust. Было бы интересно послушать его мнение и сравнение
@artemhnilov
@artemhnilov 15 күн бұрын
Еще давайте про Цетлин Машину.
@_dzen_tv_
@_dzen_tv_ 15 күн бұрын
"Язык который мы заслужили"
@Dmitry-cb7wl
@Dmitry-cb7wl 15 күн бұрын
Спасибо за видео! 01:20:35 По паттерн матчингу через if let() вы что-то не то сказали, else так же возможен, вот рабочий код if let Ok(r) = r { if let Some(r) = r{ println!("{}", r); } } else if let Err(err) = r { println!("Error: {}", err); }
@NickNovikov
@NickNovikov 15 күн бұрын
скорее всего речь про то что если есть else, то уже стоит использовать match.
@Dmitry-cb7wl
@Dmitry-cb7wl 15 күн бұрын
@@NickNovikov нет, речь шла что нет тех. возможности использовать else для паттерн матчинга через if let
@FenexUFO
@FenexUFO 15 күн бұрын
@@Dmitry-cb7wl let Ok(_) = foo else { // code else branch }
@Dmitry-cb7wl
@Dmitry-cb7wl 15 күн бұрын
@@FenexUFO в видео упоминалось что в else нельзя сделать еще одину проверку, а не просто ветку else если не ok(). Мой коммент про это.
@neogoose_btw
@neogoose_btw 14 күн бұрын
Я имел ввиду нечто такое. Понятно что можно вложить, но когда нужно именно нулевую проверку сделать хочется чего-то такого if let Some(ptr) && !ptr.is_null() { free(ptr) }
@mapgraf
@mapgraf 15 күн бұрын
пол веб-приложения переехало в rust wasm из-за портированных c++ и python библиотек с хорошей мат. основной. На TS ничего не было
@squiretrelawny5769
@squiretrelawny5769 15 күн бұрын
никто не в кусе про d-lang?
@AlexeyZabrodin
@AlexeyZabrodin 14 күн бұрын
Чем лучше Свифта?
@Andrii-i8s
@Andrii-i8s 15 күн бұрын
Хотелось бы послушать про Cobol или про Ada. на Ада пишут ПО в Боинг и Аэрбас. Ада мне кажется по надежности может потягаться с Раст хотя нет такой популярности.
@MariaEsenina
@MariaEsenina 15 күн бұрын
Ada хороша как минимум тем, что это стандарт, при этом она ещё и осваивается проще по итогу, если конечно есть желание изучать архаичный язык. На Cobol по прежнему работают дофига финансовых организаций (да, в 2025) и будут работать, просто потому что "работает - не трогай", финансисты очень консервативны.
@fourbytes1
@fourbytes1 15 күн бұрын
В разработке всё таки иногда хочется видеть прогресс и порадоваться даже убэшной, но скомпилированной программе, а Раст даёт такой интересный опыт, что пока БЧ на 100% не удовлетворишь даже концепции какие-то проверить не можешь. Больно иногда в общем.
@MariaEsenina
@MariaEsenina 15 күн бұрын
Весь Linux - это у(ё)бешная скомпилированная программа. Хотя на Rust вообще ничего нет, там вроде выкатывали какую-то поделку на Rust, так глючит там ровно ВСЁ (уж лучше бы сделали маленькую, но работающую ОС).
@wsxpocxeafx
@wsxpocxeafx 15 күн бұрын
@@MariaEsenina "какую-то поделку", "глючит там ровно всё" - очень объективно )). Ни одного факта, одни обрывки воспоминаний про что-то, чего, может быть, и нет.
@wsxpocxeafx
@wsxpocxeafx 15 күн бұрын
@@MariaEsenina есть же Redox OS. Не пользовался, но есть же.
@MariaEsenina
@MariaEsenina 15 күн бұрын
@@wsxpocxeafx возьми да поставь себе хоть сегодня вечером, "объективный" вы наш. Про Redox и говорила - мусор и поделка без будущего.
@MariaEsenina
@MariaEsenina 15 күн бұрын
@@wsxpocxeafx вот возьми и поставь Redox себе на комп, прежде чем что-то высказывать мне. Там течёт память, глючит поддержка 3D на своём базовом уровне (не работает алгоритм отсечения, лучше бы даже не позорились), даже калькулятор падает, если с ним чуть поиграться! Зато на "безопасном" Rust. Безопасно всё падает и ничего не работает нормально.
@alekseykharlamov7281
@alekseykharlamov7281 14 күн бұрын
слишком много как то проблем по сравнению с Го в Расте судя по диалогу ... какие то узкие места можно вынести в отдельный "микросервис", но прям что-бы все писать и страдать, зачем?
@ssssss5337
@ssssss5337 13 күн бұрын
Rust классный язык и я бы с радостью на него переключился, но объективно сейчас искать на работу на нормальные деньги на нем занятие крайне глупое, буквально сегодня в чате вакансий раста обсуждали эту тему и собрали стату и она печальная.
@Disorrder
@Disorrder 14 күн бұрын
Спасибо крабам за Tauri! :)
@bb18299
@bb18299 11 күн бұрын
Tauri великолепна! Красивый макакинг стучащийся напрямую в память/регистры/драйверы это замечательно. Спасибо ржавому )))
@Tremor1
@Tremor1 16 күн бұрын
Ого, плакат Animals as Leaders
@casiqvod
@casiqvod 15 күн бұрын
Респект за Animals as Leaders 👍
@nanoqsh
@nanoqsh 13 күн бұрын
Мужик накидал базы
@AntiSmithhh
@AntiSmithhh 14 күн бұрын
у Раста есть (имхо) один серьезный рубеж - это ядро Линукс. формально там что-то типа есть... типа пустили туда, но о полноченном включении в ядро пока речи близко нет. чтоб там какую-то подсистему или еще чего переписали. этого нет, к сожалению... и будет ли... да и нужно ли - это как минимум туманно для ядерного комьюнити.
@donateus6743
@donateus6743 9 күн бұрын
Кто выбирает Rust, тот не слыхал про Zig, Zig - по настоящему системный язык, раст - это игрушка поверх LLVM
@xshady2967
@xshady2967 7 күн бұрын
что значит "игрушка поверх LLVM"?
@ИльяСмыслов-г3ь
@ИльяСмыслов-г3ь 14 күн бұрын
Я знаю ток один Rust который в Стиме продаёться
@Doaxan
@Doaxan 14 күн бұрын
Servo на Rust писали много лет, так и не дописали, а на zig подобное уже написали, хотя zig все еще не 1.0 Думайте.
@xshady2967
@xshady2967 13 күн бұрын
а что написали на зиг?
@luckystrike91
@luckystrike91 15 күн бұрын
1:08:47 методы и поля структуры могут быть приватными, причем с разными уровнями приватности! с ооп отсутствует только наследование, при этом есть "псевдонаследование" трейтов. виртуальные вызовы реализованы через трейты + можно добавлять виртуальные функции к любым типам, хоть к i32.
@Dmitry-cb7wl
@Dmitry-cb7wl 15 күн бұрын
@@luckystrike91 псевдонаследование это вы про композицию?
@luckystrike91
@luckystrike91 15 күн бұрын
нет. трейт А наследуется от трейта Б - это означает, что все типы, реализующие трейт А должны сперва реализовать трейт Б. Другими словами, для всех типов А также верно и Б
@Josser-f2r
@Josser-f2r 13 күн бұрын
Приватные методы и разные уровни доступа НИКАК не связаны с инскапсуляцией. Почитайте определение.
@luckystrike91
@luckystrike91 13 күн бұрын
что значит никак не связаны? это один из механизмов, обеспечивающих инкапсуляцию!
@Josser-f2r
@Josser-f2r 13 күн бұрын
​@@luckystrike91 как распознать человека, который никогда не учился, либо учился в обосранном российском вузе. инкапсуляция это про обьеденение методов и классов в одну сущность, а вообще не про приватность. в С существует прекрасно сокрытие, но нет инкапсуляции от слова совсем.
@talisman1104
@talisman1104 15 күн бұрын
Дядя напоминает тётю, которая рассказывала про детейлс
@xshady2967
@xshady2967 14 күн бұрын
хахааххах да, такое очень часто встречается в программировании, здесь у гостя это еще не сильно выражено, бывает речь то русская то английская через каждое слово))
@tvvladimir985
@tvvladimir985 14 күн бұрын
Animals as leaders - nice
@CJSurv
@CJSurv 12 күн бұрын
Правильный go это crystal, потому что руби лучше питона
@eduardgorte8241
@eduardgorte8241 15 күн бұрын
Жаль что мало
@korneev_estate
@korneev_estate 13 күн бұрын
так и что - Пайтон не учить? сразу Rust ?
@НикитаТокин
@НикитаТокин 13 күн бұрын
Не стоит учить Rust первым языком программирования
@maxkhrisanfov
@maxkhrisanfov 7 күн бұрын
Если любишь программирование и не интересны пока деньги то учи Rust, потом просто переучиваться сложнее будет
@AntiSmithhh
@AntiSmithhh 14 күн бұрын
кароче)) полиморфизм классический есть. наследования - нет.
@АнтонСемёнов-х5ш
@АнтонСемёнов-х5ш 14 күн бұрын
Почти каждые два года появляются убийцы С++, но вот только сам С++ плевать хотел на этих "киллеров"...
@xshady2967
@xshady2967 14 күн бұрын
плевать хотел? не смотрели доклад delivering safe c++ от автора языка?
@alexanderkozlikhin
@alexanderkozlikhin 14 күн бұрын
Кривая обучения... неплохо сказано.
@tertiumorganum5665
@tertiumorganum5665 5 күн бұрын
Крч внутри с++ есть почти любой язык, плохо или хорошо это каждый техлид решает сам для себя😂 реально звучит всё как будто миллениалы изобрели кусочки c++😂
@nuegonah886
@nuegonah886 15 күн бұрын
хохо, плакатик Animals As Leaders
@Максим-ц3м2з
@Максим-ц3м2з 15 күн бұрын
"Чем не нравится го? Ну знаете, мне не нравится как он выглядит" Хорошего нашли эксперта. К слову stop of the world в современном го очень короткий, он делается буквально для того чтобы переключить значения парочки переменных, потом он прекращается и сборка мусора идет параллельно с работой программы.
@32zim32
@32zim32 15 күн бұрын
Как вообще можно сравнивать Го и Раст. Два абсолютно разных языка
@MrLotrus
@MrLotrus 15 күн бұрын
@@32zim32 К чести го его сравнивают с раст по производительности и они недалеко друг от друга в http сервисах
@Максим-ц3м2з
@Максим-ц3м2з 15 күн бұрын
@@32zim32 Ну если бы они были одинаковые то нечего было бы сравнивать :D А так они разные но у них пересекается область применения (например те же парсеры, да и много что написанное на го возможно переписать на раст), можно сравнить что лучше использовать, сильные и слабые стороны каждого, а не вот это вот "не нравится, неприятно читать", например у го гораздо лучше асинхронность устроена (ну по крайней мере для большинства задач) и язык сам по себе на порядок проще
@Александр-ф9в4ю
@Александр-ф9в4ю 15 күн бұрын
@@Максим-ц3м2з единственное где они могут пересекаться - написание бекенда. Всё. Причём действительно хайлоад бекенд (это хорошо если 1% всей бекенд разработки) - это раст онли. Дискорд с их переходом в хайлоад сервисе передаёт привет. Простите, пересекающийся го с его "ПРЕКРАСНО БЫСТРОЙ СБОРКОЙ МУСОРА" немного дискорду подубил latency... Никакого пересечения между этими языками нет. Один супер простой, МГОНОВЕННО (относительно второго) собирающийся. Второй это ждите сборку вечность, вагонище концепций и фич. Пересечение между ними увидет только тот, кто ни один не трогал. Ах ну и да, у го объективно ощущается как кал. Обработка ошибок на фоне растовых ADTшек - полный анприм. То что в язык не всё выражение - полный анприм и так далее по списку. Нет ни-че-го, так как никакого выдуманного вами пересечения между ними нет и языки про разное. Сказки про лучшую асинхронность слушать тоже приятно. Чем лучше? Тем что вам больше нравится? Ну так футуры растовые: Быстрее, потнециально работают на куче платформ разных, жрут меньше памяти. Что и является ЛУЧШИМИ характеристиками для СИСТЕМНОГО ЯП.
@ВладимирЛеденёв-э6г
@ВладимирЛеденёв-э6г 15 күн бұрын
​@@32zim32два практически одинаковых языка.
@artem_from_minsk
@artem_from_minsk 15 күн бұрын
Я под кайфом пишу на elixir и рад что не перешел на rust. С rust я как-то обманывал себя и страдал.
@MariaEsenina
@MariaEsenina 15 күн бұрын
А можно более развёрнуто? Я к Rust заведомо предвзята, интересно мнение человека, из не моего мира, который искренне пытался писать на Rust что-то сложнее hello world и бота для Телеги.
@artem_from_minsk
@artem_from_minsk 15 күн бұрын
@@MariaEsenina Я даже не знаю как это объяснить, это как любить девушку - одна красивая но что-то по характеру не такая, другая не симпатична, но добрый характер и прочее. Ну как говорят старые люди "насильно мил не будешь". Я за все время какие-то языки вымучивал из себя, а какие-то полюбил. В универе вымучивал delphi (pascal), VisualBasic затем полюбил PHP, но разлюбил из-за грязи в коде у всех. Затем Python - по сути тоже любил, но тормознутый. По сути перебрав все пока остановился elixir. С Rust - это просто как спать с нелюбимой женщиной, мучение и никакого удовольствия. Для себя конечно сделал вывод - нет RUST точно не full time! Да переписать что-то тормознутое, обернуть и забыть. Пусть другие пишут - я себя просто не смог мучать этим языком. Ну не мое и хоть убей.
@mahmoody8913
@mahmoody8913 15 күн бұрын
Один Rust не п?
@pawad001
@pawad001 12 күн бұрын
Если взять любую книжу по алгоритмам (особенно на графах) и попробовать это реализовать на rust, то сразу столкнёшься с невозможностью их реализовать. Rust требует полностью переосмыслить все эти алгоритмы. Поэтому пока солидные дяди не напишут мануалы как реализовывать алгоритмы на rust, его серьёзное применение не имеет смысла. Самостоятельно сидеть и ломать мозги нет смысла.
@Taurdil
@Taurdil 11 күн бұрын
"невозможно" на Тьюринг-полном языке? Дело в том, что там надо чуть больше думать над тем, кто и что собирается делать с вашими графами (разрешить ли перемещение ваших структур или данных из графа, их мутацию или ограничится только чтением). Крейты с операциями на графах как-то же написаны? (гуглить RefCell, Arc, Rc и смотреть исходники структур из стандартной библиотеки и тех же крейтов не повредит)
@pawad001
@pawad001 10 күн бұрын
@@Taurdil думайте, а нормальные люди будут пока писать на тех языках, где можно реализовать алгоритмы без выворачивания мозгов наружу. На любом С-подобном языке типичный псевдокод алгоритма транслируется тривиально. Структуры данных не нужно выворачивать под систему владения rust, а они ровно такие, какие и описаны в алгоритме. Суть моего замечания как раз в том и состоит, что на rust нет этой простоты и нет мануалов, которые бы объясняли как это делать.
@maxkhrisanfov
@maxkhrisanfov 7 күн бұрын
Можно у чатгпт спросить😊
@AlexKubrinsky
@AlexKubrinsky 15 күн бұрын
как же он прав! kzbin.info/www/bejne/mHzcqYKXhZKgesksi=LUKcE2WrrmkIShzZ&t=1385
@adanilow
@adanilow 13 күн бұрын
Go-спади 😊
@BumatuHe
@BumatuHe 14 күн бұрын
Как можно говорить про то что мозиле rust не помог. Странный взгляд…. А что гугл такой весь богатый изза хрома что ли? Или всетаки изза продажи рекламы?… и когда у тебя от продажи рекламы хуюлиард денег можно микроскопическую часть их потратить на технологию по развитию броузера да и еще с помощью опенсрурса кучу лохов наловить которые тебе ща социальный лифтинг и другие плюшки иправчт кучу багов;)
@РоманВольф-е1ж
@РоманВольф-е1ж 14 күн бұрын
Дико тяжело слушать.
@ГеннадийБекасов-ь5ю
@ГеннадийБекасов-ь5ю 14 күн бұрын
Как-то имел в целом хорошее отношение к расту после прохождения базовой книги, а чем больше слушаю вот дядю, тем больше он кажется эдаким восторженным молодым человеком, и закрадывается мысль, а не пошел бы ты со своим растом ещё эдак так лет на пять, дичь какая-то, а не язык
@doomer_haskell
@doomer_haskell 14 күн бұрын
лол, ты считаешь что тебе тут пришли продавать ЯП или рекламировать что-то? Какие же люди все-таки странные бывают. И кстати, если для тебя рост это дичь, а не язык -- то это уже скорее всего диагноз
@hanmajack935
@hanmajack935 15 күн бұрын
Давайте плз выпуск про мобильную разработку, как то стороной ее обошли, только про нормальную мобилку, а не поделки типа flutter или xamarin
@lpdgrl
@lpdgrl 16 күн бұрын
Главное, что в системном языке? Отсутствие библиотек.
@igors634
@igors634 10 күн бұрын
Растаманы
@mgevlich
@mgevlich 15 күн бұрын
Раствно какое то
Почему ассемблер остается актуальным в 2025 году?  | Дмитрий Коваленко | #28
1:24:10
Организованное программирование | Кирилл Мокевнин
Рет қаралды 10 М.
Горы Бесплатной пиццы
00:56
Тимур Сидельников
Рет қаралды 8 МЛН
Minecraft: Who made MINGLE the best? 🤔 #Shorts
00:34
Twi Shorts
Рет қаралды 46 МЛН
Ключевые тренды 2025: что ждет стейт-менеджмент в будущем? | Артём Арутюнян | #31
2:10:29
Организованное программирование | Кирилл Мокевнин
Рет қаралды 3,1 М.
Почему зумеры не хотят работать и почему это правильно
27:55
Rust? В моём фронтенде?! Константин Егупов, Modeldrive
42:20
Видео с мероприятий {speach!
Рет қаралды 8 М.
Где учат лучше: в США, Европе или России? / Виталий Брагилевский #7
2:15:33
Организованное программирование | Кирилл Мокевнин
Рет қаралды 8 М.
Почему WhatsApp, Discord и другие гиганты выбирают Erlang? | Юрий Жлоба | #30
1:28:39
Организованное программирование | Кирилл Мокевнин
Рет қаралды 10 М.