Необходимость добавить новые элементы к срезу возникает довольно часто. В языке программирования Go для этого существует встроенная функция append.
Необходимость добавить новые элементы к срезу возникает довольно часто. В языке программирования Go для этого существует встроенная функция append.
Как известно, обычный способ сообщения об ошибке вызывающей стороне заключается в возврате error как дополнительного возвращаемого значения. Хорошо известным примером является и канонический метод Read, возвращающий число прочитанных байтов и error. Но что делать, когда ошибка не может быть возвращена?
В этой статье мы рассмотрим двоичное дерево -- простейшую структуру данных, созданную на основе дженериков. Мы реализуем дерево с функцией сравнения, в результате чего требований по типу элементов не будет:
В языке программирования Golang для выполнения операций над временем используется стандартный пакет time. Используя его, можно получить текущие параметры времени и даты, отформатировать дату в строку, создать таймер либо бегущую строку, cконвертировать временные зоны.
Утечки памяти в Go способны принимать разные формы. Как правило, мы считаем, что это баги, однако истинная причина проблем может быть заложена ещё на стадии проектирования. Рассмотрим распространённые примеры появления проблем с памятью:
Go — компилируемый и статически типизированный язык программирования, имеющий открытый исходный код. В нашей статье мы подобрали бесплатные книги, посвящённые этому языку.
Рассмотрим в качестве примера простой проект на Go, его структура описана ниже:
Если вы когда-либо пробовали Go, вы знаете, что писать сервисы на Go очень просто. Нам нужно буквально несколько строк кода для того, чтобы можно было запустить http-сервис. Но что нужно добавить, если мы хотим приготовить такое приложение в продакшн? Давайте рассмотрим это на примере сервиса, который готов к запуску в Kubernetes.
Согласно спецификации исходный код языка Go — это Unicode-текст, закодированный с помощью UTF-8 (какая связь между этим форматом и языком Go?). Это значит, что при написании кода вы можете использовать не только символы английского алфавита, но и, например, русского или китайского oO.
Testify — фреймворк для написания тестов на go. Если открыть документацию, то сразу видно, что в нём два основных пакета asser и require. И в обоих одинаковый набор методов.