Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Programming Rust at FMI, 2021
Search
Andrew Radev
October 05, 2021
Programming
550
0
Share
Programming Rust at FMI, 2021
The intro lecture of the 2021 "Programming Rust" course
Andrew Radev
October 05, 2021
More Decks by Andrew Radev
See All by Andrew Radev
Употреба и скриптиране на Vim във ФМИ 2023
andrewradev
0
480
Programming Rust at FMI, 2022
andrewradev
0
640
Rust: Настояще и бъдеще (БургасКонф 2022)
andrewradev
0
88
FMI-Rust: Shell Basics
andrewradev
0
250
[OpenFest 2020] The Freedom of Static Typing
andrewradev
0
79
Programming Rust at FMI, 2020
andrewradev
0
650
Programming Rust at FMI, 2019
andrewradev
0
490
[DevFest Toulouse 2019] The Freedom of Static Typing
andrewradev
1
250
Stranger Tests
andrewradev
0
390
Other Decks in Programming
See All in Programming
Don't Prompt Harder, Structure Better
kitasuke
0
790
AIと共に生きる技術選定 2026
sgash708
0
110
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
24
15k
エラー処理の温故知新 / history of error handling technic
ryotanakaya
6
1.6k
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
220
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
150
ついに来た!本格的なマルチクラウド時代の Google Cloud
maroon1st
0
270
10 Tips of AWS ~Gen AI on AWS~
licux
5
480
Making the RBS Parser Faster
soutaro
0
540
Running Swift without an OS
kishikawakatsumi
0
850
Swift Concurrency Type System
inamiy
1
550
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
350
Chasing Engaging Ingredients in Design
codingconduct
0
180
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
270
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
750
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
380
Speed Design
sergeychernyshev
33
1.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
The Language of Interfaces
destraynor
162
26k
We Are The Robots
honzajavorek
0
220
KATA
mclloyd
PRO
35
15k
Why Our Code Smells
bkeepers
PRO
340
58k
Transcript
Програмиране с ust
None
None
None
None
None
None
ust
None
Rust • Млад: само на 5.5_f32 години (от 1.0) •
“C ме застреля в крака” • “C++ ми застреля и двата крака”
Rust: безопасност • Ръчна алокация на памет ➔ Но няма
free • Мерки против кракозастрелвания ➔ Няма null ➔ Всички references са гарантирано валидни, compile-time ➔ Няма data races
Rust: low-level • Бърз • Zero-cost abstractions • Малък runtime
• Съвместимост
Rust: high-level • Пакети • Тестване • Силна статична типова
система • Любезен компилатор • Елементи от функционалното програмиране • Елементи от ООП
Rust: community
Ferris the Crustacean
Ferris the Crustacean
Friends of Rust
Rust companies
None
None
Rust: за какво се използва?
Rust: употреба • Системно програмиране (Redox, coreutils) • Embedded програмиране
None
None
Rust: употреба • Системно програмиране (Redox, coreutils) • Embedded програмиране
• Уеб, server-side (Actix-web, Diesel, SQLx)
None
Rust: употреба • Системно програмиране (Redox, coreutils) • Embedded програмиране
• Уеб, server-side (Actix-web, Diesel, SQLx) • Уеб, client-side (wasm, stdweb, yew)
None
Rust: употреба • Системно програмиране (Redox, coreutils) • Embedded програмиране
• Уеб, server-side (Rocket, Diesel) • Уеб, client-side (wasm, stdweb, yew) • Networking, async stuff (Tokio) • Обработка на данни • Tooling (ripgrep, xsv, fd, sd, rawk) • Parser-и (rust-analyzer, salsa, parcel) • Игри (ggez, godot, bevy, SHAR)
None
Rust: откъде идват хора? • Ruby, Python – скорост, статично
типизиране • Haskell, Scala – подобно типизиране • C/C++ – безопасност, съвместимост • Отворен процес: The Rust Foundation
?
Предупреждения • Млад език • Труден (за научаване, не за
използване) език • Иска време
Предупреждения “На Go-то, с 2 часа седмично, накрая се чудехме
за какво да говорим… ама на вас може да не ви стигне времето.” (Note: стигна ни)
Административни неща • Домашни: 4 x 15 = 60т (може
би) • Проект: 1 x 60 = 60т • + разни бонуси: предизвикателства, въпроси и отговори • 60т: 3 • 75т: 4 • 90т: 5 • 105т: 6
Административни неща • Онлайн: http://video.fmi.rust-lang.bg • Има парола, видима в
dashboard-а • Дни: вторник и четвъртък • Време: 19:15 – 21:00 • Ще има видео записи в секция “Материали”
Да идвате ли на лекции? • Накратко: Да • Ако
се налага, гледайте видеото • Задължително започвайте домашните отрано
Административни неща • Discord: https://discord.gg/FCTNfbZ • Снимки и имена •
Лекции, домашни, парола за видеото (регистрирайте се): https://fmi.rust-lang.bg
Ако още не сте зарибени • Кратко интро към езика
от OpenFest 2017 (spoilers!): https://youtu.be/GJfFOWv2bAg • Малко по-advanced, предимно за static typing: https://youtu.be/qfyhzwYWVn8
Ако искате да пробвате • Най-лесния начин: https://play.rust-lang.org/ • За
да си го инсталирате локално: https://2017.fmi.rust-lang.bg/topics/1 • Очаквайте компилационни грешки :)
?