004. Rust: код может быть одновременно безопасным и быстрым - Степан Кольцов
Yandex for Developers
0:00 / 0:00
004. Rust: код может быть одновременно безопасным и быстрым - Степан Кольцов
6 867 просмотров · 11 лет назад
Yandex for Developers
76,1 тыс. подписчиков
6 867 просмотров · 11 лет назад
Последние 15 лет между разработчиками на Java и на C++ ведётся спор о том, какой язык программирования хуже — Java или C++. Программы на C++ глючат, падают, и в них утекает память. Программы на Java тормозят и требуют слишком много памяти.
Rust — новый язык программирования, разрабатываемый компанией Mozilla — решает проблемы Java и C++: программы, написанные на Rust, одновременно быстрые и безопасные. Rust является таким же низкоуровневым, close-to-metal языком программирования, как и C++, однако в язык встроены конструкции, позволяющие на этапе компиляции доказывать, что в программе не случится обращения к неинициализированной памяти (механизм borrowed pointers). Большая часть моего рассказа будет посвящена описанию этого механизма.
Кроме того, Rust исправляет многие ошибки, допущенные при проектировании C++ и Java. Например, шаблоны в Rust, в отличие от C++, статически типизированы, а вместо дженериков Java используется механизм, похожий на тайпклассы Haskell. Про это я тоже немного расскажу.
В данный момент язык программирования Rust ещё не начал использоваться в промышленном программировании, и найти работу программистом на Rust прямо завтра, скорее всего, не получится. Однако изучать Rust стоит — чтобы лучше программировать на Java и C++ и чтобы понимать, в каком направлении развивается современное программирование.