Библиотека задач по Go | тесты, код, задания
5.97K subscribers
480 photos
3 videos
223 links
Задачи и тесты по Go для тренировки и обучения.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/ab1d67c2

Для обратной связи: @proglibrary_feeedback_bot

Наши каналы: https://yangx.top/proglibrary/9197
加入频道
Что означает runtime.GOMAXPROCS(4)

👻 — Это ограничение на количество горутин, которые могут быть выполнены одновременно.
🌚 — Это настройка для распределения горутин по всем доступным процессорам.
⚡️ — Это параметр, который ограничивает количество потоков в программе.
🎉 — Это настройка, определяющая количество ядер процессора, которые Go может использовать.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет код

👻 — 0 0 0 0
🌚 — 0 1 0 1
⚡️ — 0 1 2 3
🎉 — 1 2 3 4

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Зимний режим OFF. Весна начинается с апгрейда.

Если чувствуешь, что за зиму навыки подзастыли — пора их разморозить.

📦 Включили весеннюю распродажу: скидка –35% на курсы до конца марта.

Выбирай направление и выходи из спячки:

— Алгоритмы и структуры данных — чтобы собеседования в Яндекс, Ozon и другие были как уровень easy

— Математика для Data Science — для тех, кто не хочет просто «жать на кнопки», а понимать, что под капотом

— Архитектуры и шаблоны — если хочется мыслить как senior и прокачать системное мышление

— Python, Frontend, основы IT — для тех, кто стартует путь в разработке

👾 Proglib Academy — это как старая добрая 8-битная игра, но вместо врагов — практические задачи и собеседования.

Мы просто упаковали сложное обучение в пиксельную обёртку, чтобы тебе было чуть веселее прокачиваться.

🧠 Отогревай мозги, прокачивай скиллы и хватай свой power-up до конца марта.

👉 Выбрать курс
Что произойдёт, если функция, переданная в sync.Once.Do, запаникует (при условии, что мы восстанавливаемся из ошибки)

👻 — Программа завершится с ошибкой, и функция не будет вызвана снова.
🌚 — Паника будет проигнорирована, и функция будет продолжать выполняться.
⚡️ — Все будущие вызовы функции завершатся с ошибкой.
🎉 — Паника считается завершением функции, и будущие вызовы не вызовут её снова.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что произойдёт, если вы используете goto для перехода из одной функции в другую

👻 — Это приведёт к ошибке компиляции, так как goto работает только внутри одной функции.
🌚 — Это возможно, но только если функции находятся в одном пакете.
⚡️ — Это приводит к стековому переполнению, так как переход между функциями дорогостоящий.
🎉goto разрешает переход между функциями, но лучше использовать обычные вызовы функций.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет код

👻 — Hello, World!
🌚 — Hello...
⚡️ — Завершится с ошибкой
🎉 — Ошибка компиляции

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что произойдёт, если попытаться отправить данные в неинициализированный канал

👻 — Программа продолжит выполнение, и данные будут отправлены через канал. Их можно будет получить позднее.
🌚 — Программа заблокируется, так как канал не инициализирован.
⚡️ — Программа завершится с ошибкой.
🎉 — Канал автоматически инициализируется, и данные будут отправлены.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Почему каждый программист на Go должен иметь свой утренний кофе?

👻 — Когда программист пьёт кофе, его производительность увеличивается, как если бы он увеличил GOMAXPROCS с 1 до 4
🌚 — Кофе улучшает синхронизацию между мозгом и клавишами, чтобы не было гонок за ресурсами, а код становится без deadlock.
⚡️ — Без кофе программист становится как неинициализированный канал — он может только блокировать выполнение.
🎉 — Без кофе код не компилируется.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что происходит, если программа получает сигнал на завершение работы, а в программе используется time.Sleep()

👻 — Все горутины немедленно завершают выполнение.
🌚 — Сигнал не обрабатывается вообще.
⚡️ — Горутина «проснётся» и начнёт завершение работы.
🎉 — Происходит паника.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Результат работы кода

👻 — [1,2,3]
🌚 — [0,0,0]
⚡️ — Ничего
🎉 — nil

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что такое идемпотентность в контексте REST API

👻 — Когда повторные запросы изменяют состояние системы
🌚 — Когда запросы могут быть выполнены несколько раз с одинаковым результатом
⚡️ — Когда все запросы требуют аутентификации
🎉 — Когда запросы возвращают ошибку при повторении

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
✏️ Готовы ли вы к собеседованию

Если вы работаете с языком Go и уверены в своих знаниях — самое время это проверить.

Это мини-экзамен перед собеседованием: синтаксис, тонкости работы с горутинами, ошибки, которые делают даже опытные разработчики.

➡️ Проверить свои знания

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что означает «A» в ACID

👻 — Атомарность: гарантирует, что транзакция выполнится либо полностью, либо не выполнится вовсе.
🌚 — Абстракция: гарантирует, что данные могут быть абстрагированы для разных типов пользователей.
⚡️ — Аутентификация: обеспечивает проверку прав доступа пользователя к данным.
🎉 — Автономность: гарантирует независимость операций в разных системах.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет код

👻 — 5, 10
🌚 — 10, 10
⚡️ — 5, 5
🎉 — 10, 5

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что означает «C» в ACID

👻 — Контроль: гарантирует, что все изменения в базе данных могут быть отслежены и контролируемы.
🌚 — Конфиденциальность: обеспечивает защиту данных от несанкционированного доступа.
⚡️ — Согласованность: гарантирует, что транзакция переводит базу данных из одного согласованного состояния в другое, соблюдая все ограничения и правила.
🎉 — Конкурентоспособность: обеспечивает возможность выполнения нескольких транзакций одновременно без конфликтов.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Какой статус HTTP должен быть возвращен при успешном создании ресурса в REST API

👻 — 200
🌚 — 201
⚡️ — 204
🎉 — 400

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
Что означает «I» в ACID

👻 — Интерпретируемость: позволяет транзакциям быть легко читаемыми и понятными для системы.
🌚 — Иммутабельность: гарантирует, что записанные данные нельзя изменить или удалить.
⚡️ — Изолированность: обеспечивает независимость выполнения транзакций, будто каждая из них выполняется отдельно.
🎉 — Инициативность: позволяет базе данных предсказывать и оптимизировать будущие запросы.

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM
🤦‍♂️ Я забил на споры о микросервисах с архитекторами, и вот почему

С момента появления концепции микросервисов прошло уже несколько лет. За это время появилось много споров о её эффективности.

Зачем спорить о микросервисах, если можно просто посмотреть на факты? Давайте разберёмся, что действительно важно

➡️ Читать статью

💬 Как вы относитесь к микросервисам? Использовали ли вы их в своих проектах? Ждём ваши комментарии 👇

🐸Библиотека devops'a
Please open Telegram to view this post
VIEW IN TELEGRAM
Что произойдёт, если не вызвать cancel() у context

👻 — Ничего страшного, Go сам всё почистит
🌚 — Возникнет panic
⚡️ — Будет утечка памяти и/или зависшая горутина
🎉 — Контекст завершится через timeout

🐸Библиотека задач по Go
Please open Telegram to view this post
VIEW IN TELEGRAM