Рубріки: Инструменты

Почему стоит учить Rust: 5 аргументов в пользу технологии

Анастасія Пономарьова

Rust несколько лет подряд становится самым любимым языком программирования в мире (и остается таким), по данным опросов Stack Overflow. Рассказываем, почему эта технология заслуживает вашего внимания.

Rust поддерживают крупные IT-компании

Каждый год изобретается множество языков программирования, но мы часто слышим только о нескольких. В основном потому, что их используют в крупных IT-компаниях вроде Microsoft или Apple, пишет Dice.

Rust был запущен Mozilla в 2015 году после десяти лет разработки, а теперь находится под эгидой организации Rust Foundation, в которую входят такие компании, как Amazon, Google, Huawei, Microsoft, Meta, Arm, Dropbox, Toyota и другие. То есть хорошо зная эту технологию, можно рассчитывать на место в крупной компании — там она будет актуальна.

Альтернатива C++

Конечно, это как сравнивать яблоки и груши, но в целом Rust хорошо подходит для создания приложений, которые вы планируете писать (или уже пишете) на C++. Почему? Он устраняет классы ошибок, связанные с C++ (например, одна ошибка в 2016 году позволила взломать криптовалюту, что привело к потерям в миллионы долларов). В Rust нет нулей, которые нередко вызывают проблемы.

Да, C++ быстрее компилирует исходные файлы, но если вы работаете с заголовочными файлами, то C++ будет тратить много времени на перекомпиляцию. Разработчики стараются повысить скорость компиляции Rust, чему способствуют улучшения LLVM (компилятор использует LLVM для серверной части).

Как только вы выйдете за пределы компиляции отдельных файлов с помощью компилятора Rust, лучше всего использовать Cargo, официальную систему сборки Rust и менеджер пакетов. Он проверяет зависимости и не перекомпилирует, если нет изменений. Это значительное преимущество над С++, у которого нет официальной системы сборки.

Управление памятью

Rust позволяет контролировать, где и как выделяется и освобождается память. Когда вы запрашиваете память для переменной, можно объявить умный указатель. Однако отмена выделения выполняется, когда этот умный указатель выходит за пределы области действия.

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

Для наглядности

Правильный параллелизм

В официальной онлайн-документации Rust это называется «бесстрашным параллелизмом», который «позволяет писать код, свободный от незаметных ошибок, который легко рефакторить, не добавляя новых ошибок». Это довольно смелое утверждение, поскольку параллелизм зачастую может привести к некоторым очень тонким ошибкам. Компилятор предотвращает многие из них во время компиляции, упрощая разработку многопоточных приложений без трудно отслеживаемых ошибок, характерных для других языков.

Расширенная поддержка WebAssembly

WebAssembly позволяет создавать видео, аудио, графику, трехмерную среду, мультимедийные игры, криптографические вычисления и даже языковые реализации. Многие языки поддерживают WebAssembly, но для кода производственного качества рекомендуется ограничиться C/C++, Rust или AssemblyScript.

Установка компилятора WebAssembly в Rust занимает около двух секунд. Компиляция в WebAssembly значительно проще, чем, скажем, для C или C++ с использованием EmScripten. 

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023