4.5 1 1 1 1 1 1 1 1 1 1 Рейтинг 4.50 (4 Голоса (ов))
язык rust для начинающих

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

   Экспериментальный движок браузера Mozilla под названием Servo использует URL-парсер для сетевого стока, основанный на языке Rust. В ближайшее время в браузере появятся новые функции (хотя запрос опционального включения парсера Rust уже имеется).

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

Язык программирования Rust, версия 1.2.

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

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

   Языки, такие как Java, .NET и JavaScript, решают задачу с помощью комбинации для проверки границ. В результате каждая попытка прочтения и записи в память ограничивается выделенным участком. Java, .NET и JavaScript ведут сборку мусора, обеспечивая очистку памяти.

  Вместе эти методы предостерегают пользователей от ошибок разработчиков и вызванных этими ошибками проблем с безопасностью. Но за всё нужно платить: сборка мусора влечет за собой увеличение объёма используемой памяти и может привести к несоответствиям выполнения программы. Традиционно погрешности возникают при обращении к старым библиотекам – C или C++.

   Java и JavaScript не используют нативный код. Вместо этого преобразование в машинный код, обычно, идёт только во время выполнения.

   Какие преимущества дает использование Java и JavaScript: программное обеспечение не требует перекомплектации для различных процессорных архитектур, а безопасность проверяется на этапе выполнения. Полезная функция – запуск «непроверенного» кода (в том же в браузере), однако существенным ее недостатком выступает спад производительности.

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

   Перспективы языка программирования Rust

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

   Объекты, выделенные в памяти, могут иметь только одного владельца (хотя владение может быть «одолжено», чтобы объекты свободно передавались функциям). Для Rust характерно следующее: длительность жизни владельцев не может быть короче периода существования самих объектов.

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

   Язык также включает в себя встроенные функции параллелизма и поддержку дженериков и мощных макросов.
Эти особенности должны сделать Rust конкурентоспособным в плане производительности, использования памяти (по сравнению с C и C++), исключить любые уязвимости.

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

  Материал предоставлен студией копирайтинга и web-дизайна Content Master .

 

Понравилась статья? Поделись ей с друзьями!

Добавить комментарий


Защитный код
Обновить

Наверх