NOP::Nuances of Programming
70K subscribers
3.09K photos
10 videos
12 files
4.42K links
Уникальные статьи и переводы — настольная книга программиста.


Любые вопросы по сотрудничеству: @ramilkr
Если нужен токен:
https://telega.in/c/nuancesprog
NOP::Humor - https://t.me/nophumor
NOP::Recruiter Удаленка- https://t.me/nopremote
Download Telegram
Попробуем кэшировать блог, сократив время выполнения. Реализуем ограничитель просмотров страницы, исправим командой WATCH невыполнение транзакции. Сравним Lua-скрипты со встроенными командами и транзакциями.

https://nsprg.ru/xl4J7x

VK: https://nsprg.ru/mzVJrm

Дзен: https://nsprg.ru/xJkYev

@nuancesprog #Redis #Golang
Узнаем правильный ответ на вопрос: «Как растет емкость среза?» В каких случаях она удваивается, а в каких нет?

https://nsprg.ru/myDW5O

VK: https://nsprg.ru/x9R2zv

Дзен: https://nsprg.ru/vLG21x

@nuancesprog #Golang
Разработка через тестирование. Как применяется этот подход? Напишем тесты для уровня хранения и обработчика.

https://nsprg.ru/O4rE2x

VK: https://nsprg.ru/x1W21O

Дзен: https://nsprg.ru/OBXQQx

@nuancesprog #Golang #GoFr #Testing
Изучим достоинства и недостатки очень полезного инструмента не только для тестирования, но и для контроля и управления версиями БД. Разберем особенности написания и применения SQL-миграций в службах на Go.

https://nsprg.ru/xP4D2x

VK: https://nsprg.ru/v8Ee5O

Дзен: https://nsprg.ru/vg9V8m

@nuancesprog #Golang #Database
Релиз Go 1.22 запланирован на февраль 2024 года, но уже сегодня можно оценить некоторые из его возможностей. Поговорим о том, как будут выглядеть итераторы и как может расшириться стандартная библиотека для их поддержки.

https://nsprg.ru/xAG7EO

VK: https://nsprg.ru/Ojry3O

Дзен: https://nsprg.ru/OQg9Dx

@nuancesprog #Golang
Go впечатляет балансом свой простоты и мощи. Но можно ли его назвать "золотой клеткой" для бэкенд-разработчика? Способен ли он удовлетворить широкий спектр бэкенд-потребностей? Чтобы ответить на этот вопрос, оцените технические возможности языка Go.

https://nsprg.ru/x1WXjO

VK: https://nsprg.ru/OBXJPx

@nuancesprog #Golang
Разберем случаи применения recover, проиллюстрируем примерами. Напишем универсальную функцию для обработки всех неперехваченных паник и ошибок времени выполнения, сбора трассировок стека для них.

https://nsprg.ru/mrpk4v

VK: https://nsprg.ru/O4rqQx

@nuancesprog #Golang
Изучим рекомендации с примерами кода на Go. Рассмотрим отступы, импорт пакетов, названия переменных, длину строк, константы, обработку ошибок, глобальные переменные, структуры для сложных данных, комментарии, горутины.

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
Развернем интеграцию WebAssembly с Go в браузерах, настроим среду Go, преобразуем код Go в WebAssembly и выполним его в веб-контексте. В итоге получим интерактивную платформу с конкретными, мощными возможностями.

https://nsprg.ru/xl467x

VK: https://nsprg.ru/mzVprm

@nuancesprog #WebAssembly #Golang
Разберем нюансы простого и масштабируемого фильтров Блума: хеш-функции, битовый массив, компромиссы, определение параметров, хешер, ложноположительные результаты, коллизии. Дадим рекомендации, приведем примеры применения.

https://nsprg.ru/xJk6Dv

VK: https://nsprg.ru/mzVD2m

@nuancesprog #Golang
Освоим команды, которыми совершенствуются практически все этапы разработки на Go: от сборки исполняемых файлов до управления зависимостями и даже изучения документации. Дадим краткое описание, когда используются и примеры.

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/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
Покажем, как легко стало оперировать базами данных. Разберем преимущества пакета database/sql: совместимость с базами данных, автоматическое сканирование структуры и вставка строк, функция Get, привязка параметров для предотвращения внедрения кода SQL.

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
Реализуем интегрируемый в онлайн-платформы функционал автоматической оплаты услуг, создадим сеанс оформления заказа для клиента на Go, 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
Рассмотрим шаблон Sidecar, создадим две службы Go и выполним контейнеризацию, а затем развернем на Kubernetes. Отправим HTTP-запрос и отследим его перенаправление из Sidecar-контейнера в основной.

https://nsprg.ru/ON3J8m

VK: https://nsprg.ru/mrYVLO

@nuancesprog #Golang #Kubernetes #Sidecar