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
0
480
Programming Rust at FMI, 2021
The intro lecture of the 2021 "Programming Rust" course
Andrew Radev
October 05, 2021
Tweet
Share
More Decks by Andrew Radev
See All by Andrew Radev
Употреба и скриптиране на Vim във ФМИ 2023
andrewradev
0
360
Programming Rust at FMI, 2022
andrewradev
0
480
Rust: Настояще и бъдеще (БургасКонф 2022)
andrewradev
0
68
FMI-Rust: Shell Basics
andrewradev
0
180
[OpenFest 2020] The Freedom of Static Typing
andrewradev
0
44
Programming Rust at FMI, 2020
andrewradev
0
580
Programming Rust at FMI, 2019
andrewradev
0
400
[DevFest Toulouse 2019] The Freedom of Static Typing
andrewradev
1
170
Stranger Tests
andrewradev
0
300
Other Decks in Programming
See All in Programming
いまから追い上げる、Jetpack Compose トレーニング
nyafunta9858
0
250
実践 Advanced CallKit 〜快適な通話の実現に向けて〜
mot_techtalk
3
120
Kotlin 2.0が与えるAndroid開発の進化
masayukisuda
1
270
null or undefined
susisu
22
6.2k
私のEbitengineの第一歩
qt_luigi
0
440
Scala におけるコンパイラエラーとの付き合い方
chencmd
2
400
GraphQL あるいは React における自律的なデータ取得について
quramy
11
2.8k
マルチモジュールにおけるテスト最適化
fxwx23
0
200
RAGの回答精度評価用のQAデータセットを生成AIに作らせた話
kurahara
0
240
マイグレーションコード自作して File-Based Routing に自動移行!! ~250 ページの歴史的経緯を添えて~
cut0
1
260
開発を加速する共有Swift Package実践
elmetal
PRO
0
390
connect-go で面倒くささと戦う / 2024-08-27 #newmo_layerx_go
izumin5210
2
630
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
73
8.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
Bash Introduction
62gerente
608
210k
Producing Creativity
orderedlist
PRO
340
39k
4 Signs Your Business is Dying
shpigford
179
21k
BBQ
matthewcrist
83
9.1k
GraphQLの誤解/rethinking-graphql
sonatard
65
9.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
401
65k
Designing the Hi-DPI Web
ddemaree
278
34k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
27
8.9k
Music & Morning Musume
bryan
46
6k
Making Projects Easy
brettharned
113
5.8k
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 • Очаквайте компилационни грешки :)
?