# Eagle blog > Блог неунывающего программиста ## Sections - [Rust](https://eagle2000.space/rust/llm.md): Мой путь в изучении языка rust (44 articles) - [О фотографии](https://eagle2000.space/photography/llm.md): Мои мысли, статьи и заметки о фотографии, перенесённые из старой группы (4 articles) - [Dart](https://eagle2000.space/dart/llm.md): Все о dart (1 articles) - [Иностранные языки](https://eagle2000.space/languages/llm.md): Иностранные языки (2 articles) - [Посты обо всем](https://eagle2000.space/about-all/llm.md): Посты, заметки на разлиные темы которые меня волнуют (8 articles) - [Сегодня я узнал](https://eagle2000.space/til/llm.md): Сегодня я узнал (0 articles) - [Книжная полка](https://eagle2000.space/books/llm.md): Прочитанные и рекомендуемые книги по программированию, архитекторе, фотографии и продуктивности с личными рецензиями и выводами. (0 articles) ## Key Articles - [Погружение в Lifetimes (времена жизни) в Rust: работа с ссылками без ошибок и паники](https://eagle2000.space/rust/rust-lifetimes-deep-dive/llm.md): Разбираем времена жизни (Lifetimes) в Rust: как компилятор выводит их сам (Lifetime Elision), как хранить ссылки в структурах, где нужна память 'static, связывание for<'a> и вариантность ссылок. - [Опыт важнее мегапикселей: Почему стоит изучить мануал к камере](https://eagle2000.space/photography/practice-and-gear/llm.md): Почему знание мануала своей камеры ценнее дорогой оптики? Практические советы фотографа по настройкам, композиции и съемке для создания сочных кадров. - [Rust: тонкости Pattern Matching - деструктуризация, bindings и guards](https://eagle2000.space/rust/rust-pattern-matching-deep-dive/llm.md): Изучаем как работает сопоставление с образцом Pattern Matching в Rust: exhaustiveness, деструктуризация, @-binding, slice patterns и guards на примерах реальных проектов - [Использование и применение std::collections в Rust: BTreeMap, HashSet, BinaryHeap и VecDeque](https://eagle2000.space/rust/rust-collections-overview/llm.md): Разбираем коллекции в Rust: когда применять VecDeque, чем BTreeMap отличается от HashMap и почему LinkedList почти никогда не нужен. - [Внутренняя мутабельность в Rust: паттерн использования Cell, RefCell](https://eagle2000.space/rust/rust-interior-mutability/llm.md): Разбираемся с паттерном внутренней мутабельности (Interior Mutability) в Rust: философия работы, контейнеры Cell и RefCell, отличие от унаследованной мутабельности. - [Обновление главной страницы и дизайна карточек статей](https://eagle2000.space/about-all/blog-design-update/llm.md): Небольшое обновление интерфейса EagleBlog: обновил дизайн карточек статей и главную страницу. Теперь последняя публикация сразу привлекает к себе внимание. - [Как использовать монопод правильно: Секреты стабильного кадра](https://eagle2000.space/photography/monopod-guide/llm.md): Разбор техники работы с моноподом (одноногим штативом) в фотографии и видео: стойки, работа в толпе, нестандартные ракурсы и сравнение со стедикамами. - [Продвинутые типажи в Rust: ассоциированные типы, супертрейты и blanket-реализации](https://eagle2000.space/rust/rust-advanced-traits/llm.md): Глубокое погружение в продвинутые возможности типажей Rust: ассоциированные типы type Item, ассоциированные константы, синтаксис ::method, супертрейты и blanket-реализации. - [Дайджест мобильной разработки: Релиз Flutter 3.47 & Dart 3.13, 5 лет Compose, безопасность и утилиты](https://eagle2000.space/til/mobile/mobile-dev-digest-week-33/llm.md): Подробный дайджест мобильной разработки: релизы Flutter 3.47 и Dart 3.13, 5 лет Jetpack Compose, правила безопасности Semgrep, гайды Apple по промо в App Store и open-source утилиты. - [Крейт дня: Strum - автоматический перебор и конвертация enum в Rust на примере esp-generate](https://eagle2000.space/rust/crate-of-the-day-strum/llm.md): Разбираем популярный крейт strum: как итерироваться по вариантам enum, конвертировать enum в строки и обратно на реальном примере из инструмента esp-generate. - [Крейт дня: Rayon - параллельные вычисления в одну строку](https://eagle2000.space/rust/crate-of-the-day-rayon/llm.md): Разбираем легендарный крейт Rayon: как замена всего одной строчки .iter() на .par_iter() распараллеливает вычисления по всем ядрам процессора с балансировкой Work-Stealing. - [Трейт-объекты: как работает динамический полиморфизм в Rust](https://eagle2000.space/rust/rust-dyn-traits/llm.md): Разбираемся простыми словами, как устроены трейт-объекты (dyn Trait) в Rust: зачем нужен двойной указатель, как работает таблица методов vtable и какие правила Object Safety нужно знать на практике. - [Управление памятью в Rust: идиома RAII, указатель Box и механизмы Deref Coercion](https://eagle2000.space/rust/rust-raii-box-deref/llm.md): Разбираем устройство памяти в Rust: идиома RAII, авто-очистка через Drop, управляющий указатель Box, 'static ссылки с помощью Box::leak, а также механизмы Deref и Deref Coercion. - [ESP32 + Rust: Быстрый старт с нуля (помигаем светодиодом)](https://eagle2000.space/rust/esp32-rust-blink/llm.md): Практическое руководство по первому запуску Rust на ESP32: настройка тулчейна (нативно и через Docker), генерация проекта и прошивка через espflash. - [Трейты в Rust: от первых шагов до понятного мономорфного кода](https://eagle2000.space/rust/rust-traits/llm.md): Понятный гайд по трейтам в Rust: от базоваго синтаксиса trait и impl до методов по умолчанию, дженериков, синтаксиса impl Trait и нулевой стоимости мономорфизации. - [Операторы let-else и пропагации ошибок в Rust](https://eagle2000.space/rust/rust-flow-control/llm.md): Продвинутый контроль выполнения в Rust: пропагация ошибок и отсутствие значений с помощью оператора ?, безопасное извлечение с let-else и требования к расходящимся блокам. - [Обработка ошибок в Rust: паника, Option, Result и как с ними дружить](https://eagle2000.space/rust/rust-errors-handling/llm.md): Простой и понятный разбор обработки ошибок в Rust. Сравниваем подходы в разных языках, разбираемся с Option и Result, оператором `?` и учимся писать свои ошибки. - [Система типов в Rust: почему компилятор — ваш лучший друг](https://eagle2000.space/rust/rust-type-system/llm.md): Простыми словами о системе типов в Rust. Разбираем статическую и строгую типизацию, а также смотрим, как проектировать логику через типы (Type-Driven Development), чтобы избегать глупых багов. - [Перечисления (Enums) в Rust: от синтаксиса до сопоставления](https://eagle2000.space/rust/rust-enums/llm.md): Разбор перечислений (enums) в языке Rust: варианты с данными, незаселенные типы, паттерн Option и сопоставление с образцом match на реальных примерах. - [Низкоуровневое представление типов в памяти в Rust (Type Layout)](https://eagle2000.space/rust/rust-type-layout/llm.md): Как компилятор Rust располагает типы в памяти: выравнивание, размер, паддинг, оптимизации переупорядочивания полей и атрибуты представления (repr). - [Циклы и диапазоны в Rust: loop, while и for на практике](https://eagle2000.space/rust/rust-loops/llm.md): Пошаговый гайд по циклам в Rust: синтаксис loop, while, for, работа с диапазонами range, итераторами и досрочным выходом break/continue с примерами. - [Условные конструкции и ветвление в Rust](https://eagle2000.space/rust/rust-conditionals/llm.md): Изучите основы ветвления в Rust: блоки кода, выражения if-else, сопоставление шаблонов через if let и цепочки условий let-chains. - [Основы композиции: Правило третей](https://eagle2000.space/photography/composition-basics/llm.md): Разбор базового правила композиции в фотографии: как сбалансировать кадр с помощью сетки третей. - [Магия кривых: Как убрать паразитные оттенки и сделать красивый тон](https://eagle2000.space/photography/curves-color-toning/llm.md): Разбор работы с кривыми (Curves) в графических редакторах: как исправить нежелательный красный отлив на фотографии и настроить правильный баланс цветов. - [Кортежи в Rust (Tuples): объявление, деструктуризация и unit-тип ()](https://eagle2000.space/rust/rust-tuples/llm.md): Подробное руководство по кортежам (tuples) в языке Rust. Инициализация, доступ по индексам, деструктуризация (pattern matching) и особенности пустой сигнатуры (). - [Android 15 и 16 KB страница памяти: что изменится, как подготовить Android и Flutter-приложения](https://eagle2000.space/about-all/android-16k/llm.md): Android 15 ввел поддержку 16KB memory pages. Разбираем, что это значит для нативных и Flutter-приложений, как избежать ошибок Play Console и что обновить. - [Rust async и Tokio: В ожидании будущего](https://eagle2000.space/rust/future-async/llm.md): История экипажа Vectoria — наглядное объяснение синхронного и асинхронного кода, разницы с параллельностью, и практики Tokio: spawn, spawn_blocking, join!, join_all, JoinHandle, Handle, cooperative multitasking. - [Как работает Vec в Rust: устройство, методы, оптимизация](https://eagle2000.space/rust/rust-vec/llm.md): Полное руководство по Vec в Rust: устройство, методы, частые ошибки и оптимизация. Всё это — в форме космического путешествия, где капитан учит робота RUST-Y обращаться с динамическими массивами без паники и перерасхода памяти. - [BufReader в Rust: ускоряем ввод-вывод](https://eagle2000.space/rust/bufreader/llm.md): BufReader в Rust - подробный разбор. Как ускорить чтение файлов, работать с вводом-выводом, использовать BufRead и Read. Примеры построчного чтения и оптимизации IO. - [Поиск данных в файле - Cli хелпер для мастера с помощью Rust](https://eagle2000.space/rust/rust-cli-sh/llm.md): Создаём утилиту командной строки на Rust для поиска устройств в конфигурационном файле по описанию. Пошаговое руководство: чтение аргументов, обработка строк, парсинг блоков, поиск и вывод.