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

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

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

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

РКН: https://gosuslugi.ru/snet/67a4a8c2468
Download Telegram
Про оптимизацию компоновщика, поддержку Apple M1 и новый пакет embed уже все знают. Давайте разберёмся с остальными глобальными изменениями Go 1.16:

✔️ Новые системы модулей. По умолчанию теперь требуется использование новой системы модулей с интегрированной поддержкой версионирования, которая пришла на смену средствам управления зависимостями на основе GOPATH. Переменная окружения GO111MODULE теперь выставлена в значение "on" по умолчанию и режим модулей используется независимо от присутствия файла go.mod в рабочем или родительском каталоге. В новом режиме сборочные команды, такие как "go build" и "go test", не изменяют содержимое go.mod и go.sum, а команда "go install" обрабатывает аргументы с указанием версии ("go install example.com/cmd@v1.0.0"). Для возвращения старого поведение следует изменить GO111MODULE на значение "auto".
✔️ Добавлена поддержка inline-развёртывания. В компиляторе добавлена поддержка inline-развёртывания функций с сокращённым определением циклов "for", методом значений (method values) и конструкциями 'type switch'.
✔️Прекращена поддержка режима компиляции x87 (GO386=387). Поддержка процессоров без инструкций SSE2 теперь доступна через программный режим "GO386=softfloat".

Источник
Авторы бесплатного курса по созданию веб-приложения на Go дополнили его следующими материалами по работе с MySQL:

- Установка MySQL для веб-приложения на Golang
- Установка MySQL драйвера для работы в Golang
- Создание пула подключений к MySQL в Go
- Проектирование модели в Go
- Выполнение SQL запросов в Golang
- Выводим запись из базы данных по её ID из URL
- Вывод последних записей из базы данных
- SQL Транзакции через Golang
«Отладка в два раза сложнее, чем написание кода с самого начала. Следовательно, если вы напишете код настолько умно, насколько это возможно, вы по определению недостаточно умны, чтобы его отлаживать», —

отмечает Брайан Керниган, канадский учёный в области компьютерных технологий, соавтор руководства «Язык программирования Си». Соавтор языка AWK. В соавторстве с Робом Пайком написал также известные книги «Практика программирования» и «UNIX. Программное окружение». Согласны с ним?
Один из способов ускорить Python заключается в том, чтобы переписать все на другом языке переписать медленный код на другом языке и вызвать этот код из Python. В качестве другого языка автором статьи был выбран Go. В своём материале Kevin Chung описал практическую сторону линковки Go к программе на языке Python, а также описал достоинства и недостатки такого подхода.

https://proglib.io/w/596032a0
Крупнейший сервис Телеграм-аналитики TGStat проводит исследование аудитории Телеграма. Опрос анонимный, занимает не больше пяти-семи минут, почти везде просто клики по вариантам ответа. В результате статистика по каналам станет точнее, а жизнь — проще. Давайте поможем: https://tgstat.ru/research
Elasticsearch в Go: руководство разработчика

Go имеет официальную библиотеку Elasticsearch, которая упрощает разработчикам Go программную работу с данными, хранящимися в Elasticsearch. В статье описан процесс создания простого приложения, которое позволяет добавлять данные и выполнять поиск в Elasticsearch с помощью Go.

https://proglib.io/w/e976179e
Продолжаем конкурс на самый интересный контент в телеграм-каналах Proglib!
Призовой фонд — 280 тысяч рублей.
Срок окончания конкурса — 15 мая

Автор лучшего поста в отдельно взятом канале получает 20 тысяч рублей.
Мы упростили конкурс — теперь вам достаточно найти интересную и актуальную статью 2020-2021 года, написать к ней небольшой анонс (до 700 знаков) и прислать нам, тем не менее ваши идеи по другим форматам только добавляют + в общий зачет. Авторство можем указать по вашему желанию. В канале @progbook предлагаем отправлять рецензии на новые книги и старые актуальные.

Полный список каналов:
https://t.me/progbook
https://t.me/proglibrary
https://t.me/pyproglib
https://t.me/frontendproglib
https://t.me/javaproglib
https://t.me/dsproglib
https://t.me/phpproglib
https://t.me/cppproglib
https://t.me/mobileproglib
https://t.me/goproglib
https://t.me/csharpproglib
https://t.me/devopsslib
https://t.me/testerlib
https://t.me/hackproglib

