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, 2020
Search
Andrew Radev
October 05, 2020
Programming
650
0
Share
Programming Rust at FMI, 2020
Intro lecture to the "Programming Rust" course at Sofia University, 2020.
Andrew Radev
October 05, 2020
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
89
FMI-Rust: Shell Basics
andrewradev
0
250
Programming Rust at FMI, 2021
andrewradev
0
560
[OpenFest 2020] The Freedom of Static Typing
andrewradev
0
81
Programming Rust at FMI, 2019
andrewradev
0
490
[DevFest Toulouse 2019] The Freedom of Static Typing
andrewradev
1
260
Stranger Tests
andrewradev
0
400
Other Decks in Programming
See All in Programming
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
1.1k
AIエージェントの隔離技術の徹底比較
kawayu
0
440
LLM Plugin for Node-REDの利用方法と開発について
404background
0
140
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
260
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
140
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
390
関係性から理解する"同一性"の型用語たち
pvcresin
2
620
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
140
Hive Metastoreを通して学ぶIceberg REST Catalog ― 仕様から実装まで
okumin
0
300
横断組織出身のQAEがインプロセスQAEでつまずいたこと・活かせたこと
ty89
0
460
新規プロダクトを高速で生み出すハーネスエンジニアリング
seanchas116
15
7.4k
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
180
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
120
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
540
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
210
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
The browser strikes back
jonoalderson
0
1.1k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
220
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Everyday Curiosity
cassininazir
0
210
Facilitating Awesome Meetings
lara
57
6.9k
Transcript
Програмиране с ust
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
None
None
None
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) • Игри (ggez, Amethyst, Piston, SHAR)
None
Rust: откъде идват хора? • Ruby, Python – скорост, статично
типизиране • Haskell, Scala – подобно типизиране • C/C++ – безопасност, съвместимост • Отворен процес
?
Предупреждения • Млад език • Труден (за научаване, не за
използване) език
Предупреждения “На 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 • Очаквайте компилационни грешки :)
?