ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

Урок 3. Блоки {}, escape analysis и defer в Go: гид от Майкла Скотта.

Автор: Rust & Beyond

Загружено: 2026-03-05

Просмотров: 52

Описание: Ваш лайк и подписка — это сигнал, что нам стоит продолжать. А если хотите внести вклад в развитие проекта, поддержите нас на Boosty: https://boosty.to/rustibeyond
Добро пожаловать на Урок 3 по Golang! Сегодня разбираем область видимости — одну из ключевых концепций, которая отличает Go от Rust и других языков.

О чём этот урок?
Мы проведём параллели с сериалом The Office, чтобы на живых примерах показать:
как работают лексические блоки {} и чем они отличаются от Rust‑правил владения;
что такое escape analysis и как компилятор решает, где хранить переменную — в стеке или в куче;
почему в Go нет lifetimes, но есть сборщик мусора (GC) — и где это опасно;
как работает defer и чем он отличается от RAII в Rust;
какие ловушки ждут при возврате ссылок и запуске горутин в циклах.

Что вы узнаете?

Как Go определяет видимость переменных внутри блоков {} и почему это не то же самое, что borrow checker в Rust.
Что такое shadowing и как случайно не создать новую переменную вместо изменения старой.
Как проверить, что переменная «сбежала» в кучу, с помощью флага -gcflags="-m".
Три нюанса defer: LIFO‑порядок, раннее вычисление аргументов и работа при panic.
Почему возврат указателя на локальную переменную в Go работает, а в Rust — нет.
Как избежать race conditions при работе с горутинами и замыканиями.

Примеры из видео:

Сравнение кода на Go и Rust: где компилятор защищает от ошибок, а где доверяет разработчику.
Практический пример «База слухов Dunder Mifflin» с defer, recover() и escape analysis.
Разбор типичных багов: захват переменной цикла в замыкании, висячие ссылки, лишние аллокации.

Домашнее задание (3 уровня сложности):

«Джим»: написать функцию createMemo, скомпилировать с -gcflags="-m" и найти подтверждение, что переменная ушла в кучу.

«Дуайт»: создать функцию withResource с defer, panic и восстановлением через recover().

«Майкл» (бонус): запустить 5 горутин в цикле — сначала с багом, затем правильно, используя sync.WaitGroup.

golang, go, область видимости, escape analysis, defer, сборщик мусора, GC, Rust vs Go, The Office, программирование, уроки go, golang tutorial, go для начинающих, go advanced, go best practices

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
Урок 3. Блоки {}, escape analysis и defer в Go: гид от Майкла Скотта.

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

Еженедельный Нейро-Стрим ● Neuro-Cartel Club  ● Нейросети и генерация

Еженедельный Нейро-Стрим ● Neuro-Cartel Club ● Нейросети и генерация

Урок 5  Конкурентность в Go «Почему Дуайт может делать три дела одновременно, а Майкл — нет»

Урок 5 Конкурентность в Go «Почему Дуайт может делать три дела одновременно, а Майкл — нет»

Реакционная система: Школа как амёба

Реакционная система: Школа как амёба

XCOM 2 Ultimate мод с Майкером 25 часть

XCOM 2 Ultimate мод с Майкером 25 часть

Курс по языку программирования RUST

Курс по языку программирования RUST

Rust + The Office Как процессор «видит» ваш код

Rust + The Office Как процессор «видит» ваш код

Как вредит смартфону беспроводная зарядка? + НОВОСТИ!

Как вредит смартфону беспроводная зарядка? + НОВОСТИ!

Панспермия — жизнь действительно прилетела из космоса? | Документальный фильм

Панспермия — жизнь действительно прилетела из космоса? | Документальный фильм

Кто хочет стать отличником? (СТРИМ)

Кто хочет стать отличником? (СТРИМ)

Урок 1 Указатели и Память — Жизнь без Borrow Checker

Урок 1 Указатели и Память — Жизнь без Borrow Checker

Урок 24. Лучшие практики Rust пишем безопасный и производительный код.

Урок 24. Лучшие практики Rust пишем безопасный и производительный код.

Как Microsoft похоронила Linux — и никто этого не заметил

Как Microsoft похоронила Linux — и никто этого не заметил

Представляем Digital Optimus: смелое новое видение Илона Маска в области искусственного общего ин...

Представляем Digital Optimus: смелое новое видение Илона Маска в области искусственного общего ин...

Почти Ведьмак 🧙‍♂️ Two Worlds II [PC 2010] #2

Почти Ведьмак 🧙‍♂️ Two Worlds II [PC 2010] #2

"Antek, świrze". Aż cały PiS zamilkł po słowach Sikorskiego

Финальный проект часть 1

Финальный проект часть 1

Урок 4. Структуры и методы в Go | Как создать идеального сотрудника Dunder Mifflin (The Office × Go)

Урок 4. Структуры и методы в Go | Как создать идеального сотрудника Dunder Mifflin (The Office × Go)

Claude Code 2.0: Масштабное обновление! (Изменит правила игры)

Claude Code 2.0: Масштабное обновление! (Изменит правила игры)

Урок 25. Tokio — асинхронность в Dunder Mifflin.

Урок 25. Tokio — асинхронность в Dunder Mifflin.

Amerykański B-52 zrobił coś niewiarygodnego... Iran całkowicie zmieciony!

Amerykański B-52 zrobił coś niewiarygodnego... Iran całkowicie zmieciony!

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]