Все посты будут с лайками и дизлайками и хэштегом #proglib_contest. Ссылки мы будем прогонять через наш сокращатель, будут браться в расчет лайки, дизлайки, охваты, клики по ссылкам. Чем больше лайков/охватов/кликов по ссылкам в публикации, тем больше шансов стать победителем в конкурсе. Присылайте посты боту @proglib_contest_bot с указанием, на какой канал идет публикация. Юридическая информация здесь.
#proglib_contest

GO LEARN GO

Модный популярный язык? Быстрый и эффективный? От Google? — Встречайте Go!

GO BY EXAMPLE
Примеры кода с пояснениями — от Hello World до HTTP-сервера.

GO BY VIDEO
Пошаговое погружение в переменные, структуры данных и основные библиотеки Go.

GO BY TOUR
Интерактивный тур, где ты будешь узнавать теорию и сразу же писать код.

GO BY BOOK
Книга, которая не только отвечает на твои вопросы про Go, но и задает свои (если ты не знаешь ответы, то сможешь посмотреть их там же).

Мало? GO DOCUMENTATION для тебя. А еще это open-source язык. Все есть в гите. Заходи, смотри, разбирайся, предлагай улучшения.

GO GO GO!!!
Go Programming Language for Dummies.pdf
12.3 MB
Go Programming Language For Dummies (2021)

Автор: Wei-Meng Lee

Книга охватывает многие аспекты Go — от базового синтаксиса и написания функций до организации данных, создания пакетов и взаимодействия с API. 

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

Вы узнаете, как работает Go и начнёте писать программы / модули, установите и внедрите самые мощные сторонние пакеты Go, научитесь использовать Go вместе с веб-сервисами и базами данных MySQL, организовывать свою кодовую базу, использовать Go для структурирования данных и многое другое. 

С помощью книги вы можете присоединиться к растущему числу разработчиков, использующих Go для создания решений 21 века.
Как освоить язык Java с нуля и овладеть техниками белого хакинга? Присоединяйся к онлайн-интенсиву Skillbox, который пройдёт с 10 по 12 мая в 19:00 по московскому времени!

Успей зарегистрироваться: 👉 https://clc.am/GZrgbg

Что тебя ждёт?

🖥 Мы установим среду разработки и рассмотрим, что представляет собой программирование на самом деле.
💼 Практические занятия, на которых ты сам напишешь программу для мониторинга рабочего стола.
💬 Общение с опытным программистом, который уже более 15 лет работает в сфере Java и веб-разработки, — Даниилом Пилипенко. Он ответит на твои вопросы о профессии разработчика и поделится полезными лайфхаками.

Сделай первый шаг к перспективной IT-профессии!
Учимся работать с пакетом present, предназначенным для составления презентаций. У него есть свои ограничения, такие как формат слайдов и иногда сложное позиционирование изображений, но в целом это полезный пакет, которого может быть достаточно для быстрого предоставления информации членам своей команды, владельцам продукта или руководству. Они же так это любят 😎.

https://proglib.io/w/e14e0cd0
Если вы любите математику и Go, вам — сюда. В статье рассматриваются решения задач с помощью моделирования методом Монте-Карло, а также практика использования метода Монте-Карло для поиска ответов на определенные проблемы.
Небольшая шпаргалка по модулям Go: https://proglib.io/w/6febe42c
Результаты опроса разработчиков Go в 2020 году:

📊 Сокращённая версия, в которой упор сделан на более конкретные вопросы, касающиеся разработки в облаке. Читать
📊 Полная версия. Читать
#proglib_contest

Go Embed

С релизом Go-1.16 среди прочих улучшений мы получили пакет под названием embed. В этом посте перечислены различные способы использования Go Embed для ускоренного создания приложений.

https://proglib.io/w/18787dc5
#news

Выпущены версии Go 1.16.4 и 1.15.12, которые включили исправление в соответствии с новой политикой безопасности.

Новые версии устраняют проблему, из-за которой ReadRequest и ReadResponse в net/http могут вызвать неустранимую панику при чтении очень большого заголовка (более 7 МБ на 64-разрядных архитектурах или более 4 МБ на 32-разрядных).

https://proglib.io/w/5009443f
Шиджу Варгезе (архитектор консалтинговых решений, автор двух книг и наставник по языку Go в Индии) делится шестилетним опытом и некоторыми рекомендациями.

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

https://proglib.io/w/9be53152