Кулинарная книга
Короткие законченные программы, каждая решает одну практическую задачу. Все блоки с пометкой «Вывод» компилируются и запускаются при
каждой сборке сайта, поэтому код всегда соответствует текущему компилятору. Программу можно скопировать в файл и выполнить:
oxl run recipe.oxl (тестовые рецепты — oxl test recipe.oxl).
Рецепты, которым нужна сеть, работают через 127.0.0.1 (сервер и клиент в одной программе на свободном порту), поэтому внешняя сеть
и кластер не требуются.
| Страница | Рецепты |
|---|---|
| Текст и командная строка | частоты слов, разбор CSV, аргументы командной строки, таблица, файлы |
| JSON и время | сериализация и разбор JSON, ошибки декодирования, даты и длительности |
| HTTP | сервер с маршрутами, middleware, JSON-запрос клиентом |
| rpc и акторы | сервис с ошибками в контракте, актор-ограничитель частоты |
| Паттерны конкурентности | пул воркеров, конвейер, таймаут, STM, потоки |
| Паттерны ошибок | enum-ошибки, повтор с задержкой, запасной путь, defer |
| Паттерны тестов | таблицы, фикстуры, моки, снимки, симуляция, фаззинг |
| Обобщения и интерфейсы | Stack<T>, dyn-интерфейсы, операторы, свои итераторы |
| Хранилище | ORM с SQLite: CRUD, запросы, транзакции; std.kv |
| Конфигурация и наблюдаемость | config с профилями, логи, метрики и спаны |
Больше возможностей показывают проекты (shop, bank-saga, counter-cluster) и тур.