@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
@linuxkalii
Please open Telegram to view this post
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Главные тезисы:
• Ускорение сборки: Механизм позволяет повторно использовать результаты компиляции, что существенно сокращает время сборки, особенно в CI/CD-процессах.
• Лёгкая интеграция: Удалённое кэширование легко внедряется в существующие рабочие процессы с минимальными настройками, улучшая эффективность сборок в больших проектах.
• Использование кэша обеспечивает повторяемость сборок и помогает избежать неожиданных ошибок, повышая надёжность финальных артефактов.
• Практические примеры и рекомендации: Статья подробно объясняет, как настроить удалённое кэширование, обсуждает его преимущества и ограничения, а также приводит примеры из реальной практики.
✔ Полная статья
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉 Выпущены версии Go 1.24.1 и 1.23.7!
🔐 Безопасность: Включает исправление безопасности для net/http (CVE-2025-22870)
🗣 Анонс: https://groups.google.com/g/golang-announce/c/4t3lzH3I0eI/m/b42ImqrBAQAJ
🗃 Скачать: go.dev/dl/#go1.24.1
#golang
@golang_google
🔐 Безопасность: Включает исправление безопасности для net/http (CVE-2025-22870)
🗣 Анонс: https://groups.google.com/g/golang-announce/c/4t3lzH3I0eI/m/b42ImqrBAQAJ
🗃 Скачать: go.dev/dl/#go1.24.1
#golang
@golang_google
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
xrun помогает организовать выполнение нескольких команд, определённых в одном JSON-конфигурационном файле. Это особенно полезно при работе с многосторонними проектами, где необходимо запускать сервер, клиент, инструменты сборки и прочее одновременно.
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Репозиторий - это слой абстракции, инкапсулирующий в себе всё, что относится к способу хранения данных. Назначение: Разделение бизнес-логики от деталей реализации слоя доступа к данным.
Основные моменты статьи:
Что такое Repository Pattern:
Статья объясняет концепцию репозитория как слоя абстракции между бизнес-логикой и источниками данных (например, базой данных). Это позволяет изолировать операции доступа к данным, делая код чище и структурированнее.
Преимущества для разработчиков:
- Разделение обязанностей: Отделяя логику работы с данными от бизнес-логики, разработчики получают более модульный и понятный код.
- Упрощённое тестирование: Благодаря абстрагированию операций доступа к данным через интерфейсы, можно легко подменять реальную базу данных на моки или стабы при написании юнит-тестов.
- Гибкость и масштабируемость: При необходимости смены способа хранения данных (например, переход от одной СУБД к другой) изменения касаются только слоя репозитория, а не всей бизнес-логики.
- Практические примеры:
В статье приводятся примеры реализации репозитория на Go, демонстрирующие, как правильно структурировать код, использовать интерфейсы и организовать взаимодействие между слоями приложения.
📌 Читать
📌 Код
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
В cтатье автор подробно разбирает:
- Новые возможности Go 1.24: Какие изменения внесены в систему управления зависимостями и как они влияют на разработку.
- Практические примеры: Пошаговые инструкции и советы по настройке и фиксации версий инструментов, что помогает обеспечить стабильность сборок.
- Рекомендации по поддержанию чистоты и воспроизводимости проекта, что особенно важно в командной разработке.
▪ Читать
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Это обертка JavaScript-библиотеки chrono-node, которая предоставляет o расширенные возможности обработки временных данных.
Ключевые особенности naturaltime:
- Парсинг временных выражений: Преобразует выражения на естественном языке, описывающие дату и время, в объекты time.Time.
- Обработка временных диапазонов: Поддерживает извлечение как конкретных дат, так и диапазонов дат, включая множественные диапазоны в одном выражении.
- Интеграция с пакетом time: Легко интегрируется с стандартным пакетом time языка Go, обеспечивая совместимость и удобство использования.
- Удобный API: Предоставляет чистый и понятный API, соответствующий стандратам Go, что упрощает внедрение и использование библиотеки в проектах.
go get github.com/sho0pi/naturaltime
📌 Github
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Самое главное:
▪ В 10 раз (!) быстрее компиляция, в 2 раза меньше памяти просит;
▪ На видео как раз тест нового компилятора: 0.63 секунды против 3.35 на старом;
▪ Проект пилят с августа 2024, готово уже 80%;
Полный переход займёт годы 😢;
▪ В версии на Go не работает «манкипатчинг», что сделает API TypeScript более безопасным;
⚫ Планируют интеграцию с LLM (надеюсь, локальными);
⚫ Полный переход на TypeScript-Go не отменяет поддержку старой версии;
⚫ Кодовая база TypeScript в Go расходится с оригиналом, так что некоторые фичи (вроде JSDoc и JSX) могут полететь.
Проект в разработке с августа 2024, готово уже 80%.
Полное интервью с апдейтами тут глянуть на YouTube
▪Github: https://github.com/microsoft/typescript-go
▪Microsoft blog: https://devblogs.microsoft.com/typescript/typescript-native-port/
#dotnet #golang #programming #typescript #webdev
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Это сервер push-уведомлений на основе Gin, совместимый с APNS (Apple Push Notification Service), Firebase и HMS Push Server (Huawei).
GitHub
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Основные особенности:
⚫ Назначение:
StriGO разработан для защиты приложений от перегрузок и злоупотреблений, предоставляя эффективный и масштабируемый механизм ограничения количества запросов. Он поддерживает несколько бэкендов для хранения состояния лимитирования, таких как Redis, Memcached и Dragonfly.
Особенности и возможности:
⚫ Высокая производительность: Оптимизирован для минимальных задержек и высокой пропускной способности.
⚫ Множество алгоритмов лимитирования: Поддержка различных стратегий, таких как Token Bucket (по умолчанию), Leaky Bucket, Fixed Window и Sliding Window.
⚫ Гибкие временные окна: Ограничение может задаваться для различных периодов — от секунд до годов.
⚫ Интеграция с фреймворками: Предусмотрена поддержка middleware для популярных веб-фреймворков, например, Fiber.
⚫ Простота использования: Удобный API и обширная документация для быстрого старта.
go get github.com/veyselaksin/strigo
▪Github
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
▪ Модульная архитектура: Проект предоставляет структуру, которая позволяет легко расширять функциональность и интегрировать различные компоненты, что упрощает разработку сложных систем.
▪ Гибкость интеграции: Casibase обеспечивает удобную работу с различными источниками данных и API, что облегчает объединение разрозненных сервисов в единое целое.
▪ Ускорение разработки: Используя Casibase, разработчики могут быстрее собирать и разворачивать приложения, оптимизируя процессы автоматизации и управления данными.
Casibase интересен тем, кто ищет готовую платформу для быстрого создания распределённых систем с высокой степенью адаптивности и масштабируемости.
▪ Github
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
📌 Основная cуть:
• Рассматриваются лучшие практики и новые возможности для написания и проведения бенчмарков в Go 1.24.
• Автор делится опытом, демонстрирует примеры, объясняет, как правильно измерять производительность и избегать распространённых ошибок.
📌 Польза для разработчиков:
• Помогает оптимизировать приложения на Go, выявляя узкие места в производительности.
• Раскрывает улучшения и особенности новой версии, что важно для точного и эффективного тестирования кода.
• Предоставляет практические рекомендации, которые можно сразу применять в реальных проектах.
Эта статья будет особенно полезна тем, кто стремится повысить производительность своих приложений и глубже разобраться в нюансах бенчмаркинга на Go.
📌 Читать
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Kubernetes, Platform as a Service (PaaS) и CI/CD - это мощные решения, но иногда они оказываются сложнее, чем требуется вашему проекту. Если вам нравится управлять своим сервером, использование Airo может быть значительно дешевле и обеспечит больший контроль над техническими деталями вашего проекта.
Он предоставляет удобный интерфейс и расширяемые возможности.
▪ Простота использования: Благодаря интуитивно понятному интерфейсу, начать работать с Airo можно без длительного изучения сложной документации.
▪ Гибкость и настройка: Инструмент легко адаптируется под специфические требования любого проекта, позволяя интегрировать дополнительные модули и плагины по мере необходимости.
▪ Оптимизированный код Airo обеспечивает быструю обработку задач, что особенно важно при работе с большими объемами данных или в условиях сжатых сроков разработки.
▪ По сравнению с аналогичными инструментами, Airo предлагает оптимальное сочетание скорости, удобства и расширяемости, что позволяет разработчикам работать эффективнее и достигать лучших результатов.
git clone https://github.com/yourusername/airo.git
cd airo
make install
airo deploy
▪ GitHub: https://github.com/bypirob/airo
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Licensify — это инструмент для управления лицензиями программного обеспечения, разработанный компанией Devpro-Software.
▪ Защита ПО: Проект предоставляет средства для генерации, проверки и валидации лицензионных ключей, что помогает защитить ваш продукт от несанкционированного использования.
▪ Простота интеграции: Licensify легко интегрируется в существующие приложения, предоставляя удобное API для управления лицензиями.
▪ Открытый исходный код: Благодаря открытому коду, разработчики могут адаптировать и модифицировать функционал под свои нужды, улучшая и расширяя возможности системы лицензирования.
▪ Гибкость настройки: Позволяет настраивать параметры лицензирования в соответствии с конкретными бизнес-требованиями, будь то trial-версии, подписки или постоянные лицензии.
Таким образом, Licensify интересен разработчикам, которым необходимо быстро и надёжно внедрить механизм управления лицензиями в свои коммерческие приложения, обеспечив защиту и контроль над использованием программного обеспечения.
▪Github
▪ Защита ПО: Проект предоставляет средства для генерации, проверки и валидации лицензионных ключей, что помогает защитить ваш продукт от несанкционированного использования.
▪ Простота интеграции: Licensify легко интегрируется в существующие приложения, предоставляя удобное API для управления лицензиями.
▪ Открытый исходный код: Благодаря открытому коду, разработчики могут адаптировать и модифицировать функционал под свои нужды, улучшая и расширяя возможности системы лицензирования.
▪ Гибкость настройки: Позволяет настраивать параметры лицензирования в соответствии с конкретными бизнес-требованиями, будь то trial-версии, подписки или постоянные лицензии.
Таким образом, Licensify интересен разработчикам, которым необходимо быстро и надёжно внедрить механизм управления лицензиями в свои коммерческие приложения, обеспечив защиту и контроль над использованием программного обеспечения.
go get github.com/Devpro-Software/licensify
▪Github