Библиотека Go-разработчика | Golang
23.3K subscribers
2.08K photos
42 videos
87 files
4.45K links
Все самое полезное для Go-разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/32d20779

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a4a8c2468
Download Telegram
🧰 Risor — скриптовый язык для разработчиков на Go и DevOps, предназначенный для быстрого и гибкого написания скриптов. Недавно была представлена версия 1.4⚡️

Он позволяет использовать фичи стандартной библиотеки Go и поддерживает выполнение скомпилированного байткода на легковесной виртуальной машине.

Инструмент написан полностью на Go и предлагает синтаксис, который является гибридом Go и Python. Он идеально подходит для создания CLI-приложений и скриптов, интегрируемых с различными Go-пакетами и сервисами.

👉 GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8🤔5🌚42😁2
У вас было такое, что весь рабочий день занимались текущими задачами, а вечером возникало чувство, будто ничего не сделали? Если было, то как вы с этим боролись?
Anonymous Poll
22%
Поставлю значимые дела на первую половину дня
7%
Разберусь, какие задачи можно делегировать
16%
Смерюсь, ведь так работают все
25%
Да пофиг — главное работа есть
1%
Свой вариант (напишу в комментарии)
30%
Посмотреть результаты
😁3👍2
📈 Влияние предварительного выделения памяти срезов на производительность в Go

👩‍💻 Многие гоферы знают, что предварительное выделение памяти для срезов влияет на производительность.

📌 Основная идея заключается в том, что когда емкость среза меньше 256, каждое расширение создает новый срез с удвоенной емкостью; когда емкость превышает 256, каждое расширение создает новый срез с емкостью, увеличенной в 1,25 раза.

💡 Предварительное выделение памяти для срезов теоретически должно улучшать производительность по сравнению с динамическим выделением, но точное количество улучшений требует количественного измерения.

👉 Ловите бенчмарки и полезные советы по использованию инструментов, которые позволят легко обнаружить потенциальные оптимизации и интегрировать в CI.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍171
Forwarded from Библиотека программиста | программирование, кодинг, разработка
This media is not supported in your browser
VIEW IN TELEGRAM
#инфографика

Наиболее распространенные юзкейсы Kafka

1⃣ Отслеживание активности веб-приложения/веб-сайта
2⃣ Репликация баз данных
3⃣ Агрегация логов/метрик
4⃣ Потоковая обработка
5⃣ Обмен сообщениями
🔥14🥱111
Ответьте на 3 вопроса, чтобы получить вводные занятия к курсу «Алгоритмы и структуры данных»

🔥Получите вводные занятия, ответив на 3 вопроса – https://proglib.io/w/6ea6577e

На вводной части вас ждут:

1. Лекция «Производительность алгоритмов» от руководителя разработки Яндекс.Самокатов

2. Лекция «Итеративные сортировки и линейные сортировки» от аспирант департамента искусственного интеллекта ВШЭ

3. Практические задания после лекций

4. Ссылки на дополнительные материалы для самостоятельного изучения

⚡️Переходите и начинайте учиться уже сегодня – https://proglib.io/w/6ea6577e
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚21👍1😁1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🏗️📄 ТОП-10 онлайн-конструкторов резюме

Эта статья для тех, кто устал скидывать работодателям шаблонное резюме, сделанное на Хедхантере, и хочет попробовать что-нибудь новое.

👉 Читать статью
👉 Зеркало
🔥2🌚2
🔐 Представлены релизы Go 1.22.1 и 1.21.8, включающие исправления для crypto/x509, html/template, net/http, net/http/cookiejar и net/mail.

📣 Анонс
⬇️ Скачать

#новости
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17😁1
📄 pdfcpu — библиотека обработки и управления PDF-файлами. Вы можете проверять, оптимизировать, разделять и объединять PDF-файлы, извлекать элементы и многое другое. Выпущенная недавно версия 0.7.0 включает поддержку PDF 2.0, повышение производительности и несколько других фич.

👉 GitHub
👉 Сайт
👍18🤔31
👌 Код на Go: форматирование и линтинг

Соблюдать стиль кода вручную бывает непросто — нужно держать в голове принятые в команде требования. Ведущий разработчик юнита Platform as a Service в Авито Павел Агалецкий рассказывает и показывает, как использовать удобные готовые инструменты для форматирования и линтинга кода на Go.

