DevGang
Авторизоваться

Rust для начинающих - начните с самого популярного языка программирования

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

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

Но есть вероятность, что вы не работали с Rust. Или, что еще хуже, вы могли не слышать о  нем раньше. Итак, давайте узнаем об этом больше.

Опрос StackOverflow 2020
Опрос StackOverflow 2020

Почему Rust?

Давайте посмотрим, почему разработчик выбрал Rust.

Типичные языки программирования, такие как Python и C++, абстрагируют много деталей от разработчиков.

Если вы являетесь младшим разработчиком, работающим над простым веб-приложением, это не может быть проблемой. Вы просто хотите найти решение проблемы.

Для крупномасштабных приложений, которыми ежедневно будут пользоваться миллионы пользователей, подход «решения проблем» не работает. Больше пользователей потребляют больше системных ресурсов. А больше ресурсов означает большие счета для вашей компании.

Вот где сияет Rust. Rust сочетает простоту программирования с доступом к основным конфигурациям системы. Rust с самого начала построен с обеспечением безопасности памяти, параллелизма и безопасности.

Rust - это «язык системного программирования, ориентированный на скорость, безопасность памяти и параллелизм».

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

Теперь, когда вы знаете, что Rust может для вас сделать, давайте подробно рассмотрим его.

 Происхождение

Rust - это язык программирования с открытым исходным кодом. Впервые он был представлен миру в 2010 году Грейдоном Хоаром, когда он работал в Mozilla. Вскоре после этого Mozilla начала спонсировать этот проект и по-прежнему является основным участником Rust.

Rust начал набирать популярность с годами. Даже Microsoft использует Rust для создания безопасных и важных для безопасности программных компонентов.

 Основные особенности

Давайте посмотрим на некоторые основные функции, которые выделяют Rust среди других языков программирования.

Производительность

Rust изначально создавался для обеспечения высокой производительности. Rust предлагает детальный контроль управления памятью и имеет минимальную стандартную библиотеку.

Если вы посмотрите на некоторые метрики, которыми поделился Figma, у них были невероятные улучшения в производительности после перехода на Rust.

Небольшой объем памяти, занимаемый Rust, также делает его идеальным выбором для программирования встраиваемых систем. Вы можете использовать Rust для написания программного обеспечения для устройств IoT, таких как центры домашней автоматизации, интеллектуальные системы безопасности и т. д.

Безопасность

Одна из основных причин, по которой Microsoft решила поддержать Rust, - это его безопасность.

Большинство уязвимостей в программном обеспечении Microsoft связано с плохим управлением памятью в C и C ++. Это привело к простым, но мощным эксплойтам, таким как эксплойт Buffer Overflow, который годами наносил вред Windows.

Поэтому Microsoft решила искать лучшую альтернативу C ++. И они нашли Rust.

Использование Rust устраняет целый класс уязвимостей безопасности программных приложений. Это помогает компаниям создавать приложения с более высокой производительностью и большей безопасностью.

Параллелизм

Параллелизм - это когда две или более задачи запускаются, выполняются и завершаются в перекрывающееся время. Операции с базой данных - отличный пример для объяснения параллелизма.

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

Rust решает большинство проблем параллелизма во время компиляции, используя концепцию владения. 

Работа с Rust

Теперь, когда вы понимаете основные возможности Rust, давайте напишем несколько строк кода. Вы можете найти здесь инструкции по установке, если хотите попробовать Rust на своем компьютере.

Начнем с простого «Hello World!» функция.

// Main function
fn main() {
	println!("Hello World!");
}

Попробуем сложить два числа.

// Main function
fn main() {
	let a = 100;
    let b = 200;
    println!("Result is {}",a+b);
}

Опять же, довольно стандартно. Теперь давайте посмотрим на операцию с массивом.

// Main function
fn main(){
	let arr:[i32;4] = [1,2,3,4];
    println!("array size is {}",arr.len());
}

Если вы посмотрите на строку 3, мы используем «: [i32; 4]». Здесь мы сообщаем Rust, что объявляем массив длиной 4 с 32-битными целыми числами.

Подробное объявление типов данных - ключевой фактор повышения производительности программы. Вы помогаете компилятору сэкономить время, явно объявляя, какой тип данных вы собираетесь присвоить переменной.

Разрешение компилятору определять тип данных - одна из основных причин, по которой вы сталкиваетесь с проблемами производительности при масштабировании приложения.

Кроме того, Rust - это язык со статической типизацией, что означает, что он должен знать типы всех переменных во время компиляции.

Хотя Rust синтаксически похож на C и C ++, не позволяйте его простоте вводить вас в заблуждение. Rust требует сложного обучения. Но оно того стоит, если вы хорошо усвоите основы.

Кто использует Rust?

Теперь, когда вы хорошо понимаете, что такое Rust, давайте посмотрим, кто использует Rust.

Microsoft

Когда-то яростный противник открытого исходного кода, Microsoft теперь активно участвует в ряде проектов с открытым исходным кодом. Их проект .net core является одним из самых популярных фреймворков с открытым исходным кодом, используемых разработчиками сегодня.

Microsoft выбрала Rust для приложений, критичных к безопасности и производительности. Rust также широко используется в Azure, особенно в его платформе IoT Edge, для запуска приложений AI на устройствах IoT.

Dropbox

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

Dropbox недавно написал подробную статью о том, как они переписали свой основной движок.

По словам Dropbox,

Rust стал умножителем силы для нашей команды, и ставка на Rust была одним из лучших решений, которые мы приняли.

Rust также способствовал тому, что Dropbox перенес свою инфраструктуру с AWS в собственные центры обработки данных.

Figma

Figma - это облачный инструмент для проектирования и создания прототипов, который вы можете использовать в своем браузере. Это отличный инструмент для проектирования, создания прототипов и экспорта ваших проектов в код. Узнайте больше о Figma здесь.

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

Вот статья, которую Figma написала о своем опыте работы с Rust.

TL; DR

Rust - это язык системного программирования, который четыре года подряд признавался самым популярным языком программирования StackOverflow.

Rust дает вам контроль над низкоуровневыми деталями и обеспечивает значительное улучшение скорости и стабильности.

Это помогло таким компаниям, как Dropbox, Figma и Microsoft, создавать лучшие приложения для своих клиентов.

Этот язык все чаще используется компаниями, которые хотят масштабировать свои приложения с более высокой производительностью и параллелизмом. Звучит интересно? Начните изучать Rust здесь.

Источник:

#Open source
Комментарии
Чтобы оставить комментарий, необходимо авторизоваться

Присоединяйся в тусовку

Поделитесь своим опытом, расскажите о новом инструменте, библиотеке или фреймворке. Для этого не обязательно становится постоянным автором.

Попробовать

Оплатив хостинг 25$ в подарок вы получите 100$ на счет

Получить