Category : golang

golang
Получение информации с LeetCode о пользователе на Golang

LeetCode - популярная платформа для подготовки к собеседованиям по программированию, предоставляющая задачи на алгоритмы и структуры данных. Чтобы улучшить свои навыки и изучить свои успехи, пользователи могут хотеть получить информацию о своем профиле на LeetCode, такую как решенные задачи, статистика по времени и другие данные.В данной статье будет рассмотрено, как можно написать программу на Golang для получения информации о пользователе с помощью API LeetCode. Для разработки будет использо…

  • понедельник, 10 июня 2024 г. в 00:00:07
golang
AOP в Golang: как рефлексировать, и почему вам не стоит этого делать

Привет, Хабр! Nikolaich << inЯ java-программист по профессии и алкоголик go-developer по зову души. И вот в один прекрасный день я подумал о том, что раз уж в Go есть пакет reflect, то должны быть и способы АОП, прямо как в java. Если вкратце, хочется генерировать обертки для функций в рантайме, позволяя красиво оборачивать логи, мониторинги, трейсинги, и прочие довольно однотипные штуки, по аналогии с тем, как я проделывал это в java. Вот понятный джава-программистам пример кода такой об…

  • пятница, 7 июня 2024 г. в 00:00:04
golang
Оптимизация Go: как повысить скорость и эффективность кода

Привет, Хабр! Меня зовут Макс, я Go-разработчик в компании SimbirSoft. Язык Go (Golang) стремительно набирает популярность, он всё чаще внедряется в существующие программные решения, а также встречается в стеке новых проектов. Высокая производительность и скорость работы – его главные преимущества, поэтому для реализации бизнес-задач он подходит как нельзя кстати. Go легко поддерживается и отлично годится для создания MVP, из-за чего востребованность в нём растёт.Но чтобы этот язык программиров…

  • четверг, 6 июня 2024 г. в 00:00:08
golang
Как я написал для своей команды бот-напоминалку на Golang и втрое сократил время на ревью задач

Привет, Хабр! На связи Кирилл Веркин. Вообще, я занимаю в СберМаркете должность Senior QA, но ради большей производительности команды жизнь заставила стать немного кодером.Эта статья может быть интересна тем, кто замечает, что задачи в команде часто теряются, и хочет автоматизировать процесс напоминалок. Я делюсь кодом, поясняя ключевые моменты для таких же новичков в Go. Мой код написан для сочетания GitLab, Jira и Mattermost (корпоративный мессенджер, которым мы пользуемся в СберМаркете), но …

  • четверг, 6 июня 2024 г. в 00:00:08
golang
Откажитесь уже наконец от gin, echo и <иной ваш фреймворк>

Введение: Пересмотр Традиций в Мире GoВ мире разработки на Go выбор фреймворка часто превращается в лояльность, сопоставимую с выбором между Apple и Android. Фреймворки вроде Gin, Echo и Beego долгие годы были верными спутниками программистов, помогая быстро развертывать проекты и достигать первых успехов. Они предлагали удобные инструменты и привычные шаблоны работы, но со временем становится очевидным, что у каждого свой «язык». Это создаёт трудности при переходе между ними или интеграции с д…

  • вторник, 4 июня 2024 г. в 00:00:12
golang
Go + Minio: как написать простой сервер для взаимодействия с файлами

Добрейшего! Недавно мой друг решил хранить картинки продуктов на сервере, в отдельной папочке, выдав ей публичный доступ. Что ж, эту статью я пишу чтобы рассказать другу плюсы и минусы, а так же показать как можно делать иначе. Если вы только изучаете go, начинаете писать сервера, то обязательно посмотрите эту статью - для бекендера уметь работать с s3 хранилищем так же важно, как и уметь работать с реляционной / нереляционной базой данных и с key-value базой - это основа основ.одно из самых до…

  • воскресенье, 2 июня 2024 г. в 00:00:15
golang
С Python на Go и обратно: мой опыт

Привет! Меня зовут Денис, я ведущий Golang-разработчик в МТС Диджитал. Еще год назад я работал экспертом по запуску новых сервисов и услуг в Корпоративном центре МТС и параллельно заканчивал курс «Продвинутый Go‑разработчик» от Практикума.В этой статье я расскажу, как начал программировать на Python и зачем мне понадобился Go, как и чему я учился и почему теперь посматриваю на Rust.  Начну с моего пути в разработчики, но если вам не интересна эта часть, смело листайте в середину — там много пол…

  • пятница, 31 мая 2024 г. в 00:00:13
golang
Ужасно подробные ошибки в API: пишем на Go инструмент для работы с ними

Привет, Хабр! Меня зовут Александр Лырчиков, я разрабатываю систему хранения данных TATLIN.UNIFIED в YADRO. СХД — сложная система, и, если при работе произошла ошибка, она должна своевременно и понятно сообщать пользователю об этом. В большинстве веб-сервисов для этого используют баннер с надписью «Что-то пошло не так», но такой способ уведомления нам не подходит. Мы столкнулись с проблемой, когда переданных сообщений и HTTP-кодов уже не хватает. Поэтому разработали собственный инструмент для о…

  • пятница, 31 мая 2024 г. в 00:00:12
golang
Интересный пример кода на Go и зашоренность мышления

Данная история началась с того, что как-то коллега скинула в телеграмм чат команды пример (на Go)type field struct { name string } func (p *field) print() { fmt.Println(p.name) } func main() { data := []field{{&#34;one&#34;},{&#34;two&#34;},{&#34;three&#34;}} for _,v := range data { go v.print() } time.Sleep(3 * time.Second) // горутины выводят: three, three, three } и попросила объяснить, почему если поменять массив структур на массив указателей на струк…

  • пятница, 31 мая 2024 г. в 00:00:12