00:00 — Вступление
00:08 — Зачем нужно форматирование кода на Go
00:45 — Форматер кода fmt
01:51 — Зачем нужен линтер кода на Go
02:08 — Линтер vet
03:52 — Линтер golangci-lint
06:40 — Линтер gofumpt
06:59 — Запускаем линтер gofumpt в режиме исправления ошибок
07:27 — Конфигурационный файл для golangci-lint
08:09 — Git Hooks
08:34 — Устанавливаем Left Hook
09:29 — Настраиваем запуск golangci-lint перед коммитом
09:37 — Коммитим изменения
09:54 — Заключение
🔥18🥱5👍4
Media is too big
VIEW IN TELEGRAM
🤔 Как устроен бинарный исполняемый файл?

Julia Evans погружается в структуру бинаря и разбирается с содержимым ELF-файлов в Linux с помощью readelf, nm и objdump.

👉 Читать
😁23👍4💯2
💡 JSON Lines (JSONL) — формат для сохранения табличных данных в Go, в котором каждая строка является допустимым JSON-объектом.

Это позволяет обрабатывать данные построчно, упрощает использование CLI-инструментов (grep, awk, wc) и уменьшает неоднозначность по сравнению с CSV. Каждая строка JSONL может содержать более сложные данные, чем CSV-строка.

#tip
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15😁142
🛠 Введение в модульное тестирование на Go

📌 Практический мини-гайд, из которого вы узнаете:

☑️ Про возможности стандартной библиотеки Go для тестирования
☑️ Как проводить и интерпретировать результаты тестов
☑️ Как решить проблемы при неудачных тестах
☑️ Как создавать и анализировать отчеты о покрытии кода
👍10👏5
🧨 Из грязи в князи: вкатился с нуля в IT за границей

Мы ищем тех, кто начинал карьеру в IT за границей без опыта и специальной подготовки. Хотим услышать ваши истории успеха и препятствий, с которыми вы столкнулись.

📝 Если вы готовы рассказать свою историю — напишите нам на [email protected]
🥱10😁5🤩4
⚡️Итоги недели в мире ИИ и обзоры новых сервисов

У нас вышла очередная статья на 📰 по мотивам еженедельной рассылки про последние новости и тенденции в мире ИИ.

Ниже — небольшая выдержка из статьи, а целиком читайте здесь 👈

💬Новости

▫️ Создан новый тест для ИИ — WMDP (Weapons of Mass Destruction Proxy), который будет проверять модели на знание:
- способов создания и применения всех видов оружия массового поражения;
- методов взлома систем кибербезопасности.
▫️Глава OpenAI Сэм Альтман обнародовал переписку с Илоном Маском, в которой последний указывает на то, что ожидает от OpenAI прибыли. Это противоречит недавним заявлениям Маска.

🛠 Инструменты

▫️Corgea — находит и автоматически исправляет уязвимости в коде.
▫️GenWebBilder — делает полнофункциональные веб-сайты по скетчам и скриншотам.
▫️Framedrop AI — автоматически конвертирует длинные видео, влоги и стримы в рилсы и короткие клипы для X и TikTok.
▫️Vocalo AI — личный репетитор, который научит свободно говорить по-английски.

👍 Робототехника

Профессор Кен Голдберг из Университета Беркли поделился соображениями по поводу технических, этических и экономических проблем, которые препятствуют широкому внедрению ИИ-роботов на данном этапе.

➡️ Вы можете подписаться на email-рассылку здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
😁32🔥1
🏃 Самоучитель по Go для начинающих. Часть 10. Введение в ООП. Наследование, абстракция, полиморфизм, инкапсуляция

В этой части самоучителя разберем основные понятия и принципы объектно-ориентированного программирования, а также рассмотрим примеры их реализации в языке Go. В конце статьи применим изученный материал на практике, решив 2 интересные задачи.

👉 Читать гайд

📌 Остальные части в серии:

1. Особенности и сфера применения Go, установка, настройка
2. Ресурсы для изучения Go с нуля
3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
4. Переменные. Типы данных и их преобразования. Основные операторы
5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
6. Функции и аргументы. Области видимости. Рекурсия. Defer
7. Массивы и слайсы. Append и сopy. Пакет slices
8. Строки, руны, байты. Пакет strings. Хеш-таблица (map)
9. Структуры и методы. Интерфейсы. Указатели. Основы ООП
👍205🔥1😁1🥱1