Forwarded from Библиотека шарписта | C#, F#, .NET, ASP.NET
👀 Повышаем качество код-ревью: 7 полезных советов
В данной статье мы рассмотрим 7 практических советов, следуя которым можно значительно повысить качество проверки кода.
🔗Читать статью
🔗Зеркало
В данной статье мы рассмотрим 7 практических советов, следуя которым можно значительно повысить качество проверки кода.
🔗Читать статью
🔗Зеркало
👍7😁2
🤔Если эта идея звучит знакомо, возможно, вы уже столкнулись с RoadRunner, еще одним сервером PHP-приложений на базе Go, который использует совершенно другой подход.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤1👍1
Вас ждут темы, касающиеся паттернов микросервисной архитектуры и DI. Ну и не обошлось без Go-собесов.
🌐 Микросервисная архитектура для собеседования: Transactional outbox
🌐 Dependency Injection на примере Uber fx
🌐 Микросервисная архитектура: Circuit Breaker
🌐 Открытое собеседование на Go-разаботчика, часть 1
🌐 Собеседование на Go-разаботчика, System Design
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥1
🚀В новом выпуске Game Bytes от GitHub упомянуты несколько игр и инструментов для разработки игр, которые написаны на языке Go. И это не может не радовать.
📌Вот несколько упомянутых в статье инструментов, которые использовались в разработке:
🔧Ebitengine — игровой движок 2D, написанный на Go.
🔧Oto — низкоуровневая Go-библиотека для воспроизведения звука на нескольких платформах.
🔧Tmx — парсер TMX, написанный на Go.
Подробнее👇
📌Вот несколько упомянутых в статье инструментов, которые использовались в разработке:
🔧Ebitengine — игровой движок 2D, написанный на Go.
🔧Oto — низкоуровневая Go-библиотека для воспроизведения звука на нескольких платформах.
🔧Tmx — парсер TMX, написанный на Go.
Подробнее👇
GitHub
GitHub - hajimehoshi/ebiten: Ebitengine - A dead simple 2D game engine for Go
Ebitengine - A dead simple 2D game engine for Go. Contribute to hajimehoshi/ebiten development by creating an account on GitHub.
❤4🔥2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🤩Game Bytes — ежемесячная серия, посвященная миру разработки игр на GitHub, в которой представлены обновления игровых движков, игры с открытым исходным кодом, моды, карты и многое другое.
🔥Knight Dreams — бесконечная аркада на JavaScript и, абсолютно заслуженно, игра месяца.
📌Обновления игр и игровых движков:
🎮Roboden — изобретательная стратегия в реальном времени. В последнем выпуске представлена новая среда Inferno с новыми угрозами.
🎮Aaaaxy — 2D-платформер-головоломка, который чертовски сложно объяснить, но команда GitHub сделала это.
🎮Crazee Rider — гонки на мотоциклах, подобные игре 80-х годов. Почему бы не окунуться немного в прошлое?
⚡️Обновлен мод Scavengers в Beyond All Reason. Из анонса вы узнаете не только о новом игровом процессе, но и о тяжелой работе, проделанной при разработке мода.
⚡️Unreal Engine 5.3 (хотя исходный код не открыт, подписчики имеют доступ к нему через GitHub).
📌Игровые новости, свежие карты, моды, инструменты и многое другое читайте в статье.
#разработкаигр
🔥Knight Dreams — бесконечная аркада на JavaScript и, абсолютно заслуженно, игра месяца.
📌Обновления игр и игровых движков:
🎮Roboden — изобретательная стратегия в реальном времени. В последнем выпуске представлена новая среда Inferno с новыми угрозами.
🎮Aaaaxy — 2D-платформер-головоломка, который чертовски сложно объяснить, но команда GitHub сделала это.
🎮Crazee Rider — гонки на мотоциклах, подобные игре 80-х годов. Почему бы не окунуться немного в прошлое?
⚡️Обновлен мод Scavengers в Beyond All Reason. Из анонса вы узнаете не только о новом игровом процессе, но и о тяжелой работе, проделанной при разработке мода.
⚡️Unreal Engine 5.3 (хотя исходный код не открыт, подписчики имеют доступ к нему через GitHub).
📌Игровые новости, свежие карты, моды, инструменты и многое другое читайте в статье.
#разработкаигр
🔥5👍2
🤔Видишь такое и думаешь: «Зачем тогда использовать Go, если у него нет будущего?». Согласны?
😎На Хабре, кстати, недавно появился любопытный перевод, который не похож на пресловутые «Rust vs Go». Автор использует одну и ту же задачу и популярные библиотеки для обоих языков, поэтому в нем могут быть некоторые детали, на которых не акцентировали внимание в других сравнениях.
😎На Хабре, кстати, недавно появился любопытный перевод, который не похож на пресловутые «Rust vs Go». Автор использует одну и ту же задачу и популярные библиотеки для обоих языков, поэтому в нем могут быть некоторые детали, на которых не акцентировали внимание в других сравнениях.
👍3⚡1
🚀Jozef Reisinger, старший инженер по безопасности в Empatica, приводит и другие аргументы в пользу использования Go в этой области и представляет практическое применение, написав простой Go-инструмент для определения версии TLS сервера.
🔸Часть 1: введение
🔸Часть 2: продолжение
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤1
Нас уже больше 14 000 🥳 🎊 🎂 ! Спасибо за интерес к «Библиотеке Go-разработчика».
Please open Telegram to view this post
VIEW IN TELEGRAM
❤40🔥3🤔1
Переменная GOMAXPROCS ограничивает количество потоков операционной системы, которые могут одновременно выполнять код Go.
В Docker-контейнере, развернутом в Kubernetes, Go захватит столько потоков, сколько доступно в системе, даже если контейнер ограничен.
Это означает, что ваше приложение может работать медленнее. К счастью, есть очень простое решение!
Просто добавьте в
Как вы уже поняли, automaxprocs от команды Uber автоматически устанавливает GOMAXPROCS в соответствии с квотой процессора Linux-контейнера. Может это и не «лучшая практика», но свою задачу выполняет.
#tip by Matt Boyle
В Docker-контейнере, развернутом в Kubernetes, Go захватит столько потоков, сколько доступно в системе, даже если контейнер ограничен.
Это означает, что ваше приложение может работать медленнее. К счастью, есть очень простое решение!
Просто добавьте в
main.go
: import _ "go.uber.org/automaxprocs",
где «_» вызовет функцию init() пакета.Как вы уже поняли, automaxprocs от команды Uber автоматически устанавливает GOMAXPROCS в соответствии с квотой процессора Linux-контейнера. Может это и не «лучшая практика», но свою задачу выполняет.
#tip by Matt Boyle
👍38❤2
⚒ grpcurl — CLI-инструмент, который позволяет взаимодействовать с gRPC-серверами. Своего рода curl для gRPC-серверов, разработанный на Go.
📌Несколько простых примеров использования:
$
$
$
🔗 GitHub
📌Несколько простых примеров использования:
$
grpcurl grpc.server.com:443 my.custom.server.Service/
Method$
grpcurl -d '{"id": 1234, "tags": ["foo","bar"]}' grpc.server.com:443 my.custom.server.Service/Method
$
grpcurl localhost:8787 list
🔗 GitHub
GitHub
GitHub - fullstorydev/grpcurl: Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers
Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers - fullstorydev/grpcurl
👍30
🤔Очередной гайд про использование интерфейсов в Go? А вот и нет!
☑️Цель этого руководства — углубиться в практику и объяснить все доступным языком. Автор создает простой интерфейс для взаимодействия с базой данных и пишет несколько тестов.
🔗 Читать
☑️Цель этого руководства — углубиться в практику и объяснить все доступным языком. Автор создает простой интерфейс для взаимодействия с базой данных и пишет несколько тестов.
🔗 Читать
Dumpster Coding
Using Interfaces in Go
A practical example
👍10🥱2
Подборка лучших статей «Библиотеки программиста» за сентябрь: сохраняй в заметки, чтобы не пропустить #самыйсок
📕 ТОП-9 книг по языку программирования Go в 2023 году: от новичка до профессионала
🎓💼 ТОП-9 не самых очевидных компаний для стажировки в ИТ
🦸⚡ 9 способов настройки градиента цели для поддержания мотивации
⚒️ ТОП-27 плагинов для Visual Studio Code в 2023
🔎💼🗺️ Как программисту искать (и найти) работу за границей в 2023 году
🔝 Приоритизация задач по методу MoSCoW: как за 5 минут научиться грамотно расставлять приоритеты
📊 Как я входил в IT? Результаты опроса «Библиотеки программиста»
📕 ТОП-9 книг по языку программирования Go в 2023 году: от новичка до профессионала
🎓💼 ТОП-9 не самых очевидных компаний для стажировки в ИТ
🦸⚡ 9 способов настройки градиента цели для поддержания мотивации
⚒️ ТОП-27 плагинов для Visual Studio Code в 2023
🔎💼🗺️ Как программисту искать (и найти) работу за границей в 2023 году
🔝 Приоритизация задач по методу MoSCoW: как за 5 минут научиться грамотно расставлять приоритеты
📊 Как я входил в IT? Результаты опроса «Библиотеки программиста»
🔥6
📊JSON Benchmarks — репозиторий, в котором представлены бенчмарки различных реализаций Go JSON (в скобках — количество импортов).
• JSONv1 — encoding/json (1.3M)
• JSONv2 — github.com/go-json-experiment/json (47)
• JSONIterator — github.com/json-iterator/go (17k)
• SegmentJSON — github.com/segmentio/encoding/json (347)
• GoJSON — github.com/goccy/go-json (2k)
• SonicJSON — github.com/bytedance/sonic (517)
🔗 GitHub
• JSONv1 — encoding/json (1.3M)
• JSONv2 — github.com/go-json-experiment/json (47)
• JSONIterator — github.com/json-iterator/go (17k)
• SegmentJSON — github.com/segmentio/encoding/json (347)
• GoJSON — github.com/goccy/go-json (2k)
• SonicJSON — github.com/bytedance/sonic (517)
🔗 GitHub
🔥11