60 lines
1.6 KiB
Markdown
60 lines
1.6 KiB
Markdown
# Rust, Scala, Swift, Haskell — Estudo
|
|
|
|
---
|
|
|
|
## 🦀 Rust
|
|
|
|
**Paradigma:** Systems programming, memory-safe, zero-cost abstractions
|
|
**Tutoriais:**
|
|
- Web App: servidor HTTP em Rust (partes 1-2)
|
|
- OS Kernel: sistema operacional do zero (phil-opp)
|
|
- Browser Engine: layout engine (HTML → CSS → render tree)
|
|
- Microservice: servidor web concorrente
|
|
- Too Many Linked Lists: tipos complexos, ownership
|
|
- Chat Service: WebSocket escalável (partes 1-2)
|
|
- Roguelike Game: desktop + web (WASM)
|
|
- SPA com WASM: Rust → WebAssembly → frontend
|
|
- NES Emulator: CPU 6502, PPU, APU
|
|
|
|
**Conceitos:** Ownership, Borrow Checker, Lifetimes, Traits, no_std, WASM, LLVM
|
|
|
|
**Aplicação MT:** Ferramentas de sistema (substituir C), WASM para web, emuladores
|
|
|
|
---
|
|
|
|
## 🟠 Scala
|
|
|
|
**Paradigma:** Funcional + OOP na JVM
|
|
**Tutoriais:**
|
|
- Blockchain: actor-based, concorrência
|
|
- Regular Expressions: implementação do zero
|
|
|
|
**Conceitos:** Akka actors, pattern matching, implicits, type classes, SBT
|
|
|
|
---
|
|
|
|
## 🔵 Swift
|
|
|
|
**Paradigma:** Moderno, seguro, iOS/macOS
|
|
**Tutoriais:**
|
|
- Hacking with Swift: 39 projetos iOS (UIKit, SpriteKit, Core Data)
|
|
- Retro FPS: first-person shooter do zero (Metal graphics)
|
|
|
|
**Conceitos:** ARC, optionals, protocol-oriented programming, SwiftUI, Metal (GPU)
|
|
|
|
**Aplicação MT:** App iOS para equipe de campo
|
|
|
|
---
|
|
|
|
## 🟣 Haskell
|
|
|
|
**Paradigma:** Puramente funcional, lazy evaluation
|
|
**Tutoriais:**
|
|
- Compiler: Write You a Haskell (compilador funcional)
|
|
- Scheme Interpreter: 48 horas
|
|
- IRC Bot: rede, sockets
|
|
- Movie Monad: aplicação com GUI
|
|
- Website: Haskell + web framework
|
|
|
|
**Conceitos:** Monads, Functors, Applicatives, Type classes, Lazy evaluation, GHC
|