Найти тему
Правила нейминга функций и методов в Go
Как senior golang developer, я хочу поделиться своим опытом и знаниями о стандартах наименования функций и методов в языке программирования Go. Хорошо выбранные имена функций и методов могут значительно упростить понимание кода и сделать его более читаемым. В этой статье мы рассмотрим общепринятые стандарты наименования функций и методов в сообществе Go разработчиков. Локаничность и читаемость Перед тем, как перейти к стандартам наименования функций и методов, давайте обсудим два важных аспекта: локаничность и читаемость...
301 читали · 1 год назад
Чистая архитектура в Golang (начало)
Чистая архитектура в программировании на языке Golang В мире программирования существует множество различных подходов к проектированию приложений. Одним из наиболее популярных и эффективных подходов является чистая архитектура. В данной статье мы рассмотрим, что такое чистая архитектура, как ее использовать при разработке приложений на языке Golang и приведем примеры кода. Что такое чистая архитектура? Чистая архитектура – это подход к проектированию приложений, который основывается на принципе разделения ответственности (Separation of Concerns)...
929 читали · 1 год назад
Краткий Golang
Golang: мощный язык программирования для современных приложений Golang (или Go) - это относительно новый язык программирования, который был разработан компанией Google в 2009 году. Он был создан для упрощения и ускорения разработки приложений, особенно для больших и сложных проектов. Golang сочетает в себе простоту и эффективность, что делает его идеальным выбором для современных приложений. Одной из ключевых особенностей Golang является его поддержка параллельного выполнения кода. Это достигается за счет использования горутин и каналов, которые мы рассмотрели в предыдущей статье...
1 год назад
Первый .gitlab-ci.yaml
Приветствую всех программистов! Сегодня я хочу поделиться с вами информацией о том, как написать свой первый конфиг для автоматической сборки сервиса на языке Golang в GitLab. Это очень полезный навык, который поможет вам упростить процесс разработки и деплоя вашего приложения. Прежде чем мы начнем, давайте разберемся, что такое GitLab и зачем он нам нужен. GitLab - это система управления версиями и совместной разработки программного обеспечения, которая предоставляет набор инструментов для хранения...
1 год назад
Алгоритмы на собеседованиях по golang уровня medium
Собеседование на позицию программиста на языке Golang может быть довольно сложным, особенно если работодатель ищет кандидата, который обладает хорошими знаниями алгоритмов. В данной статье мы рассмотрим некоторые задачи по алгоритмам уровня medium, которые могут быть заданы на собеседовании, а также поделимся примерами кода решений этих задач. 1. Задача о нахождении наибольшей общей последовательности (LCS) Даны две строки s1 и s2. Необходимо найти наибольшую общую последовательность символов в этих строках...
370 читали · 1 год назад
Как не потерять данные при append в горутине Golang
В современном мире программирования, когда мы пишем программы на языке Go, мы часто сталкиваемся с задачами, которые требуют конкурентного доступа к общим ресурсам, таким как слайсы. Однако, при конкурентном доступе к этим ресурсам может произойти гонка данных, что приведет к утечке данных или непредсказуемому поведению программы. Для того чтобы избежать этой проблемы и обеспечить безопасность работы с общими ресурсами, необходимо использовать мьютексы. Мьютекс - это механизм синхронизации доступа к общим ресурсам...
1 год назад
Как я попал в 👨‍💻 IT
Меня зовут Александр и я являюсь middle golang разработчиком в компании Ozon. Но до того, как я стал профессионалом в своей области, мой путь в IT индустрию был долгим и тернистым. С самого детства я был увлечен компьютерами и программированием, но не знал, как применить эти знания на практике. После окончания школы я поступил в университет на факультет математики и информатики, где начал изучать основы программирования на языке C++. Однако, университетская программа не предоставляла достаточно практических знаний, чтобы найти работу в IT сфере...
1 год назад
Управление памятью в Golang
В языке программирования Go, управление памятью осуществляется автоматически с помощью сборщика мусора. Это означает, что программист не должен заботиться о создании и освобождении памяти вручную. Однако, это не означает, что в Go нельзя допустить утечку памяти. Утечка памяти может произойти, когда программа выделяет память, но не освобождает ее после использования. Это может привести к тому, что программа будет использовать все больше и больше памяти, что может привести к сбою системы. Чтобы избежать утечек памяти в Go, необходимо следить за выделением и освобождением памяти. В Go, выделение памяти происходит с помощью оператора new или функции make...
428 читали · 1 год назад
Профилирование памяти в Golang (pprof…)
Профилирование памяти в Go: как оптимизировать использование памяти в вашем приложении Оптимизация использования памяти является одной из ключевых задач любого разработчика, особенно если вы работаете с большими и сложными приложениями. В этой статье мы рассмотрим, как использовать инструменты профилирования памяти в Go, чтобы оптимизировать использование памяти в вашем приложении. Шаг 1: Использование пакета pprof Go предоставляет пакет pprof для профилирования производительности и использования памяти. Для использования пакета pprof необходимо импортировать его и зарегистрировать хотя бы...
520 читали · 1 год назад
Mocking in Golang
Mocking - это процесс создания фиктивных объектов, которые могут использоваться для тестирования кода. В этой статье мы рассмотрим, как генерировать и использовать mock для тестирования функций в Golang. Шаг 1: Установка пакета mockgen Первым шагом является установка пакета mockgen с помощью команды go get: go get github.com/golang/mock/mockgen Шаг 2: Создание интерфейса Для создания mock-объекта необходимо иметь интерфейс, который он будет реализовывать. Создадим простой интерфейс для работы с базой данных: type Database interface { Get(key string) (string, error) Set(key string, value string)...
972 читали · 1 год назад
Start with docker
Если вы только начинаете изучать Docker, в этой статье мы расскажем вам, как быстро освоить его. Docker - это мощный инструмент для контейнеризации приложений, который позволяет упаковать приложение и его зависимости в единый контейнер, который можно запустить на любой платформе. Шаг 1: Установка Docker Первым шагом в освоении Docker является установка его на вашу машину. Для этого перейдите на официальный сайт Docker и загрузите установочный файл для вашей операционной системы. Установка Docker обычно не занимает много времени и проходит без проблем...
1 год назад
Quick start docker+golang
Docker - это платформа для контейнеризации приложений, которая позволяет упаковать приложение и его зависимости в единый контейнер, который можно запустить на любой платформе. Контейнеризация приложений на golang с помощью Docker является очень популярным способом развертывания приложений. Шаг 1: Написание Dockerfile Dockerfile - это файл, который описывает настройки и инструкции для создания образа контейнера. Напишем простой Dockerfile для нашего приложения на golang: FROM golang:1.16-alpine WORKDIR /app COPY . . RUN go build -o app . CMD ["./app"] Этот Dockerfile использует официальный образ golang:1...
402 читали · 1 год назад