Category : golang

golang
Beego в Golang для начинающих

Привет, Хабр!Beego – это фреймворк для разработки веб-приложений на языке Go, ориентированный на быстрое развертывание и простоту использования. В его основе лежит идея создания полнофункциональных приложений с минимум усилиям на настройку и кодирование. Это достигается за счет широкого выбора инструментов, включая ORM, систему маршрутизации, интерфейс кмд и многое другое. Beego придерживается принципов RESTful и MVC.Установим и создадим первый проектУстановить Beego проще пареной репы:go get …

  • суббота, 6 апреля 2024 г. в 00:00:14
golang
Масштабирование подписок GraphQL в Go с использованием Epoll и архитектуры, основанной на событиях

«Сделай работающим, сделай правильным, сделай быстрым». Это мантра, которую вы, вероятно, слышали раньше. Это хорошая мантра, которая помогает вам сосредоточиться на том, чтобы не переусложнять решение. Я пришел к выводу, что обычно достаточно сделать это правильно, обычно это достаточно быстро, если сделать это правильно.Когда мы начали реализацию подписок GraphQL в Cosmo Router, мы сосредоточились на том, чтобы сделать это работающим. Это было несколько месяцев назад. Это было достаточно хор…

  • вторник, 2 апреля 2024 г. в 00:00:10
golang
Интервью Роберта Пайка про Go

Первого января 2024 года Роберт Пайк дал интервью Medium.Вообще-то редакторы предполагали, что он расскажет о пятнадцати годах программирования с применением языка, основным идеологом которого он считается. К окончанию беседы выяснилось, что интервьюер извлек больше информации, чем предполагал, и, естественно, редакторы решили урезать содержание "для пользы индустрии", но, как обычно получается в таких случаях, произошла утечка информации.Вот полная и нередактированная запись интервью …

  • вторник, 2 апреля 2024 г. в 00:00:09
golang
Представляем планировщик Go: Вы никогда не смотрели на горутины с этой стороны

За кулисами рантайма GoНе переживайте о понимании изображения выше прямо сейчас, мы начнем с самых основ.Горутины раcпределяются по потокам, которыми Планировщик Go управляет под капотом. Мы знаем о горутинах следующее:Горутины, если говорить о скорости исполнения, не обязательно быстрее чем потоки, так как они нуждаются в потоках, чтобы ими исполняться.Ключевое преимущество горутин — в таких нюансах как контекст свитчинг, размере занимаемой ими памяти и стоимости создания и «удаления».Вероятн…

  • понедельник, 1 апреля 2024 г. в 00:00:06
golang
Golang: Мои Открытия

В этом посте мы обсудим несколько увлекательных моментов, которые я узнал в процессе своей работы.Мой канал с инструментами Go разработчика, с разбором каверзных вопросов с собеседований, примерами с кодом, обучающими уроками и кучей всего полезного, здесь целая папка для всех, кто любит Golang.Поехали!1. Как используется встраивание (embedding) в Go?В Go директива //go:embed используется для встраивания файлов и папок в бинарный файл Go на этапе компиляции. Эта функция улучшает безопасность, …

  • понедельник, 1 апреля 2024 г. в 00:00:06
golang
Внутри S3. Доклад Яндекса

Привет, я Паша, разработчик в Yandex Infrastructure, и я катаю гусей. С 2019 года наша команда развивает S3-хранилище как для внутренних пользователей Яндекса, так и для клиентов Yandex Cloud. А «гусём» называется наш бэкенд S3 API: он написан на Go, а из словосочетания Go + S3 получился goose. Возможно, вы также слышали про GeeseFS — это наш высокопроизводительный FUSE‑клиент для S3. C его помощью вы можете на своём ноутбуке или виртуалке подмонтировать папку, которая будет работать с бакетом…

  • суббота, 30 марта 2024 г. в 00:00:12
golang
Библиотека на Go для работы с RuStore API

Привет, Хабр!Меня зовут Энрике, и я работаю Go-разработчиком в RuStore. Сегодня хочу рассказать про библиотеку на Go для комфортной работы с API магазина приложений RuStore. Иногда авторизация через API и получение JWE-токена занимают больше времени, чем хотелось бы. С нашей новой библиотекой процесс становится намного проще — интегрируйте её в свой проект и используйте любые методы RuStore API.В этой статье мы опишем небольшой пример использования методов из нашей библиотеки: как получить дан…

  • суббота, 30 марта 2024 г. в 00:00:11
golang
Алгоритм Diffie-Hellman: Пишем приватный мессенджер на Go

ВведениеВсем привет! Это продолжение прошлой статьи про данный алгоритм. Где я рассказывал про возможность общения между двумя пользователями без прямого обмена ключом шифрования. В своем телеграм‑канале я уже описывал идею создания прозрачного Open‑Source мессенджера на основе этого алгоритма и хочу представить вам его самую простую реализацию с примерами кода.Предупреждаю, что кода будет много, но также будет много комментариев и объяснений.Все исходники я выложил в своем github, ссылки буду…

  • пятница, 29 марта 2024 г. в 00:00:17
golang
5 способов писать эффективный код на Go: от названий переменных до архитектуры

Если вы задумывались, какие практики использовать, чтобы писать код на Go быстро и качественно, этот материал для вас. Руководитель группы разработки подсистем Геннадий Ковалёв и эксперт по разработке ПО Даниил Подольский в YADRO обсуждают пять способов повысить эффективность разработки в команде Go-программистов: они расскажут, как называть переменные, составлять документацию и продумывать архитектуру так, чтобы специалистам в команде и смежных отделах было легко работать с написанным кодом. …

  • пятница, 29 марта 2024 г. в 00:00:16