Архив рубрики: Go

Go is a statically typed, compiled programming language designed at Google by Robert Griesemer, Rob Pike, and Ken Thompson. Go is syntactically similar to C, but with the added benefits of memory safety, garbage collection, structural typing, and CSP-style concurrency.

Golang: указатели — подробный разбор

20 апреля 2019
 

 Я уже когда-то добавлял пост про указатели в C — C: указатели — подробный разбор, но было это достаточно давно, да и Си всё-таки не совсем Go, хотя в плане указателей разницы нет. Тем не менее — рассмотрим указатели в отдельном посте. Что такое указатель? Кратко, указатель — это переменная, которая хранит адрес памяти другой… Читать далее »

Go: проверка списка публичных репозиториев в Github и уведомления в Slack. Сравнение списков в Go. Первый опыт с Golang.

13 апреля 2019
 

 Задача — написать утилиту, которая будет запускаться по крону из Jenkins и проверять список публичных репозиториев организации в Github. Создание Docker-образа и Jenkins-джобы — в посте Jenkins: проверка публичных репозиториев Github-организации. Затем она должна сравнивать полученный список со списком разрешённых, и если списки не совпадают — слать алерт в Slack. Идея состоит в том, что… Читать далее »

Golang: Go in Practice — заметки на полях, часть 2 — CLI приложение на Go

14 февраля 2019
 

 Предыдущая часть — Golang: Go in Practice – заметки на полях, часть 1 – введение. Стандартная библиотека Go включает в себя пакеты для создания приложения с поддержкой опций командной строки. В отличии от стандартных, принятых в Linux/BSD, стилей — в пакете из стандартной библиотеке Go используются одинарные или двойные дефисы как взаимозаменяемые. Т.е. тут не… Читать далее »

Golang: unrecognized import path «math/bits» (import path does not begin with hostname)

12 февраля 2019
 

 При импорте пакета — возникает ошибка вида «unrecognized import path «math/bits» (import path does not begin with hostname)«. Гуглим, находим обсуждение тут>>>, радуемся, что в репозиториях Debian 9 последняя доступная версия 1.7. Проверяем версию Go: Выполняем установку вручную. Удаляем установленный пакет: Со страницы загрузок — загружаем архив с новой версией, распаковываем его: Перемещаем каталог go… Читать далее »

Golang: Go in Practice — заметки на полях, часть 1 — введение

4 февраля 2019
 

 Ещё весной начал учить Go, но потом перешёл на новую работу, забот и без того хватало, и Go забросил. Тем не менее — встречается он сейчас много где (Docker, Prometheus, Terraform etc), а потому знать его желательно. Да и вообще — иногда надо поучить что-то новое, ибо становится скучно. Попробую вести «конспекты» книги Go in Practice … Читать далее »

Golang: struct — структуры в примерах

28 ноября 2018
 

 Структура — это коллекция типизированных полей, т.е. у кождого поля в структуре есть свой тип данных. Создать структуру можно следующим образом: type Example struct { FirstField string SecondField string ThirdField int } Тут у структуры с именем Example есть коллекция полей — поля FirstField и SecondField типа string, и поле ThirdField типа integer. Если различные поля имеют одинаковый… Читать далее »