Slide 1

Slide 1 text

Програмиране с ust

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

ust

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

Rust ● Млад: само на 4.5_f32 години (от 1.0) ● “C ме застреля в крака” ● “C++ ме застреля в крака++”

Slide 8

Slide 8 text

Rust: безопасност ● Ръчна алокация на памет ➔ Но няма free ● Мерки против кракозастрелвания ➔ Няма null ➔ Всички references са гарантирано валидни, compile-time ➔ Няма data races

Slide 9

Slide 9 text

Rust винаги шофира

Slide 10

Slide 10 text

Rust: low-level ● Бърз ● Zero-cost abstractions ● Малък runtime ● Съвместимост

Slide 11

Slide 11 text

Rust: high-level ● Пакети ● Тестване ● Любезен компилатор ● Силна статична типова система ● Елементи от функционалното програмиране ● Елементи от ООП

Slide 12

Slide 12 text

Ferris the Crustacean

Slide 13

Slide 13 text

Ferris the Crustacean

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

Rust: употреба ● Системно програмиране (Redox, coreutils) ● Embedded програмиране

Slide 17

Slide 17 text

Embedded!

Slide 18

Slide 18 text

Rust: употреба ● Системно програмиране (Redox, coreutils) ● Embedded програмиране ● Уеб, server-side (Rocket, Diesel) ● Уеб, client-side (wasm, stdweb, yew)

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

Rust: употреба ● Системно програмиране (Redox, coreutils) ● Embedded програмиране ● Уеб, server-side (Rocket, Diesel) ● Уеб, client-side (wasm, stdweb, yew) ● Networking, async stuff (Tokio) ● Обработка на данни ● Tooling (ripgrep, xsv) ● Игри (ggez, Amethyst, Piston, SHAR)

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

Rust: community ● Ruby, Python – скорост, статично типизиране ● Haskell, Scala – подобно типизиране ● C/C++ – безопасност, съвместимост ● Отворен процес

Slide 23

Slide 23 text

Friends of Rust

Slide 24

Slide 24 text

Предупреждения ● Млад език ● Труден (за научаване) език

Slide 25

Slide 25 text

Предупреждения “На Go-то, с 2 часа седмично, накрая се чудехме за какво да говорим… ама на вас може да не ви стигне времето.” (Note: стигна ни)

Slide 26

Slide 26 text

Административни неща ● Домашни: 4 x 15 = 60т (може би) ● Проект: 1 x 60 = 60т ● (+ разни бонуси) ● 60т: 3 ● 75т: 4 ● 90т: 5 ● 105т: 6

Slide 27

Slide 27 text

Административни неща ● Място: 101 ● Дни: Вторник и четвъртък ● Време: 19:15 – 21:00

Slide 28

Slide 28 text

Административни неща ● Discord: https://discord.gg/FCTNfbZ ● Лекции, домашни и други неща: https://fmi.rust-lang.bg ● Бира и всевъзможни други питиета

Slide 29

Slide 29 text

?