Go впечатляет балансом свой простоты и мощи. Но можно ли его назвать "золотой клеткой" для бэкенд-разработчика? Способен ли он удовлетворить широкий спектр бэкенд-потребностей? Чтобы ответить на этот вопрос, оцените технические возможности языка Go.
https://nsprg.ru/x1WXjO
VK: https://nsprg.ru/OBXJPx
@nuancesprog #Golang
https://nsprg.ru/x1WXjO
VK: https://nsprg.ru/OBXJPx
@nuancesprog #Golang
Разберем случаи применения recover, проиллюстрируем примерами. Напишем универсальную функцию для обработки всех неперехваченных паник и ошибок времени выполнения, сбора трассировок стека для них.
https://nsprg.ru/mrpk4v
VK: https://nsprg.ru/O4rqQx
@nuancesprog #Golang
https://nsprg.ru/mrpk4v
VK: https://nsprg.ru/O4rqQx
@nuancesprog #Golang
Изучим рекомендации с примерами кода на Go. Рассмотрим отступы, импорт пакетов, названия переменных, длину строк, константы, обработку ошибок, глобальные переменные, структуры для сложных данных, комментарии, горутины.
https://nsprg.ru/mrp5Yv
VK: https://nsprg.ru/O4rQlx
@nuancesprog #Golang
https://nsprg.ru/mrp5Yv
VK: https://nsprg.ru/O4rQlx
@nuancesprog #Golang
Продолжаем обработкой паник с Recover, функциями init и defer, составными литералами, параметрами и сложностью функций, явными возвращаемыми значениями. Изучим затенение переменных, интерфейсы для абстракции, разделение библиотечных пакетов и исполняемых файлов.
https://nsprg.ru/mWNeRO
VK: https://nsprg.ru/O5KJyx
@nuancesprog #Golang
https://nsprg.ru/mWNeRO
VK: https://nsprg.ru/O5KJyx
@nuancesprog #Golang
Развернем интеграцию WebAssembly с Go в браузерах, настроим среду Go, преобразуем код Go в WebAssembly и выполним его в веб-контексте. В итоге получим интерактивную платформу с конкретными, мощными возможностями.
https://nsprg.ru/xl467x
VK: https://nsprg.ru/mzVprm
@nuancesprog #WebAssembly #Golang
https://nsprg.ru/xl467x
VK: https://nsprg.ru/mzVprm
@nuancesprog #WebAssembly #Golang
Разберем нюансы простого и масштабируемого фильтров Блума: хеш-функции, битовый массив, компромиссы, определение параметров, хешер, ложноположительные результаты, коллизии. Дадим рекомендации, приведем примеры применения.
https://nsprg.ru/xJk6Dv
VK: https://nsprg.ru/mzVD2m
@nuancesprog #Golang
https://nsprg.ru/xJk6Dv
VK: https://nsprg.ru/mzVD2m
@nuancesprog #Golang
Освоим команды, которыми совершенствуются практически все этапы разработки на Go: от сборки исполняемых файлов до управления зависимостями и даже изучения документации. Дадим краткое описание, когда используются и примеры.
https://nsprg.ru/vgLGzO
VK: https://nsprg.ru/v21djx
@nuancesprog #Golang
https://nsprg.ru/vgLGzO
VK: https://nsprg.ru/v21djx
@nuancesprog #Golang
Изучим способы создания перечислений с идентификатором iota и структурными тегами. Проверим поведения на тестовых сценариях.
https://nsprg.ru/vgLpRO
VK: https://nsprg.ru/v21Vax
@nuancesprog #Golang
https://nsprg.ru/vgLpRO
VK: https://nsprg.ru/v21Vax
@nuancesprog #Golang
…когда пишешь плохой код. О том, как применять пул соединений, а не просто копипастить найденный в интернете код.
https://nsprg.ru/xeAJNx
VK: https://nsprg.ru/xlEJ4v
@nuancesprog #NodeJS #Golang #NestJS #Bun #LanguagePerfomance
https://nsprg.ru/xeAJNx
VK: https://nsprg.ru/xlEJ4v
@nuancesprog #NodeJS #Golang #NestJS #Bun #LanguagePerfomance
Разберемся с процессом загрузки файлов Go в Cloudflare R2. Пройдем его поэтапно, снабжая фрагменты кода пояснениями, весь код - в конце.
https://nsprg.ru/OoYG4x
VK: https://nsprg.ru/Obk8qm
@nuancesprog #Golang #CloudflareR2
https://nsprg.ru/OoYG4x
VK: https://nsprg.ru/Obk8qm
@nuancesprog #Golang #CloudflareR2
Покажем, как легко стало оперировать базами данных. Разберем преимущества пакета database/sql: совместимость с базами данных, автоматическое сканирование структуры и вставка строк, функция Get, привязка параметров для предотвращения внедрения кода SQL.
https://nsprg.ru/maYbLm
VK: https://nsprg.ru/O7kb0O
@nuancesprog #Golang #SQLX
https://nsprg.ru/maYbLm
VK: https://nsprg.ru/O7kb0O
@nuancesprog #Golang #SQLX
Создадим настраиваемые показатели Prometheus с Go, подробно разберем метрики. При наличии оповещения в Grafana отправим сообщение на канал Slack.
https://nsprg.ru/O7kZjO
VK: https://nsprg.ru/xPbX1O
@nuancesprog #Golang #Grafana #Slack
https://nsprg.ru/O7kZjO
VK: https://nsprg.ru/xPbX1O
@nuancesprog #Golang #Grafana #Slack
Реализуем интегрируемый в онлайн-платформы функционал автоматической оплаты услуг, создадим сеанс оформления заказа для клиента на Go, Stripe и Gin. Разберемся, как с помощью хуков здесь устраняются основные сложности.
https://nsprg.ru/OQMQlO
VK: https://nsprg.ru/mMkQ7v
@nuancesprog #Golang #Stripe #Gin
https://nsprg.ru/OQMQlO
VK: https://nsprg.ru/mMkQ7v
@nuancesprog #Golang #Stripe #Gin
Разрабатываете микросервисы? Тогда вам обязательно нужно освоить GoFr. С этим фреймворком ваша работа станет намного проще и эффективней. Как надежный эксперт, он будет руководить каждым вашим шагом, обеспечив исключительную производительность.
https://nsprg.ru/vgLBzO
VK: https://nsprg.ru/v21zjx
@nuancesprog #GoFr #Golang
https://nsprg.ru/vgLBzO
VK: https://nsprg.ru/v21zjx
@nuancesprog #GoFr #Golang
Рассмотрим шаблон Sidecar, создадим две службы Go и выполним контейнеризацию, а затем развернем на Kubernetes. Отправим HTTP-запрос и отследим его перенаправление из Sidecar-контейнера в основной.
https://nsprg.ru/ON3J8m
VK: https://nsprg.ru/mrYVLO
@nuancesprog #Golang #Kubernetes #Sidecar
https://nsprg.ru/ON3J8m
VK: https://nsprg.ru/mrYVLO
@nuancesprog #Golang #Kubernetes #Sidecar
Разберем нюансы управления продолжительными транзакциями в распределенных системах, реальные сценарии применения. Проиллюстрируем примером действие компенсации в этапах транзакций, откат предыдущих транзакций.
https://nsprg.ru/OoY0Ex
VK: https://nsprg.ru/Obk3nm
@nuancesprog #Golang
https://nsprg.ru/OoY0Ex
VK: https://nsprg.ru/Obk3nm
@nuancesprog #Golang
Поэтапно сделаем пригодный для промышленной эксплуатации API. Менее чем в 50 строках кода реализуем его с миграциями, REST-обработчиками, функцией main, создадим простейший компонент - слой данных.
https://nsprg.ru/x1zQjv
VK: https://nsprg.ru/OBzjPO
@nuancesprog #Golang #RESTAPI #CRUD #MySQL
https://nsprg.ru/x1zQjv
VK: https://nsprg.ru/OBzjPO
@nuancesprog #Golang #RESTAPI #CRUD #MySQL
Применим упрощенный подход интеграции Meilisearch с Golang: обойдя процессы создания БД и вставки данных, получим данные напрямую из внешних источников и вставим их в Meilisearch. Реализуем функционал поиска, создав индексы, вставив в них данные, настроив поисковый запрос для функции поиска.
https://nsprg.ru/xlE2Jv
VK: https://nsprg.ru/mzgLAx
@nuancesprog #Golang #Meilisearch
https://nsprg.ru/xlE2Jv
VK: https://nsprg.ru/mzgLAx
@nuancesprog #Golang #Meilisearch
Рассмотрим объекты первого класса, их влияние на производительность. Изучим варианты использования с примерами: обратные вызовы, анонимные функции, замыкания, композиция функций, обработка ошибок, тестирование.
https://nsprg.ru/ObZPDO
VK: https://nsprg.ru/vd0DWv
@nuancesprog #Golang
https://nsprg.ru/ObZPDO
VK: https://nsprg.ru/vd0DWv
@nuancesprog #Golang
Изучим, как осуществляются мониторинг и логирование службы Go. Напишем код приложения и модульный тест, создав конфигурационные и тестовые файлы, и посмотрим метрики в дашборде Grafana.
https://nsprg.ru/vLdd5v
VK: https://nsprg.ru/xREEEm
@nuancesprog #Golang #Grafana #NewRelic #Prometheus #Sentry
https://nsprg.ru/vLdd5v
VK: https://nsprg.ru/xREEEm
@nuancesprog #Golang #Grafana #NewRelic #Prometheus #Sentry