Язык Go - управляющие конструкции
if, for, switch в Go — похожи на C, но с важными отличиями. Разбираем что изменилось и почему это удобнее.
Читать →if, for, switch в Go — похожи на C, но с важными отличиями. Разбираем что изменилось и почему это удобнее.
Читать →Как в Go устроена документация через комментарии, почему имена пакетов такие короткие и зачем bufio.Reader не называется bufio.BufReader.
Читать →Встроенная функция append в Go — как работает, почему возвращает слайс, как добавлять элементы и склеивать слайсы через многоточие.
Читать →Почему в Go не спорят о табах и пробелах, что такое gofmt и как он избавляет вас от головной боли.
Читать →Пакет fmt в Go — Printf, глаголы форматирования, интерфейс Stringer, рекурсия в String() и вариадические функции.
Читать →Hello world, модули, импорты и система типов: разбираем основы Gleam на живых примерах и сравниваем с тем, как это устроено в Go и Java.
Читать →Что такое Gleam, зачем он появился и как смотрится рядом с Go и C#/Java по производительности, простоте, отказоустойчивости и перспективам.
Читать →Int, Float и форматы записи чисел в Gleam: операторы, поведение при делении на ноль, отличия между BEAM и JavaScript, и сравнение с Go и Java.
Читать →Строки в Gleam: UTF-8, многострочные литералы, escape-последовательности, конкатенация и функции стандартной библиотеки.
Читать →Массивы в Go — это значения, а не указатели. Разбираем чем это отличается от C, когда массивы полезны и почему в идиоматичном Go вместо них используют слайсы.
Читать →Пустой идентификатор _ в Go: множественное присваивание, заглушки для неиспользуемых импортов, импорт ради побочного эффекта и проверка реализации интерфейса на этапе компиляции.
Читать →Один цикл вместо трёх: как for в Go заменяет for, while и do-while, что умеет range и где прячутся сюрпризы с Unicode и горутинами.
Читать →Два примитива выделения памяти в Go — new и make — делают разные вещи и применяются к разным типам. Разбираем разницу, составные литералы и принцип полезного нулевого значения.
Читать →Множественные возвращаемые значения, именованные результаты и defer — три особенности функций в Go, которые меняют привычные паттерны написания кода.
Читать →История Go с 2007 по 2026: почему Google решил изобрести новый язык, где применяется, какова производительность и что происходило в каждую эпоху развития.
Читать →Интерфейсы в Go: как они устроены, type switch, type assertion и идиома comma-ok. С примерами из стандартной библиотеки и дополнительными сценариями.
Читать →Экспортировать интерфейс вместо типа, конструкторы возвращающие интерфейс, http.Handler на структуре, числе, канале и функции — как интерфейсы делают код по-настоящему гибким.
Читать →Maps в Go — встроенная хеш-таблица. Разбираем синтаксис, comma ok идиому, безопасное удаление, допустимые типы ключей и неочевидные ситуации.
Читать →Слайсы — основной инструмент работы с последовательностями данных в Go. Разбираем внутреннее устройство, len и cap, срезание, копирование, append и неочевидные ситуации.
Читать →Как устроены двумерные массивы и слайсы в Go, два способа аллокации, когда использовать каждый и неочевидные ситуации при работе с вложенными слайсами.
Читать →Switch в Go без fall-through по умолчанию, с условиями вместо значений, метками для выхода из цикла и type switch для работы с интерфейсами.
Читать →Почему геттер Owner, а не GetOwner, откуда берутся Reader и Writer, и зачем Go сам расставляет точки с запятой.
Читать →Инициализация в Go — константы и iota, переменные с runtime-выражениями, функция init и порядок инициализации пакетов.
Читать →Честный взгляд на рынок IT для программистов: почему джуны больше не нужны, куда делись вакансии и при чём тут нейросети
Читать →Бесплатное приложение с карточками против годовой подписки на онлайн-школу. Математика, которую не показывают на лендингах.
Читать →Или история о том, как мы удобно объясняем себе, почему до сих пор не говорим на английском
Читать →Восьмилетний ребёнок с сертификатом. Гордый пост в инстаграме. Ненависть к английскому на всю жизнь.
Читать →Вот сдам C2 — тогда точно начну.
Читать →Спойлер: виноватых не будет
Читать →Все молодцы. Результата нет.
Читать →История о том, как раннее многоязычие может истощить детский мозг — и почему родители замечают это слишком поздно.
Читать →Обработка ошибок в Go — интерфейс error, кастомные типы ошибок, panic для неустранимых ситуаций и recover для перехвата паники внутри пакета.
Читать →Форматированный вывод в Go — глаголы форматирования, флаги, ширина и точность, явные индексы аргументов и обработка ошибок формата.
Читать →Сканирование в Go — функции Scan, Scanf, Sscan, обработка пробелов и переносов строк, ширина поля, интерфейс Scanner и примеры форматирования.
Читать →Справочник по функциям пакета fmt — Append, Errorf, Fprint, Fprintf, Fprintln, Fscan, Fscanf, Fscanln, Print, Println, Printf, Sprint, Sprintf, Sprintln, Sscan, Sscanf, Sscanln и интерфейсы Formatter, GoStringer, Scanner, Stringer.
Читать →Garbage collector в Go — трёхцветная маркировка, write barrier, GOGC, GOMEMLIMIT, паузы, escape analysis и паттерны которые убивают производительность.
Читать →Паттерн leaky buffer в Go — пул переиспользуемых буферов через буферизованный канал и select с default. Никаких мьютексов, никакого явного учёта.
Читать →Параллелизация в Go — разбивка работы по CPU-ядрам, runtime.NumCPU, GOMAXPROCS и разница между конкурентностью и параллелизмом.
Читать →Канал как first-class value в Go — передача канала внутри структуры запроса, паттерн ответного канала и основа для RPC без единого мьютекса.
Читать →Каналы в Go — создание, буферизованные и небуферизованные, семафор через канал, паттерны управления горутинами и сигнал завершения.
Читать →Утечки горутин, гонки данных, ловушки замыканий, панике в горутине, порядок выполнения — коварные случаи и типичные вопросы на Go-интервью.
Читать →Горутины в Go — что это, как запустить, замыкания в цикле и почему без каналов не обойтись.
Читать →Embedding в Go — как встраивать интерфейсы и структуры, продвижение методов, отличие от наследования и правила разрешения конфликтов имён.
Читать →Память, виртуальная диспетчеризация, default interface methods, абстрактные классы vs интерфейсы, ковариантность — всё, на чём плавают senior-кандидаты.
Читать →Иммутабельность, интернирование, конкатенация в цикле, StringBuilder, Span<char> и потокобезопасность — всё, на чём плавают на собесах.
Читать →Семантика копирования, readonly struct, ref struct, Span<T>, boxing через интерфейс, многопоточность — всё, на чём плавают senior-кандидаты.
Читать →Вопросы уровня Middle про value/reference types, boxing, nullable, checked и приведение — с неправильный ответми и разборами.
Читать →Пошаговое руководство по самостоятельному изучению английского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению бразильского португальского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению испанского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению китайского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению хинди с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению бенгальского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению японского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению немецкого языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению французского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению итальянского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению турецкого языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению индонезийского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →Пошаговое руководство по самостоятельному изучению корейского языка с нуля: эффективные методы, лучшие курсы и реальные сроки. Узнайте, как выйти на разговорный уровень за 6–12 месяцев без курсов и репетиторов.
Читать →