Size: a a a

Библиотека Go разработчика

2020 April 02
Библиотека Go разработчика
​​Состояние гонки в Golang

Состояние гонки (Race conditions) или гонка даных (Data race) является ошибкой проектирования многопоточной системы или приложения, при которой работа системы или приложения зависит от того, в каком порядке выполняются части кода. Подобная ошибка может привести к ошибочным и загадочным сбоям, чем благополучно пользуются злоумышленники для получения доступа к системе или приложению. Несмотря на то, что механизмы конкурентности Go упрощают написание чистого конкурентного кода, они не предотвращают состояние гонки. В данном случае требуется осторожность, усердие и тестирование, а инструменты автоматизации поиска могут помочь.

Начиная с версии 1.1 Go включает в себя детектор гонки, инструмент для определения состояний гонки в коде Go. В настоящее время он доступен для систем Linux, OS X и Windows с 64-разрядными процессорами x86.

О гонках данных простыми словами можно почитать здесь. Учимся использовать детектор гонки данных с помощью данных статей (1 и 2).
источник
2020 April 03
Библиотека Go разработчика
​​Давайте уже добьем тему многопоточности и всего, что с ней связано, и рассмотрим следующую серию статей на русском:

Race condition и data race
Deadlocks, livelocks и starvation
Примитивы синхронизации в go
Безопасная работа с каналами в go
источник
Библиотека Go разработчика
В мультифункциональной команде, создающей приложение под Kubernetes, разработчику стоит знать основы Kubernetes. Возможности и ограничения Кубернетес диктуют архитектуру приложения. К тому же разработчикам иногда приходится самим деплоить приложение, настраивать мониторинг, вплоть до создания окружений.
Понимание того, как эксплуатируется приложение, превращает разработчика в инженера.

7 апреля стартует цикл из 19 бесплатных вебинаров от Слёрма по основам Kubernetes. Для прохождения достаточно знать Linux.
Вебинары идут 1-2 раза в неделю в 20:00 по Москве.

Регистрация: https://proglib.io/w/4227fda6
источник
Библиотека Go разработчика
Репозиторий содержит коллекцию из 100+ популярных проблем (задач) с портала LeetCode, решенных на языке Go. Каждая задача включает соответствующую ссылку с условием задания и решение, покрытое тестами.

https://proglib.io/w/75bf65eb
источник
2020 April 04
Библиотека Go разработчика
Свежие разборы проектов на Go с канала «Good reviewer - Bad reviewer» (CASPaxos, riot + typo, molecule) и выпуски подкаста Generic Talks о языке Go и сопутствующих темах от этих же ребят:

Go 1.14 и что он нам несёт
Таймеры, почему языки такие, GopherСon
Live show про GolangCI-Lint, настройку линтеров на CI, дизайн API под батчинг по дефолту, кеширование и другие вещи
Что же там происходит в CPU
Zig, LLVM и как всегда Go
источник
2020 April 05
Библиотека Go разработчика
Я смотрю онлайн-курс на платформе
Анонимный опрос
28%
Coursera
11%
Stepik
1%
Skillbox
0%
Skillfactory
6%
OTUS
0%
Нетология
1%
Udacity
13%
Udemy
9%
Другая платформа
30%
Не смотрю курсы
Проголосовало: 656
источник
Библиотека Go разработчика
Какие платформы мы не упомянули, но которые вы используете?
источник
Библиотека Go разработчика
Сборник лучших практик, которые помогут вам лучше понять приоритеты безопасности при разработке на Golang.
источник
2020 April 06
Библиотека Go разработчика
Учимся создавать приложения с помощью Golang и нереляционной СУБД MongoDB на основе базовых операций CRUD, API-интерфейсов RESTful и GraphQL.

https://proglib.io/w/73ce2e11
источник
Библиотека Go разработчика
Почему вы не смотрите курсы? Что вам в них не нравится?
источник
2020 April 07
Библиотека Go разработчика
Логирование в Golang: выбор системы и ее использование

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

https://proglib.io/w/273f74dd
источник
2020 April 08
Библиотека Go разработчика
Golang с точки зрения программиста на C

Автор статьи делится мнением, что чем больше вы экспериментируете с Go, тем меньше он будет ощущаться как компилируемый язык (C или C++), и тем больше он будет ощущаться как интерпретируемый язык (Python или Ruby).

https://proglib.io/w/77908202
источник
2020 April 09
Библиотека Go разработчика
Пишем простую командную оболочку на Go

В статье описан процесс разработки простой оболочки для UNIX-подобных операционных систем на языке Go, и она займет всего около 60 строк кода.

https://proglib.io/w/80f1e402
источник
2020 April 10
Библиотека Go разработчика
​​Помните пост о TinyGo? Тут подробно описан процесс запуска Golang в браузере с помощью WebAssembly и TinyGo в рамках реализации игры в шахматы: https://proglib.io/w/aafc6df4
источник
2020 April 11
Библиотека Go разработчика
Production Go
Build modern, production-ready systems in Go (2018)

Автор(ы): Herman Schaaf и Shawn Smith

Целью книги является предоставление знаний для написания готового к работе сервиса на Go. Это означает не только написание первоначальной реализации, но и надежное развертывание, а также мониторинг ее производительности.

Книга предназначена для аудитории, которая разбирается в основных темах информатики и практике разработки программного обеспечения. Она охватывает все важные аспекты работы production-системы, включая такие сложные темы, как профилирование использования памяти Go-программой, развертывание и мониторинг приложений, написанных на Go, написание идиоматических тестов и многое другое.
источник
2020 April 12
Библиотека Go разработчика
Качественная подборка статей о тестировании приложений на языке Go, в которой вы увидите не какие-то абстрактные вещи и доводы, что тестирование — это полезно, а реальные примеры написания тестов под прикладные задачи.

https://proglib.io/w/84df9c82
источник
2020 April 13
Библиотека Go разработчика
Статическая компиляция программ на Go

Go создает статические двоичные файлы по умолчанию, если только вы не используете cgo для вызова кода C, в этом случае он создаст динамически связанную библиотеку. Оказывается, что использование cgo является более распространенным явлением, чем предполагают многие, поскольку пакеты os/user и net по умолчанию используют cgo, поэтому при импорте одного (прямого или косвенного) получится нестатический двоичный файл.

https://proglib.io/w/6907fb2b
источник
2020 April 14
Библиотека Go разработчика
Репозиторий, в котором собраны имплементации и демонстрации самых популярных алгоритмов на языке Go: https://proglib.io/w/d2c49e71
источник
Библиотека Go разработчика
Во время самоизоляции многие работодатели наконец-то признали, что удалённые работники вполне эффективны. Пути назад нет — бизнес идёт туда, где ему выгодно, и скоро всё меньше рабочих мест будут требовать физического присутствия работника в офисе.

Мы предлагаем встретить эти перемены во всеоружии. С 14 по 16 апреля GeekBrains проводит серию бесплатных вебинаров «Все об удалёнке: как работать эффективно и зарабатывать»

Рассмотрим весь путь фрилансера: от принятия решения и выбора биржи, до навыков удалённого делегирования задач и организации работы команды. Пройдёмся по наиболее часто задаваемым вопросам, осветим неочевидные аспекты и проблемы работы из дома.

Переходите по ссылке, чтобы узнать больше и записаться: https://proglib.io/w/b6edc487
источник
Библиотека Go разработчика
Практическая статья о том, как справиться с разношерстностью микросервисов на Go. Пишет Алексей Партилов — техлид команды web-разработки в компании Lamoda.

https://proglib.io/w/eeeccdf0
источник