Библиотека 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
🤔 Где искать библиотеки и инструменты для своих проектов?

🧰 Подборка для Go-разработчика:

🔗 pkg.go.dev

Здесь вы можете найдете пакеты по различным критериям и получите информацию о версии, лицензии и многом другом.

🔗 GitHub

Вводите в поисковую строку language:go + свой запрос и анализируете результаты.

🔗 Awesome Go

Один из самых старых и самых поддерживаемых кураторских списков по Go.

🔗 Libhunt.com

Коллекция Go-проектов, отфильтрованных по количеству упоминаний, звезд или другим критериям.

🔗 go-recipes

Тщательно подобранный список полезных Go-инструментов, разделенных на категориям.

#tip
Please open Telegram to view this post
VIEW IN TELEGRAM
👍123
💡20 советов по тестированию из доклада Расса Кокса на GopherCon Australia 2023

📌 Оставим их в оригинале:

1. Make it easy to add new test cases.
2. Use test coverage to find untested code.
3. Coverage is no substitute for thought.
4. Write exhaustive tests.
5. Separate test cases from test logic.
6. Look for special cases.
7. If you didn’t add a test, you didn’t fix the bug.
8. Not everything fits in a table.
9. Test cases can be in testdata files.
10. Compare against other implementations.
11. Make test failures readable.
12. If the answer can change, write code to update them.
13. Use txtar for multi-file test cases.
14. Annotate existing formats to create testing mini-languages.
15. Write parsers and printers to simplify tests.
16. Code quality is limited by test quality.
17. Scripts make good tests.
18. Try rsc.io/script for your own script-based test cases.
19. Improve your tests over time.
20. Aim for continuous deployment.

👉 Источник
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍6🥱32
🤔 Запутались в кучах Go? Не волнуйтесь, вы не одиноки.

Max Hoffman из DoltHub заглянул под капот container/heap и обсудил различные аспекты реализации куч в Go, включая использование указателей на срезы и неизменяемые указатели, а также юзкейсы дженериков для упрощения работы с кучами.

👉 Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥172👍2🥱1
📊 Топ-20 опенсорсных Go-проектов по количеству упоминаний в соцсетях: коллекция от LibHunt

Многие не нуждаются в представлении, но есть и те, о которых вы могли не знать:

🔧 ollama — инструмент для локального запуска больших языковых моделей.
🔧 tailscale — самый простой и безопасный способ использования WireGuard и 2FA.
🔧 rclone — rsync для облачного хранилища
🔧 cursusdb — высокопроизводительная, распределенная документо-ориентированная in-memory БД
🔧 zen — блокировщик рекламы и средство защиты конфиденциальности для Windows, macOS и Linux
🔧 LinGo — TUI для изучения языков с помощью текста.
🔧 cli — официальный CLI-клиент для GitHub
🔧 cerbos — масштабируемое решение для авторизации
🔧 upm — универсальный менеджер пакетов (Python, Node.js, Ruby, Emacs Lisp)
🔧 gron — grep для JSON
🔧 frankenphp — cовременный сервер PHP-приложений
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥234👍2🎉2
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы

#️⃣C#

Библиотека шарписта
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие профильные каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика

💼Каналы с вакансиями

Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
👍75
Опубликованы результаты опроса Go-разработчиков за второе полугоде

📌 Основные тезисы:

🔹Linux и macOS являются наиболее часто используемыми ОС
🔹Команда Go считает, что эксперимент с шаблонами проектов (gonew) решает критические проблемы для Go-разработчиков и снижает порог входа/внедрения
🔹VS Code — самая популярная IDE. GoLand отстает от популярного редактора чуть больше, чем на 10%
🔹Go-разработчиков больше интересуют инструменты AI/ML, которые улучшают качество и производительность кода, а не написание кода для самих инструментов
🔹Трое из каждых четырех респондентов работают над Go-проектом, который использует облачные сервисы
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍102
🤔 Вы когда-нибудь путались в «первом» и «последнем» индексах при операциях вроде этой:

s := a[3:7]


Она создает срез из массива a, начиная с третьего элемента (с нулевым индексом) и до, но не включая, элемента седьмого элемента.

Таким образом, «последний» индекс кажется указывающим за пределы a.

Вместо того, чтобы напрямую сопоставлять индекс с элементом...

| G | o | p | h | e | r | s |   |
^ ^ ^ ^ ^ ^ ^ ^
0 1 2 3 4 5 6 7?

...представьте индексы, как будто они находятся между элементами.

| G | o | p | h | e | r | s |
^ ^ ^ ^ ^ ^ ^ ^
0 1 2 3 4 5 6 7

Тогда срез a[3:7] вполне естественно относится к элементам между индексом №3 и индексом №7.

#tip
Please open Telegram to view this post
VIEW IN TELEGRAM
👍49🥱511🤔1
🧠Чему вы бы хотели научиться?

Расскажите нам о ваших пожеланиях: какие навыки вы хотели бы прокачать в ближайшее время или какую профессию хотели бы приобрести?

За прохождение опроса вы получите промокод на скидку 15% на все наши курсы до конца 2024 года.

👉Опрос по ссылке👈
🥱7👍2
🏃 Самоучитель по Go для начинающих. Часть 3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста

В этом уроке мы создадим и запустим простую программу на Go и на её примере познакомимся с организацией кода и основными функциями.

🔗 Читать статью
🔗 Часть 1
🔗 Часть 2
👍8🔥5
Forwarded from Библиотека программиста | программирование, кодинг, разработка
This media is not supported in the widget
VIEW IN TELEGRAM
🔥6
🤷‍♂️ Никогда такого не было, и вот опять…

Опрос Российской ассоциации электронных коммуникаций говорит о снижении доходов IT-специалистов, тогда как те же аналитики hh.ru отмечают рост медианной зарплаты.

💬 А как поживают ваши доходы?

🥱 — упали, но незначительно
🙏 — упали сильно
🤩 — выросли
🤩110🙏33🥱33🎉4👍3
🧰 Своё кастомное межсервисное взаимодействие с блекджеком и gRPC

Разраб из Ozon Tech делится опытом реализации кастомного межсервисного взаимодействия и рассказывает про современные алгоритмы балансировки, настройку канареечного деплоя и многое другое.

👉 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20
🎥 Concurrency в Go барьеры памяти и как устроены атомики под капом: видеогайд от Владимира Балуна

📌 Что внутри:

00:00 — Введение
00:12 — Пример неправильного конкурентного кода
02:16 — Переупорядочевание инструкций компилятором
02:58 — Переупорядочевание инструкций процессором
03:40 — Пример переупорядочевания инструкций
04:32 — Основные операции с памятью
04:46 — Логические барьеры памяти
05:19 — Полный барьер (full barrier)
06:15 — Барьер записи (write barrier)
06:29 — Барьер чтения (read barrier)
07:15 — Acquire barrier
07:31 — Release barrier
07:42 — Внутреннее устройство мьютексов
08:18 — Оптимизации
08:53 — Пример правильного конкурентного кода
11:01 — Заключение
👍3541