Вакансии для Golang-разработчиков за последние 14 дней:
✓ Golang разработчик Гибрид/офис (Москва), Полная занятость
✓ Backend Developer Удалёнка (Москва), от 3000$
✓ Golang Blockchain Engineer Удалённо, от 450 000 до 525 000 ₽
✓ Backend Golang-разработчик Удалёнка, 2500–5500 $
✓ Go Developer.Удалёнка, 4 000 – 5 600 $
#подборка #go
✓ Golang разработчик Гибрид/офис (Москва), Полная занятость
✓ Backend Developer Удалёнка (Москва), от 3000$
✓ Golang Blockchain Engineer Удалённо, от 450 000 до 525 000 ₽
✓ Backend Golang-разработчик Удалёнка, 2500–5500 $
✓ Go Developer.Удалёнка, 4 000 – 5 600 $
#подборка #go
Восстановить IP
Сложность: Средняя
Условие задачи: Рабочий IP-адрес состоит ровно из четырех целых чисел, разделенных одиночными точками. Каждое целое число находится в диапазоне от 0 до 255 (включительно) и не может содержать начальных нулей.
Например, "0.1.2.201" и "192.168.1.1" являются допустимыми IP-адресами, но "0.011.255.245", "192.168.1.312" и "[email protected] " являются недопустимыми IP-адресами.
Учитывая строку s, содержащую только цифры, верните все возможные действительные IP-адреса, которые могут быть сформированы путем вставки точек в s. Вам не разрешается изменять порядок или удалять какие-либо цифры в s. Вы можете вернуть действительные IP-адреса в любом порядке.
Пример:
Ввод:
Вывод:
Ввод:
Вывод:
Решение задачи
Пишите свое решение в комментариях👇
Сложность: Средняя
Условие задачи: Рабочий IP-адрес состоит ровно из четырех целых чисел, разделенных одиночными точками. Каждое целое число находится в диапазоне от 0 до 255 (включительно) и не может содержать начальных нулей.
Например, "0.1.2.201" и "192.168.1.1" являются допустимыми IP-адресами, но "0.011.255.245", "192.168.1.312" и "[email protected] " являются недопустимыми IP-адресами.
Учитывая строку s, содержащую только цифры, верните все возможные действительные IP-адреса, которые могут быть сформированы путем вставки точек в s. Вам не разрешается изменять порядок или удалять какие-либо цифры в s. Вы можете вернуть действительные IP-адреса в любом порядке.
Пример:
Ввод:
s = "25525511135"Вывод:
["255.255.11.135","255.255.111.35"]Ввод:
s = "0000"Вывод:
["0.0.0.0"]Решение задачи
Пишите свое решение в комментариях👇
👍6❤1
This media is not supported in your browser
VIEW IN TELEGRAM
👣 Huh.
Huh: простая, мощная библиотека для создания терминальных форм (написана на Go).
▪️Github
@golangprofi
Huh: простая, мощная библиотека для создания терминальных форм (написана на Go).
▪️Github
@golangprofi
😱4
Список интересных Go проектов
1. DDosify — Performance Testing Platform
DDosify - это хороший инструмент, если вы хотите проверить, как поведет себя ваше приложение при большом количестве пользователей, обращающихся к нему со всего мира.
2. Kopia — Cross-platform Backup Tool
Kopia предлагает удобный и простой способ создания копий зашифрованных и сжатых данных и сохранения в облачном хранилище.
3. Traefik — Reverse Proxy And Load Balancer
Traefik довольно популярен, поэтому вы, возможно, уже знакомы с ним. Это хороший инструмент для самостоятельной настройки прокси для ваших микросервисов.
4. Httpx — HTTP Toolkit
С помощью Httpx можно регулярно отправлять запросов для получения данных о веб-сайтах. Мне нравится использовать его для проверки работоспособности моих сайтов и приложений.
5. Evcc — Extensible EV Charge Controller
Evcc - это многоязычный контроллер для электромобилей на Go.
1. DDosify — Performance Testing Platform
DDosify - это хороший инструмент, если вы хотите проверить, как поведет себя ваше приложение при большом количестве пользователей, обращающихся к нему со всего мира.
2. Kopia — Cross-platform Backup Tool
Kopia предлагает удобный и простой способ создания копий зашифрованных и сжатых данных и сохранения в облачном хранилище.
3. Traefik — Reverse Proxy And Load Balancer
Traefik довольно популярен, поэтому вы, возможно, уже знакомы с ним. Это хороший инструмент для самостоятельной настройки прокси для ваших микросервисов.
4. Httpx — HTTP Toolkit
С помощью Httpx можно регулярно отправлять запросов для получения данных о веб-сайтах. Мне нравится использовать его для проверки работоспособности моих сайтов и приложений.
5. Evcc — Extensible EV Charge Controller
Evcc - это многоязычный контроллер для электромобилей на Go.
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Быстрый клиент Golang Redis, который выполняет автоматическую конвейерную обработку и поддерживает кэширование на стороне клиента.
package main
import (
"context"
"github.com/redis/rueidis"
)
func main() {
client, err := rueidis.NewClient(rueidis.ClientOption{InitAddress: []string{"127.0.0.1:6379"}})
if err != nil {
panic(err)
}
defer client.Close()
ctx := context.Background()
// SET key val NX
err = client.Do(ctx, client.B().Set().Key("key").Value("val").Nx().Build()).Error()
// HGETALL hm
hm, err := client.Do(ctx, client.B().Hgetall().Key("hm").Build()).AsStrMap()
}
▪️ Github
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1🤔1😱1
Вакансии для Golang-разработчиков за последние 14 дней:
✓ Golang Software Engineer. Удалённо, 6000–7000
✓ Backend Developer Удалёнка, 250 000–400 000 ₽
✓ Backend Golang-разработчик Удалённо, от 2500 до 5500 $
✓ GO Engineer Удалённо, 6000–7000 $
✓ Golang разработчик Удалённо/гибрид (Ульяновск/Краснодар), 150–230 т.р.
✓ Golang Developer (architect) Удалённо, 4 000–6 000 $
✓ Golang Backend Удалённо (МСК), 350–400 т.р.
✓ Golang Backend Developer Удалёнка (РФ), 280–350 т.р.
✓ Golang + Blockchain Software Engineer Удалённо, 6000–7000 USD
✓ Golang Blockchain Engineer Удалённо, 6 000–7 000 USD
#подборка #go
✓ Golang Software Engineer. Удалённо, 6000–7000
✓ Backend Developer Удалёнка, 250 000–400 000 ₽
✓ Backend Golang-разработчик Удалённо, от 2500 до 5500 $
✓ GO Engineer Удалённо, 6000–7000 $
✓ Golang разработчик Удалённо/гибрид (Ульяновск/Краснодар), 150–230 т.р.
✓ Golang Developer (architect) Удалённо, 4 000–6 000 $
✓ Golang Backend Удалённо (МСК), 350–400 т.р.
✓ Golang Backend Developer Удалёнка (РФ), 280–350 т.р.
✓ Golang + Blockchain Software Engineer Удалённо, 6000–7000 USD
✓ Golang Blockchain Engineer Удалённо, 6 000–7 000 USD
#подборка #go
🦦 Otter
Самая быстрая библиотека golang in-memory cache, основанная на алгоритме
Внутри используется хеш таблица, которая имеет мьютекс на каждый бакет
Также исрользуется несколько трюков для избегания частых локов политики вытеснения: при чтении используются wait-free буфферы, которые иногда могут терять данные, но так как главная задача кеша - хранить наиболее частые элементы, то потери незначительны + реализация mpsc очереди при записи, которая значительно превосходит каналы по перфомансу и принцип из статьи bp-wrapper, который коротко можно назвать "batch, batch, batch" aka кеш не обновляет политику мгновенно, а только после наполнения небольшого буффера.
Самая быстрая библиотека golang in-memory cache, основанная на алгоритме
S3-FIFO. Раюотает во много раз быстрее, чем Ristretto.Внутри используется хеш таблица, которая имеет мьютекс на каждый бакет
+ seq lock для чтения + каждый бакет помещается в две кеш линии, что предотвращает false sharing и это намногооо быстрее map с мьютексом и sync.Map. Также исрользуется несколько трюков для избегания частых локов политики вытеснения: при чтении используются wait-free буфферы, которые иногда могут терять данные, но так как главная задача кеша - хранить наиболее частые элементы, то потери незначительны + реализация mpsc очереди при записи, которая значительно превосходит каналы по перфомансу и принцип из статьи bp-wrapper, который коротко можно назвать "batch, batch, batch" aka кеш не обновляет политику мгновенно, а только после наполнения небольшого буффера.
go get -u github.com/maypok86/otter
▪️GithubВакансии для Golang-разработчиков за последние 14 дней:
✓ Golang Developer. Гибрид (Москва), до 220 000 ₽
✓ Backend разработчик. Удалённо, от 290 000 ₽
✓ Golang разработчикУдалёнка, 230–250 т.р.
✓ Golang Developer Удалёнка (РФ), 200–240 т.р.
✓ Golang Blockchain Engineer. Удалённо, 6 000–7 000 USD
✓ Golang Developer Удалённо/офис (Азербайджан, Баку), 400–500 тыс. руб.
✓ Golang Developer Гибрид/удалённо (Москва), 400 000–450 000 ₽
✓ Backend Engineer Офис, 290–310 т.р.
#подборка #go
✓ Golang Developer. Гибрид (Москва), до 220 000 ₽
✓ Backend разработчик. Удалённо, от 290 000 ₽
✓ Golang разработчикУдалёнка, 230–250 т.р.
✓ Golang Developer Удалёнка (РФ), 200–240 т.р.
✓ Golang Blockchain Engineer. Удалённо, 6 000–7 000 USD
✓ Golang Developer Удалённо/офис (Азербайджан, Баку), 400–500 тыс. руб.
✓ Golang Developer Гибрид/удалённо (Москва), 400 000–450 000 ₽
✓ Backend Engineer Офис, 290–310 т.р.
#подборка #go
❤1
Вакансии для C#/.NET разработчиков за последние 14 дней:
✓ C#/.NET-разработчик Удалёнка или гибрид (Москва), 170–200 т.р.
✓ C# Developer Удалённо (РФ), 1400$ - 2500$
✓ .NET разработчик Middle Удалённо, 240–280 т.р.
✓ C#/.NET-разработчик Удалённо/гибрид, 170–200 т.р.
✓ Fullstack QA на С# Удалённо (РФ), 250 000 - 370 000 ₽
✓ QA full stack C# Удалённо (РФ), 250 000 - 280 000 ₽
✓ .NET Backend Developer Удалённо (Бразилия), 5 000 - 6 500 $
✓ C# .NET разработчик Удалёнка, 450-500 т.р.
✓ QA Engineer C# Удалённо (РФ), 334 000 - 378 000 ₽
✓ C# developer Гибрид (Москва), до 350 000 ₽
#подборка #csharp
✓ C#/.NET-разработчик Удалёнка или гибрид (Москва), 170–200 т.р.
✓ C# Developer Удалённо (РФ), 1400$ - 2500$
✓ .NET разработчик Middle Удалённо, 240–280 т.р.
✓ C#/.NET-разработчик Удалённо/гибрид, 170–200 т.р.
✓ Fullstack QA на С# Удалённо (РФ), 250 000 - 370 000 ₽
✓ QA full stack C# Удалённо (РФ), 250 000 - 280 000 ₽
✓ .NET Backend Developer Удалённо (Бразилия), 5 000 - 6 500 $
✓ C# .NET разработчик Удалёнка, 450-500 т.р.
✓ QA Engineer C# Удалённо (РФ), 334 000 - 378 000 ₽
✓ C# developer Гибрид (Москва), до 350 000 ₽
#подборка #csharp
👎8🤔3👍1
Вакансии для Golang-разработчиков за последние 14 дней:
✓ Golang Blockchain Engineer Удалённо, 6000–7000
✓ Golang Engineer Удалённо
✓ Golang Developer Удалённо (РФ)
✓ Go Developer Гибрид, от 5000 до 6000£
✓ Go-разработчик Удалёнка (РФ), 300–340 т.р.
✓ Golang Engineer Удалёнка, 5000 USD
✓ Ведущий Golang-разработчик. Удалённо/гибрид (Москва), от 300 000 до 350 000 ₽
✓ Go разработчик Удалёнка, 300 000 ₽
✓ Go разработчик Удалёнка, 300 000 ₽
#подборка #go
✓ Golang Blockchain Engineer Удалённо, 6000–7000
✓ Golang Engineer Удалённо
✓ Golang Developer Удалённо (РФ)
✓ Go Developer Гибрид, от 5000 до 6000£
✓ Go-разработчик Удалёнка (РФ), 300–340 т.р.
✓ Golang Engineer Удалёнка, 5000 USD
✓ Ведущий Golang-разработчик. Удалённо/гибрид (Москва), от 300 000 до 350 000 ₽
✓ Go разработчик Удалёнка, 300 000 ₽
✓ Go разработчик Удалёнка, 300 000 ₽
#подборка #go
Telegram
Вакансии Golang
Golang Blockchain Engineer
Формат: удалённо
ЗП: 6 000 – 7 000 ₵
Полная занятость
Описание: https://telegra.ph/Golang-Blockchain-Engineer-10-11
#remote #fulltime
Связаться с HR - @HRT_tech
Формат: удалённо
ЗП: 6 000 – 7 000 ₵
Полная занятость
Описание: https://telegra.ph/Golang-Blockchain-Engineer-10-11
#remote #fulltime
Связаться с HR - @HRT_tech
❤2
Go давно вышел за рамки веба. На нём уже пишут базы и прокси, видео-сервисы, блокчейн-узлы, компиляторы и даже игры — и делают это не ради эксперимента, а в продакшене.
В новом сезоне онлайн-конференции Podlodka Go Crew (10-14 ноября) разбираемся, как язык открывает путь к более сложным и интересным задачам — от инфраструктуры и DevEx до real-time и системных сервисов — и почему это отличный шанс вырасти как инженер.
В программе:
⚙️ Как сделать быстрый клиент для базы данных. Разберём, как реализовать асинхронное взаимодействие с БД на Go на примере Tarantool, какие оптимизации реально ускоряют код и как эволюционировать от наивного решения до производительного, — вместе с Олегом Жуковцом (VK Tech).
🌐 Как управлять сетями прямо из Go. Посмотрим, как устроены интерфейсы в Linux, как ими управлять и собирать сложные топологии без боли. Узнаем, как работает CNI в Kubernetes и почему мир виртуальных сетей держится на Go, в докладе Даниила Губанова (Точка).
🔒 Блокчейн как real-time система. Без маркетинга: только Go, каналы, горутины и контроль над хаосом. Разберём блокчейн как инженерную задачу: сеть, криптографию и конкуррентность — вместе с Ниной Лукиной (01tech).
💬 Круглый стол «Когда Go выходит за рамки». Поговорим с нанимающими тимлидами о том, кого ищут под нестандартные Go-задачи: где важны инженерная зрелость, осознанность и умение разбираться в системах под капотом, — и как туда попасть.
💡Тем, кто хочет вырасти из CRUD-сервисов и попробовать себя в системных и инфраструктурных задачах, будет особенно полезно.
🗓 Билеты уже на https://podlodka.io/gocrew
В новом сезоне онлайн-конференции Podlodka Go Crew (10-14 ноября) разбираемся, как язык открывает путь к более сложным и интересным задачам — от инфраструктуры и DevEx до real-time и системных сервисов — и почему это отличный шанс вырасти как инженер.
В программе:
⚙️ Как сделать быстрый клиент для базы данных. Разберём, как реализовать асинхронное взаимодействие с БД на Go на примере Tarantool, какие оптимизации реально ускоряют код и как эволюционировать от наивного решения до производительного, — вместе с Олегом Жуковцом (VK Tech).
🌐 Как управлять сетями прямо из Go. Посмотрим, как устроены интерфейсы в Linux, как ими управлять и собирать сложные топологии без боли. Узнаем, как работает CNI в Kubernetes и почему мир виртуальных сетей держится на Go, в докладе Даниила Губанова (Точка).
🔒 Блокчейн как real-time система. Без маркетинга: только Go, каналы, горутины и контроль над хаосом. Разберём блокчейн как инженерную задачу: сеть, криптографию и конкуррентность — вместе с Ниной Лукиной (01tech).
💬 Круглый стол «Когда Go выходит за рамки». Поговорим с нанимающими тимлидами о том, кого ищут под нестандартные Go-задачи: где важны инженерная зрелость, осознанность и умение разбираться в системах под капотом, — и как туда попасть.
💡Тем, кто хочет вырасти из CRUD-сервисов и попробовать себя в системных и инфраструктурных задачах, будет особенно полезно.
🗓 Билеты уже на https://podlodka.io/gocrew
📌 Задача палиндром наибольшей длины, полученный с помощью соединений из слов, состоящих из двух букв.
Сложность: Средняя
Условие задачи: дан массив строк, каждый элемент которого состоит из двух букв английского алфавита в нижнем регистре.
Необходимо создать палиндром наибольшей длины путем выбора некоторых элементов из массива строк и компаниовки их в любом порядке. Каждый элемент массива можно использовать не более одного раза.
В ответе надо вернуть длину такого палидрома.
Палиндром - строка, которая одинаково читаются слева направо и справа налево.
Пример:
Ввод:
Объяснение:
Ввод:
Объяснение:
Ввод:
Решение
Пишите свое решение в комментариях👇
Сложность: Средняя
Условие задачи: дан массив строк, каждый элемент которого состоит из двух букв английского алфавита в нижнем регистре.
Необходимо создать палиндром наибольшей длины путем выбора некоторых элементов из массива строк и компаниовки их в любом порядке. Каждый элемент массива можно использовать не более одного раза.
В ответе надо вернуть длину такого палидрома.
Палиндром - строка, которая одинаково читаются слева направо и справа налево.
Пример:
Ввод:
words = ["lc","cl","gg"]
Вывод: 6Объяснение:
lc" + "gg" + "cl" = "lcggcl" или же "clgglc", но оба имеют максимальную длину 6. Ввод:
words = ["ab","ty","yt","lc","cl","ab"]
Вывод: 8 Объяснение:
"ty" + "lc" + "cl" + "yt" = "tylcclyt" или "lcyttycl"Ввод:
words = ["cc","ll","xx"]
Вывод: 2Решение
Пишите свое решение в комментариях👇
КОНФЕРЕНЦИЯ ПО GO — от БАШНИ❗️
Погрузись в мир Go и узнай, как этот язык работает под капотом у крупнейших IT-компаний🤙
На конференции тебя ждет:
Два трека:
🟣 Первый шаг в Go: от нуля к коду 🥹
🟣 Go: от идей до реальных сервисов 🥹
🔥 Спикеры из ведущих IT компаний:
✨ Сбер — эксперты, превращающие Go-сервисы в масштабируемые решения на Kubernetes
💚 Авито — инженеры, отвечающие за стабильность и развитие платёжных систем
Топовые спикеры из Башни🙃 c опытом работы:
💬 VK
💜 Wildberries
🎥 Rutube
🟣 Реальные кейсы и лайфхаки от инженеров индустрии👌
🟣 Советы по карьере и росту в IT🧐
🟣 Живое общение с экспертами в Go-разработке✨
🟣 Много мерча и подарков🎁
Регистрируйся, стань частью Go-комьюнити и прокачай себя вместе с лучшими разработчиками🤩
регистрация в miniapp
Погрузись в мир Go и узнай, как этот язык работает под капотом у крупнейших IT-компаний
На конференции тебя ждет:
Два трека:
Топовые спикеры из Башни
🎥 Rutube
Регистрируйся, стань частью Go-комьюнити и прокачай себя вместе с лучшими разработчиками
регистрация в miniapp
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
БАШНЯ
Развиваем IT-сообщество
Миниапп - t.iss.one/bashnyatech_bot/bashnyaapp
Ютуб - clck.ru/3CxnqH
Тик ток - www.tiktok.com/@bashnya_education
Инста - www.instagram.com/bashnya_education
По вопросам - @mmmaaarina
Миниапп - t.iss.one/bashnyatech_bot/bashnyaapp
Ютуб - clck.ru/3CxnqH
Тик ток - www.tiktok.com/@bashnya_education
Инста - www.instagram.com/bashnya_education
По вопросам - @mmmaaarina
Вакансии для Golang-разработчиков за последние 14 дней:
✓ Go PHP Developer. Удалёнка, $3700–4200
✓ Golang Developer. Удалёнка/гибрид/офис (Ташкент), $3200–4000
✓ Golang Developer. Удалёнка/офис (Лиссабон, Португалия), $4000–6000
✓ Tech Lead Backend-команды (Go). Удалёнка/офис, 7000–9000 €
✓ Go Developer. Удалёнка (РФ, РБ)
✓ Golang разработчик. Удалёнка/офис/гибрид
✓ Golang Разработчик. Офис/удалёнка/гибрид (Москва, Краснодар, Иннополис)
✓ Golang Developer. Гибрид
#подборка #go
✓ Go PHP Developer. Удалёнка, $3700–4200
✓ Golang Developer. Удалёнка/гибрид/офис (Ташкент), $3200–4000
✓ Golang Developer. Удалёнка/офис (Лиссабон, Португалия), $4000–6000
✓ Tech Lead Backend-команды (Go). Удалёнка/офис, 7000–9000 €
✓ Go Developer. Удалёнка (РФ, РБ)
✓ Golang разработчик. Удалёнка/офис/гибрид
✓ Golang Разработчик. Офис/удалёнка/гибрид (Москва, Краснодар, Иннополис)
✓ Golang Developer. Гибрид
#подборка #go
Telegram
Вакансии Golang
Go PHP Developer
Формат: удалённо
ЗП: $ 3700 - 4200
Полная занятость
Описание: https://telegra.ph/Go-PHP-Developer-10-25
#remote #middle #fulltime
Связаться с HR - @Mat_Rocks
Формат: удалённо
ЗП: $ 3700 - 4200
Полная занятость
Описание: https://telegra.ph/Go-PHP-Developer-10-25
#remote #middle #fulltime
Связаться с HR - @Mat_Rocks
👍1👎1
🌐 HTTP уже не тянет? В микросервисной архитектуре запросы множатся, скорость падает, а код превращается в клубок зависимостей. Настало время познакомиться с инструментом, который решает эти проблемы изящно — gRPC.
📗 На открытом уроке вы разберёте, как работает этот фреймворк, почему он вытесняет REST и как описывать API с помощью Protobuf. Вы узнаете, как обеспечить обратную совместимость между сервисами, повысить производительность и упростить взаимодействие микросервисов.
❗️После вебинара вы сможете строить быстрые и надёжные коммуникации между сервисами на Go — с чистой архитектурой и минимумом боли.
➡️ 12 ноября в 20:00 МСК. Открытый вебинар проходит в преддверии старта курса «Golang Developer. Professional». Регистрируйтесь и узнайте, почему gRPC становится стандартом нового поколения для Go-разработчиков: https://vk.cc/cR576N
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
📗 На открытом уроке вы разберёте, как работает этот фреймворк, почему он вытесняет REST и как описывать API с помощью Protobuf. Вы узнаете, как обеспечить обратную совместимость между сервисами, повысить производительность и упростить взаимодействие микросервисов.
❗️После вебинара вы сможете строить быстрые и надёжные коммуникации между сервисами на Go — с чистой архитектурой и минимумом боли.
➡️ 12 ноября в 20:00 МСК. Открытый вебинар проходит в преддверии старта курса «Golang Developer. Professional». Регистрируйтесь и узнайте, почему gRPC становится стандартом нового поколения для Go-разработчиков: https://vk.cc/cR576N
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
🤣1
Cache-Control. Простота настройки делает Reload удобным инструментом для ускорения разработки и тестирования. Она идеально подходит для разработчиков, которые хотят минимизировать рутинные задачи и сосредоточиться на создании функционального и качественного кода.Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1
13 ноября(уже в четверг!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Go-разработчика.
Как это будет:
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Go-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_go_bot
Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
👣 Почему сообщество #golang старается не использовать сторонние библиотеки?
Некоторые причины исторические (до
Безопасность - когда вы добавляете зависимость, вы добавляете разработчика (или команду разработчиков), с которым вы никогда не взаимодействовали, в качестве участника вашего проекта. Вы должны проанализировать библиотеку, как если бы она была написана собственными силами, и убедиться, что она соответствует вашим задачам и не несет никакого риска.
Сложность в поддержке - теперь вы и ваша команда должны поддерживать добавленную библиотеку в актуальном состоянии.
Воспроизводимые сборки - Вы можете добиться этого с помощью библиотек сторонних производителей, но чем меньше вам придется об этом беспокоиться, тем лучше.
Просто нет необходимости - Это одна из лучших причин. В Go есть замечательная стандартная библиотека, и вы можете добиться очень многого, используя ее.
Так когда же следует обращаться к библиотеке?
Если то, что вы хотите реализовать, является функционально сложным, имеет приемущества от поддержки сообществом и берется из надежного источника, то использование библиотеки может быть хорошим вариантом.
Примерами библиотек, которые, на мой взгляд, являются достойными для внимания:
- Библиотеки шин сообщений (Kafka, RabbitMQ и т.д.)
- Библиотеки БД (Mongo, Postgres).
- Сложные криптографические вещи алгоритмы, которые не поддерживаются стандартной библиотекой.
👇 Напишите в комментаряих о ваших любимых сторонних библиотеках.
@golangprofi
Некоторые причины исторические (до
Go 1.11 в Go была довольно печальная история управления зависимостями), некоторые культурные (сообщество Go пропагандирует простоту и самодостаточность), но некоторые из них, я бы сказал, являются хорошей практикой независимо от используемого языка.Безопасность - когда вы добавляете зависимость, вы добавляете разработчика (или команду разработчиков), с которым вы никогда не взаимодействовали, в качестве участника вашего проекта. Вы должны проанализировать библиотеку, как если бы она была написана собственными силами, и убедиться, что она соответствует вашим задачам и не несет никакого риска.
Сложность в поддержке - теперь вы и ваша команда должны поддерживать добавленную библиотеку в актуальном состоянии.
Воспроизводимые сборки - Вы можете добиться этого с помощью библиотек сторонних производителей, но чем меньше вам придется об этом беспокоиться, тем лучше.
Просто нет необходимости - Это одна из лучших причин. В Go есть замечательная стандартная библиотека, и вы можете добиться очень многого, используя ее.
Так когда же следует обращаться к библиотеке?
Если то, что вы хотите реализовать, является функционально сложным, имеет приемущества от поддержки сообществом и берется из надежного источника, то использование библиотеки может быть хорошим вариантом.
Примерами библиотек, которые, на мой взгляд, являются достойными для внимания:
- Библиотеки шин сообщений (Kafka, RabbitMQ и т.д.)
- Библиотеки БД (Mongo, Postgres).
- Сложные криптографические вещи алгоритмы, которые не поддерживаются стандартной библиотекой.
👇 Напишите в комментаряих о ваших любимых сторонних библиотеках.
@golangprofi
«Я опять убил полдня не на код, а на эту возню с Кубом!»
Опять ждёшь DevOps, чтобы поправить одну строчку в манифесте?
Задолбало, что инфраструктура — вечный блокер твоих задач?
Если хочешь сам, без мам, пап и DevOps:
👉 Поднимать локалку для тестов за 5 минут, а не ждать неделю.
👉 Дебажить сервисы прямо в K8s, а не гадать по логам.
👉 Уверенно править манифесты, понимая, что и зачем ты делаешь.
➡️ Тогда тебе на курс «Kubernetes для разработчиков»
Научим всем нужным фишкам, чтобы ты сам рулил деплоями
и наконец-то сосредоточился на коде, а не согласовывал каждый «чих» в инфре.
Старт уже 24 ноября.
Записывайся по ссылке — места не бесконечны 😉
Опять ждёшь DevOps, чтобы поправить одну строчку в манифесте?
Задолбало, что инфраструктура — вечный блокер твоих задач?
Если хочешь сам, без мам, пап и DevOps:
👉 Поднимать локалку для тестов за 5 минут, а не ждать неделю.
👉 Дебажить сервисы прямо в K8s, а не гадать по логам.
👉 Уверенно править манифесты, понимая, что и зачем ты делаешь.
➡️ Тогда тебе на курс «Kubernetes для разработчиков»
Научим всем нужным фишкам, чтобы ты сам рулил деплоями
и наконец-то сосредоточился на коде, а не согласовывал каждый «чих» в инфре.
Старт уже 24 ноября.
Записывайся по ссылке — места не бесконечны 😉
This media is not supported in your browser
VIEW IN TELEGRAM
⭐️ Две структуры с одинаковыми полями могут иметь разный размер.
Это явление известно как "padding", понятие, заимствованное из языка C++, но применимое и в Go.
Рассмотрим приведенный выше пример.
Структуры
Она увеличивается до
Это явление известно как "padding", понятие, заимствованное из языка C++, но применимое и в Go.
Рассмотрим приведенный выше пример.
Структуры
A и B имеют совершенно одинаковые поля, но если просто переставить порядок полей, то структура A станет в два раза больше. Она увеличивается до
32 байт, в то время как структура B остается меньше - 16 байт.👍4