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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
87
FMI-Rust: Shell Basics
andrewradev
0
250
Programming Rust at FMI, 2021
andrewradev
0
550
[OpenFest 2020] The Freedom of Static Typing
andrewradev
0
78
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
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
2
110
AI-DLC Deep Dive
yuukiyo
8
3.6k
ハーネスエンジニアリングとは?
kinopeee
6
3.6k
CursorとClaudeCodeとCodexとOpenCodeを実際に比較してみた
terisuke
1
450
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
220
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
240
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
260
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
130
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
200
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
0
140
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.4k
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.3k
Practical Orchestrator
shlominoach
191
11k
The Curious Case for Waylosing
cassininazir
0
300
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
110
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
770
Navigating Weather and Climate Data
rabernat
0
170
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
260
Fireside Chat
paigeccino
42
3.9k
Darren the Foodie - Storyboard
khoart
PRO
3
3.2k
Why Our Code Smells
bkeepers
PRO
340
58k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
310
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
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 • Очаквайте компилационни грешки :)
?