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

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

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

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

РКН: https://gosuslugi.ru/snet/67a4a8c2468
Download Telegram
Очередная практическая полезность от 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
Тема WebAssembly продолжает набирать обороты. Мы это явно видим, т.к. этот инструмент постоянно на слуху и появляются средства для упрощения работы с ним.

Встречайте экспериментальную библиотеку Vugu, предназначенную для создания веб-интерфейсов на Go + WebAssembly, которая работает в вашем браузере уже сегодня: https://github.com/vugu/vugu
Разбираемся с разработкой генератора идентификаторов на Go

В статье речь идет не о простых идентификаторах пользователя, а об Identicon – это визуальное представление хеш-значения, служащее для идентификации пользователя компьютерной системы в виде аватара, защищая его конфиденциальность.
#MoscowTravelHack

Такого ещё не было! Первый в России хакатон по созданию цифровых решений для туризма Moscow Travel Hack. Придумай новые продукты для путешественников и жителей города. Задачи на хакатон предложили 10 партнёров: «МегаФон», Facebook, PANORAMA 360, MTS Startup Hub, «Аэроэкспресс», Пушкинский музей, «Царицыно», Discover Moscow, «Город открытий» и Russpass.

В каждый трек пройдет по 5 команд. Среди призов — не только 100 000 рублей, но и возможность реализовать проект с партнёрами после хакатона. Придумывать решение заранее не обязательно! Подать заявку можно индивидуально или командой.

Успей до 28 января!
Подробности на сайте travelhack.moscow
Замечательный теоретико-практический тур по языку Go

Последовательно, от простого к сложному, и все это присыпано практикой. В общем все как вы любите: https://tour.golang.org/list
Теоретическая статья о том, как с минимальными изменениями исходных кодов проекта реализовать кэширование часто запрашиваемых данных.

Cинхронизация кэша через Redis для сервиса на Go: https://habr.com/ru/post/482704/
Автоматическая проверка безопасности исходных кодов Go-приложений

Инструмент Gosec позволяет проверять исходные коды ваших проектов на такие ошибки конфигурации или уязвимости, как: жестко закодированные учетные данные, привязка ко всем интерфейсам, построение SQL-запроса с использованием формата строки / объединения строк и многое другое. Инструмент позволяет гибко настраивать параметры запуска, автоматически выдавать номер и описание CWE (Common Weakness Enumeration).

https://github.com/securego/gosec
https://securego.io/
Гайд по использованию веб-сокетов в Go, включая лучшие инструменты и пошаговое руководство

Взаимодействие клиента и сервера без обновления страницы – это то, что мы считаем само собой разумеющимся. Но в прошлом реализация такого функционала была настоящей проблемой для разработчиков, которые прошли долгий путь от длинных HTTP-опросов и AJAX и наконец нашли решение для создания приложений реального времени: https://yalantis.com/blog/how-to-build-websockets-in-go/
Вы покрываете код тестами, или вовсе используете подход TDD (разработка через тестирование)? В любом случае, познакомьтесь с качественным материалом по данной теме: https://medium.com/@gonzalo.molina1996/tdd-with-table-driven-test-in-go-3b1e6dc25c0b
Опыт разработки: почему мы пишем инфраструктуру машинного обучения на Go, а не на Python

В статье вы ознакомитесь с мнением практикующего разработчика Cortex о преимуществах применения Go для инфраструктурных решений в ML-проектах и о том, как два языка могут дополнять друг друга.

https://proglib.io/sh/Wpcxn1lNsz
IDE в браузере уже сегодня

Запускайте свои Go приложения прямо в браузере с помощью Go Playground, работающего на основе React и Monaco editor (использует движок VS Code). Поддерживается автодополнение кода, загрузка и сохранение файлов, WebAssembly и темная тема 🤟🌚 .

https://github.com/x1unix/go-playground

Специально, для тех, кто ищет работу в сфере АйТи, был создан канал, где публикуют только качественные вакансии.

Больше не нужно бесконечно сёрфить в надежде найти что-то годное...всё уже собрано здесь!

Ссылка на канал с отборными вакансиями: https://t.me/joinchat/AAAAAFZEHKueTRHhpUEoww

Го сам и захвати друга 😉
Возникала ли у вас задача, связанная с разработкой тестов для модуля, который взаимодействует с базой данных и при этом вам не хочется привязывать модуль тестов к настоящей базе данных. В основной поставке Go есть инструмент для таких нужд под названием «FakeDb».

Эмуляция работы базы данных в тестах с помощью FakeDb: https://habr.com/ru/post/485280/
Инлайнинг defer

Эффективным способом справиться с ресурсами, которые должны быть освобождены независимо от того, какой путь функция принимает для возврата, является использование оператора defer. Знакомимся с переводом статьи «Инлайнинг defer» и применяем этот мощный оператор при разработке своих проектов: https://4gophers.ru/articles/defer/
В статье приводится подборка из 10 источников для изучения Go, с упором на онлайн ресурсы: https://www.agiratech.com/learn-go-programming-tutorials/
database-driven-apps-with-go.pdf
582.2 KB
Пожалуй один из самых удачных материалов по работе с базами данных в Go