Библиотека Go-разработчика | Golang
23.3K subscribers
2.07K photos
40 videos
87 files
4.43K links
Все самое полезное для Go-разработчика в одном канале.

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

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

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

РКН: https://gosuslugi.ru/snet/67a4a8c2468
Download Telegram
Планировщик, который крадет задачи в Go - одна из парадигм планирования в многопоточных вычислениях.

Планирование задач является важной и актуальной задачей у разработчиков. Разбираемся подробнее с work-stealing планировщиком в Go (оригинал статьи).
Статья другого автора на эту же тему.
В последний день уходящего года хочется подвести некоторые итоги и наметить ориентиры на следующий год. Давайте ознакомимся с материалами статьи, в которой перечислены причины продолжения изучения Go и в 2020 году, и пойдем в новый год со спокойной душой! 🤔🎄
Вы наверняка уже слышали о Hugo, по крайней мере на канале он упоминался. Так вот, Hugo - это очень гибкий и простой в использовании генератор статических сайтов, написанный на Go. В данной статье приводится своего рода история создания и практика использования Hugo, а также отмечены дальнейшие планы развития.
У языка Go множество сфер применения, в том числе он отлично подходит для автоматизации различных задач. Более того, в сфере информационной безопасности ранее активно использовали Python, а теперь его спокойно заменяет Go. Поэтому сегодня рассмотрим книгу, в которой описаны этапы проведения тестирования на проникновение с уклоном в программирование на Go.
Задумывались когда-нибудь о размере скомпилированного кода? В некоторых задачах это более чем критично. Автор статьи вот задумался 🤔
В статье приводится перевод материала о безопасном использовании пакета unsafe (предоставляет средства низкоуровневого доступа к памяти).
Там сегодня на Coursera курсы бесплатные стартуют по Go от МФТИ, MAIL.RU GROUP и ФРОО: «Разработка веб-сервисов на Go - основы языка» и «Разработка веб-сервисов на Golang, часть 2» . Присоединяйтесь, т.к. 2 часть не только для новичков! 😎 (не реклама)
Отладка приложения

В связи с ростом популярности микросервисов и контейнеризации у разработчика может возникнуть задача отладки Go приложения в Kubernetes из IDE. Давайте ознакомимся с материалами статьи, в которой автор поэтапно описывает все процессы.
Полезная утилита Govalidate позволяет на лету проверить:
- установку и версию Go;
- правильно ли настроен PATH;
- установлены ли зависимости CGO;
- поддержку плагина для доступных редакторов.

https://github.com/rakyll/govalidate
Vim – довольно противоречивый текстовый редактор. Если удалось закрыть его с первого раза, то он определенно для вас. Vim нельзя просто запустить и начать работать – требуется определённая подготовка. Зато стоит раз испытать его в деле и поражаешься тому, как можно было без него обходиться. Для работы с определенным языком программирования необходимо устанавливать плагины, и Go здесь не является исключением:

- govim (написан на Go);
- vim-go (написан на VimScript).
Оптимизация использования ресурсов, сокращение времени обслуживания запросов, горизонтальное масштабирование кластера, а также обеспечение отказоустойчивости (резервирования) – все это про балансировку нагрузки.

Сегодня ознакомимся с материалами статьи, в которой описываются этапы создания простого балансировщика нагрузки на Go.
Если вы используете архитектуру микросервисов, вы однозначно хотите попробовать или уже попробовали фреймворк gRPC

Хоть и на английском, но здесь доступно рассказывают о gRPC и о том, как его использовать с Protocol Buffer для разработки приложений на Go (там и Java немного зацепили, без обид).
В своём репозитории автор представляет наиболее интересные по его мнению и часто задаваемые практические вопросы на собеседованиях на позицию Go-разработчика. Упор сделан именно на эффективность алгоритма программы и структуры данных.

https://github.com/hoanhan101/algo/
Очередная практическая полезность от 4gophers. Сегодня ознакомимся с переведенной статьей под названием «Пишем свой BitTorrent клиент на Go»: https://4gophers.ru/articles/bittorrent/
TinyGo – это проект, который позволяет создавать приложения на языке Go для микроконтроллеров и современных веб-браузеров путем создания нового компилятора на основе LLVM.

Вы можете компилировать и запускать программы TinyGo на нескольких различных платах микроконтроллеров, таких как BBC micro: bit и Arduino Uno.

TinyGo также может быть использован для создания кода WebAssembly (WASM).

https://tinygo.org
https://github.com/tinygo-org/tinygo
В данном плейлисте вы найдёте ответы на многие вопросы, связанные с написанием REST API на Go: https://m.youtube.com/playlist?list=PLehOyJfJkFkJ5m37b4oWh783yzVlHdnUH