Packt.Microservices.with.Go.pdf
4.2 MB
Microservices with Go: Building scalable and reliable microservices with Go
Автор: Alexander Shuiskov (2022)
Вы узнаете о важности использования правильных принципов и стандартов для достижения ключевых преимуществ микросервисной архитектуры. В следующих главах вы узнаете, почему язык программирования Go является одним из самых популярных языков для разработки микросервисов, и заложите основы для следующих глав книги. Вы изучите основополагающие аспекты разработки микросервисов на языке Go, включая обнаружение сервисов, сериализацию данных, синхронное и асинхронное взаимодействие, развертывание и тестирование. После изучения аспектов разработки вы перейдете к темам обслуживания и надежности. Последняя часть посвящена более продвинутым темам разработки микросервисов Go, включая надежность системы, наблюдаемость, сопровождаемость и масштабируемость.
👉 @golang_lib
Автор: Alexander Shuiskov (2022)
Вы узнаете о важности использования правильных принципов и стандартов для достижения ключевых преимуществ микросервисной архитектуры. В следующих главах вы узнаете, почему язык программирования Go является одним из самых популярных языков для разработки микросервисов, и заложите основы для следующих глав книги. Вы изучите основополагающие аспекты разработки микросервисов на языке Go, включая обнаружение сервисов, сериализацию данных, синхронное и асинхронное взаимодействие, развертывание и тестирование. После изучения аспектов разработки вы перейдете к темам обслуживания и надежности. Последняя часть посвящена более продвинутым темам разработки микросервисов Go, включая надежность системы, наблюдаемость, сопровождаемость и масштабируемость.
👉 @golang_lib
👍2
Как контейнеризировать приложение Golang с помощью Docker для разработки и производства
Вы хотите написать приложение на языке Golang, контейнеризированное с помощью Docker? Цель этой статьи - помочь вам быстро получить приложение Golang в контейнере для разработки (с горячей загрузкой) и для использования в продакшне.
https://bartlomiejmika.com/post/2022/how-to-containerize-a-golang-app-with-docker-for-development-and-production/
👉 @golang_lib
Вы хотите написать приложение на языке Golang, контейнеризированное с помощью Docker? Цель этой статьи - помочь вам быстро получить приложение Golang в контейнере для разработки (с горячей загрузкой) и для использования в продакшне.
https://bartlomiejmika.com/post/2022/how-to-containerize-a-golang-app-with-docker-for-development-and-production/
👉 @golang_lib
👍3
✌️ Привет, на связи организатор IT-конференций Podlodka Crew! Вы можете знать нас по подкасту Podlodka, где мы обсуждаем актуальные вопросы и проблемы отрасли.
🦹♂️ Высокопроизводительные backend-сервисы можно разрабатывать на разных стеках, но именно Golang для этого создан. Это его суперспособность. Чтобы вы могли использовать её в полной мере, для второго сезона Podlodka Go Crew мы выбрали тему Highload на Go.
Уже 11 сентября вместе с экспертами из Авито, Ozon Tech и других топовых компаний:
✔️ заглянем под капот устройства памяти;
✔️ научимся превентивно находить потенциальные очаги чрезмерной нагрузки;
✔️ посмотрим на лучшие практики нагрузочного тестирования;
✔️ изучим масштабируемую технологию NATS JetStream для очередей и асинхронной коммуникации.
🎁 Бонус: каждый желающий сможет выступить на открытом микрофоне!
Let’s Go! Билеты уже в продаже. Успей забрать свой по сниженной цене 👉 https://podlodka.io/gocrew
🦹♂️ Высокопроизводительные backend-сервисы можно разрабатывать на разных стеках, но именно Golang для этого создан. Это его суперспособность. Чтобы вы могли использовать её в полной мере, для второго сезона Podlodka Go Crew мы выбрали тему Highload на Go.
Уже 11 сентября вместе с экспертами из Авито, Ozon Tech и других топовых компаний:
✔️ заглянем под капот устройства памяти;
✔️ научимся превентивно находить потенциальные очаги чрезмерной нагрузки;
✔️ посмотрим на лучшие практики нагрузочного тестирования;
✔️ изучим масштабируемую технологию NATS JetStream для очередей и асинхронной коммуникации.
🎁 Бонус: каждый желающий сможет выступить на открытом микрофоне!
Let’s Go! Билеты уже в продаже. Успей забрать свой по сниженной цене 👉 https://podlodka.io/gocrew
👍2
go-from-the-beginning.pdf
429.8 KB
Go, from the beginning
Chris Noring (2022)
In this book you will learn the following:
Build Console apps
Create Web APIs
Test your code
Create and publish reusable packages that others can consume
Organize your files in a project
Work with files and directories
Parse text with the string library and regular expressions.
👉 @golang_lib
Chris Noring (2022)
In this book you will learn the following:
Build Console apps
Create Web APIs
Test your code
Create and publish reusable packages that others can consume
Organize your files in a project
Work with files and directories
Parse text with the string library and regular expressions.
👉 @golang_lib
👍2
Бессерверная разработка приложений на Golang с использованием AWS
Бессерверные приложения в последнее время набирают популярность благодаря своей масштабируемости и простоте. В этой статье мы создадим простое приложение TODO на языке Golang с использованием бессерверных технологий AWS: Lambda, APIGateway и DynamoDB.
https://rtoch.com/posts/serverless-golang-with-lambda-and-dynamo/
👉 @golang_lib
Бессерверные приложения в последнее время набирают популярность благодаря своей масштабируемости и простоте. В этой статье мы создадим простое приложение TODO на языке Golang с использованием бессерверных технологий AWS: Lambda, APIGateway и DynamoDB.
https://rtoch.com/posts/serverless-golang-with-lambda-and-dynamo/
👉 @golang_lib
👍1
Предотвращаем утечки памяти в Go, ч. 1. Ошибки бизнес-логики
Можно любить Go за многое: за простоту и строгость, за горутины и каналы, за реализацию параллельного и асинхронного программирования, за продвинутый планировщик, за аллокатор с большим количеством оптимизаций, за высокую производительность.
Но, по сообщениям некоторых пользователей, у программ, написанных на Go, течёт память. Issue-трекер языка Go на github по запросам «high memory usage», «memory leak», «out of memory» выдаёт сотни и тысячи тикетов. А в самом популярном вопросе на stackoverflow по словосочетанию «golang memory» автор пытается разобраться, почему потребление оперативной памяти в рантайме в 4 раза превышает количество реально сделанных аллокаций. Обращения, в которых люди рапортуют о перерасходе оперативной памяти в Go, стали массовым явлением.
Что же это — утечки памяти, вызванные программистскими ошибками, или ожидаемое поведение рантайма языка? Мы попытаемся разобраться в причинах этого явления и сформулировать общие рекомендации, которые помогут в отладке проблем с потреблением памяти.
https://habr.com/ru/companies/ncloudtech/articles/675390/
👉 @golang_lib
Можно любить Go за многое: за простоту и строгость, за горутины и каналы, за реализацию параллельного и асинхронного программирования, за продвинутый планировщик, за аллокатор с большим количеством оптимизаций, за высокую производительность.
Но, по сообщениям некоторых пользователей, у программ, написанных на Go, течёт память. Issue-трекер языка Go на github по запросам «high memory usage», «memory leak», «out of memory» выдаёт сотни и тысячи тикетов. А в самом популярном вопросе на stackoverflow по словосочетанию «golang memory» автор пытается разобраться, почему потребление оперативной памяти в рантайме в 4 раза превышает количество реально сделанных аллокаций. Обращения, в которых люди рапортуют о перерасходе оперативной памяти в Go, стали массовым явлением.
Что же это — утечки памяти, вызванные программистскими ошибками, или ожидаемое поведение рантайма языка? Мы попытаемся разобраться в причинах этого явления и сформулировать общие рекомендации, которые помогут в отладке проблем с потреблением памяти.
https://habr.com/ru/companies/ncloudtech/articles/675390/
👉 @golang_lib
👍4
Предотвращаем утечки памяти в Go, ч. 2. Особенности рантайма
При отладке утечек памяти в Go у программиста в какой-то момент может возникнуть ощущение тупика. Все тривиальные ошибки бизнес-логики проверены, но утечки продолжаются, и что дальше делать — непонятно. Это означает, что пора переходить к исследованию особенностей рантайма и того, как они проявляются в конкретно взятой программе, работающей под определённой нагрузкой.
Рантайм Go — сложная, постоянно развивающаяся конструкция, в которой непросто разобраться, но мы постараемся выработать общие рекомендации по решению проблем, связанных с повышенным потреблением памяти.
https://habr.com/ru/companies/ncloudtech/articles/676960/
👉 @golang_lib
При отладке утечек памяти в Go у программиста в какой-то момент может возникнуть ощущение тупика. Все тривиальные ошибки бизнес-логики проверены, но утечки продолжаются, и что дальше делать — непонятно. Это означает, что пора переходить к исследованию особенностей рантайма и того, как они проявляются в конкретно взятой программе, работающей под определённой нагрузкой.
Рантайм Go — сложная, постоянно развивающаяся конструкция, в которой непросто разобраться, но мы постараемся выработать общие рекомендации по решению проблем, связанных с повышенным потреблением памяти.
https://habr.com/ru/companies/ncloudtech/articles/676960/
👉 @golang_lib
👍2
Cloud-Native-Go-by-Matthew-A.-Titmus.pdf
5.2 MB
Cloud Native Go
Matthew A. Titmus (2021)
Что общего между Docker, Kubernetes и Prometheus? Все эти "облачные" технологии написаны на языке программирования Go. Эта практическая книга показывает, как использовать сильные стороны языка Go для разработки облачных сервисов, масштабируемых и устойчивых даже в непредсказуемой среде. Вы изучите состав и построение этих приложений, начиная с низкоуровневых возможностей Go, паттернов проектирования среднего уровня и заканчивая высокоуровневыми архитектурными соображениями.
👉 @golang_lib
Matthew A. Titmus (2021)
Что общего между Docker, Kubernetes и Prometheus? Все эти "облачные" технологии написаны на языке программирования Go. Эта практическая книга показывает, как использовать сильные стороны языка Go для разработки облачных сервисов, масштабируемых и устойчивых даже в непредсказуемой среде. Вы изучите состав и построение этих приложений, начиная с низкоуровневых возможностей Go, паттернов проектирования среднего уровня и заканчивая высокоуровневыми архитектурными соображениями.
👉 @golang_lib
Распределенная потоковая передача сообщений в Golang с использованием Nats JetStream
В этой заметке я кратко расскажу о Nats JetStream, а затем покажу пример кросс-сервисной передачи сообщений с использованием Golang.
https://medium.com/vlmedia-tech/distributed-message-streaming-in-golang-using-nats-jetstream-29f28be66dc6
👉 @golang_lib
В этой заметке я кратко расскажу о Nats JetStream, а затем покажу пример кросс-сервисной передачи сообщений с использованием Golang.
https://medium.com/vlmedia-tech/distributed-message-streaming-in-golang-using-nats-jetstream-29f28be66dc6
👉 @golang_lib
👍3❤1
Media is too big
VIEW IN TELEGRAM
Открытое собеседование на Go-разработчика | Тренировочные интервью
0:00 Бэкграунд Сергея
0:49 Бэкграунд Даниила
1:38 Чем Даниил занимается на GO ?
2:40 Что такое ООП? Как это сделано в golang?
5:15 Структура данных. В чём ключевое отличие слайса от массива?
6:14 Можно ли сделать массив с использованием переменной? Если да, то что будет?
7:00 Как работает append в слайсе?
8:00 Задача про слайсы
8:55 Что можно сказать про мапу?
10:16 Есть ли у мапы такие же методы как у слайса: len, cap?
10:44 Какое свойство должно быть у ключа в мапе?
11:29 Может ли ключем быть структура? Если может, то всегда ли?
12:15 Что будет в мапе, если не делать make или short assign?
12:53 Что такое synс.Map ?
13:02 Race condition. Потокобезопасна ли мапа?
13:46 Как задетектить гонку?
13:57 Что есть интерфейс?
15:03 Дополнительный блок фигурных скобок в функции
17:04 Что такое замыкание?
17:32 Что такое захват переменной?
18:34 Какое поведение по умолчанию используется в golang при передаче в функцию?
19:00 Сколько можно возвращать значений из функции?
19:36 Как сделать свои методы для пакета?
20:04 Инвертирование зависимости
21:04 Какие типы каналов существуют?
22:07 Что можно делать с закрытым каналом?
23:18 Что если канал интовый и был получен ноль?
24:03 Аналог default в select'е
25:01 Что такое горутина?
26:22 Где аллоцируется память для горутин?
28:05 Что такое WaitGroup и зачем они нужны?
29:10 Как завершить много горутин?
30:30 Кейсы использования контекста
31:10 Кейс по system design
45:04 Какую архитектуру API Даниил бы выбрал для кейса?
45:15 Какие бывают версии HTTP?
47:57 Какие Devops тулзы можно использовать для кейса?
49:16 Как бы был устроен деплой для этого кейса?
51:06 Тестирование
52:38 Вопросы к Сергею
53:34 Фидбэк по собеседованию с Даниилом, вопросы из чата
1:00:08 Как работает наш сервис?
1:01:36 Вопрос про задачи на собеседовании
1:03:21 Ответы на другие вопросы
источник
👉 @golang_lib
0:00 Бэкграунд Сергея
0:49 Бэкграунд Даниила
1:38 Чем Даниил занимается на GO ?
2:40 Что такое ООП? Как это сделано в golang?
5:15 Структура данных. В чём ключевое отличие слайса от массива?
6:14 Можно ли сделать массив с использованием переменной? Если да, то что будет?
7:00 Как работает append в слайсе?
8:00 Задача про слайсы
8:55 Что можно сказать про мапу?
10:16 Есть ли у мапы такие же методы как у слайса: len, cap?
10:44 Какое свойство должно быть у ключа в мапе?
11:29 Может ли ключем быть структура? Если может, то всегда ли?
12:15 Что будет в мапе, если не делать make или short assign?
12:53 Что такое synс.Map ?
13:02 Race condition. Потокобезопасна ли мапа?
13:46 Как задетектить гонку?
13:57 Что есть интерфейс?
15:03 Дополнительный блок фигурных скобок в функции
17:04 Что такое замыкание?
17:32 Что такое захват переменной?
18:34 Какое поведение по умолчанию используется в golang при передаче в функцию?
19:00 Сколько можно возвращать значений из функции?
19:36 Как сделать свои методы для пакета?
20:04 Инвертирование зависимости
21:04 Какие типы каналов существуют?
22:07 Что можно делать с закрытым каналом?
23:18 Что если канал интовый и был получен ноль?
24:03 Аналог default в select'е
25:01 Что такое горутина?
26:22 Где аллоцируется память для горутин?
28:05 Что такое WaitGroup и зачем они нужны?
29:10 Как завершить много горутин?
30:30 Кейсы использования контекста
31:10 Кейс по system design
45:04 Какую архитектуру API Даниил бы выбрал для кейса?
45:15 Какие бывают версии HTTP?
47:57 Какие Devops тулзы можно использовать для кейса?
49:16 Как бы был устроен деплой для этого кейса?
51:06 Тестирование
52:38 Вопросы к Сергею
53:34 Фидбэк по собеседованию с Даниилом, вопросы из чата
1:00:08 Как работает наш сервис?
1:01:36 Вопрос про задачи на собеседовании
1:03:21 Ответы на другие вопросы
источник
👉 @golang_lib
👍2❤1
Go Design Patterns.pdf
4.3 MB
Go Design Patterns
Mario Castro Contreras (2017)
Изучите идиоматические, эффективные, чистые и расширяемые паттерны проектирования и параллелизма в Go с помощью TDD. Эта книга практическое руководство, наполненное многочисленными примерами, раскрывающими возможности паттернов проектирования в Go. Знакомство с моделью параллелизма CSP, объяснение GoRoutines и каналов.
👉 @golang_lib
Mario Castro Contreras (2017)
Изучите идиоматические, эффективные, чистые и расширяемые паттерны проектирования и параллелизма в Go с помощью TDD. Эта книга практическое руководство, наполненное многочисленными примерами, раскрывающими возможности паттернов проектирования в Go. Знакомство с моделью параллелизма CSP, объяснение GoRoutines и каналов.
👉 @golang_lib
Go To Memory
Как и многие языки, Go часто использует магию под названием хип (heap). Обычно, когда мы пишем наши джейсоно-гонятели, мы просто не задумываемся об этом, хоть и знаем, что это «где-то есть». Давайте попробуем заглянуть в кроличью нору поглубже и увидеть не только то, какими методами аллокатор Go старается облегчить программисту жизнь, но и то, из чего он состоит в целом.
Меня зовут Антон Киреев, я бэкенд-разработчик с опытом работы больше 11 лет. В настоящее время работаю техлидом в Авито. В жизни мне нравятся две вещи: приносить пользу своей работой и проводить свободное время с семьёй. Именно поэтому я люблю делать что-то быстро, но качественно, а потом отдыхать. Для этого я постоянно учусь и пытаюсь докапываться до сути вещей. Сегодня поговорим, как наша любимая Гошечка работает с памятью.
https://habr.com/ru/companies/oleg-bunin/articles/676332/
👉 @golang_lib
Как и многие языки, Go часто использует магию под названием хип (heap). Обычно, когда мы пишем наши джейсоно-гонятели, мы просто не задумываемся об этом, хоть и знаем, что это «где-то есть». Давайте попробуем заглянуть в кроличью нору поглубже и увидеть не только то, какими методами аллокатор Go старается облегчить программисту жизнь, но и то, из чего он состоит в целом.
Меня зовут Антон Киреев, я бэкенд-разработчик с опытом работы больше 11 лет. В настоящее время работаю техлидом в Авито. В жизни мне нравятся две вещи: приносить пользу своей работой и проводить свободное время с семьёй. Именно поэтому я люблю делать что-то быстро, но качественно, а потом отдыхать. Для этого я постоянно учусь и пытаюсь докапываться до сути вещей. Сегодня поговорим, как наша любимая Гошечка работает с памятью.
https://habr.com/ru/companies/oleg-bunin/articles/676332/
👉 @golang_lib
👍2
Руководство по сборщику мусора Go
Данное руководство предназначено для того, чтобы помочь продвинутым пользователям Go лучше понять затраты своих приложений, предоставив им сведения о сборщике мусора Go. В нем также содержатся рекомендации по использованию этих сведений для повышения эффективности использования ресурсов приложениями. Руководство не предполагает знаний о сборщике мусора, но предполагает знакомство с языком программирования Go.
https://go.dev/doc/gc-guide
👉 @golang_lib
Данное руководство предназначено для того, чтобы помочь продвинутым пользователям Go лучше понять затраты своих приложений, предоставив им сведения о сборщике мусора Go. В нем также содержатся рекомендации по использованию этих сведений для повышения эффективности использования ресурсов приложениями. Руководство не предполагает знаний о сборщике мусора, но предполагает знакомство с языком программирования Go.
https://go.dev/doc/gc-guide
👉 @golang_lib
Валидация полезной нагрузки в Go с помощью Validator
В этой статье вы узнаете, как использовать пакет go-playground/validator для валидации данных в вашем go-приложении. Для задания ограничений валидации в пакете validator используются теги struct. Это позволяет легко интегрировать его в существующие приложения без необходимости переписывать существующий код.
https://thedevelopercafe.com/articles/payload-validation-in-go-with-validator-626594a58cf6
👉 @golang_lib
В этой статье вы узнаете, как использовать пакет go-playground/validator для валидации данных в вашем go-приложении. Для задания ограничений валидации в пакете validator используются теги struct. Это позволяет легко интегрировать его в существующие приложения без необходимости переписывать существующий код.
https://thedevelopercafe.com/articles/payload-validation-in-go-with-validator-626594a58cf6
👉 @golang_lib
👍3
Повышение производительности JSON неструктурированных структур в Go
Это история о том, как мы сократили 70% расходов на облачный парсинг JSON, написав библиотеку для Go с открытым исходным кодом под названием marshmallow. 🍬🚀
https://medium.com/perimeterx/boosting-up-json-performance-of-unstructured-structs-in-go-5c2f2a017148
👉 @golang_lib
Это история о том, как мы сократили 70% расходов на облачный парсинг JSON, написав библиотеку для Go с открытым исходным кодом под названием marshmallow. 🍬🚀
https://medium.com/perimeterx/boosting-up-json-performance-of-unstructured-structs-in-go-5c2f2a017148
👉 @golang_lib
👍2
Full-Stack Web Development with Go.pdf
19.6 MB
Full-Stack Web Development with Go: Build your web applications quickly using the Go programming language and Vue.js
Автор: Nanik Tolaram (2023)
Эта книга проведет вас через создание и разработку полного современного веб-сервиса, включая аутентификацию, промежуточное ПО, рендеринг на стороне сервера, базы данных, а также современные фронтенд-фреймворки и API на базе Go. Вы начнете со структурирования приложения и таких важных аспектов, как сетевое взаимодействие, а затем интегрируете все части вместе, чтобы создать полноценный веб-продукт. Далее вы узнаете, как создать и отправить полноценный продукт, начав с фундаментальных строительных блоков создания бэкенда на Go. Вы будете применять передовые методы работы с cookies, API и безопасностью, а также совершенствовать свои навыки работы с быстрорастущим фронтенд-фреймворком Vue. Когда ваше приложение с полным стеком будет готово, вы поймете, как вывести его в продакшн и будете готовы обслуживать клиентов.
👉 @golang_lib
Автор: Nanik Tolaram (2023)
Эта книга проведет вас через создание и разработку полного современного веб-сервиса, включая аутентификацию, промежуточное ПО, рендеринг на стороне сервера, базы данных, а также современные фронтенд-фреймворки и API на базе Go. Вы начнете со структурирования приложения и таких важных аспектов, как сетевое взаимодействие, а затем интегрируете все части вместе, чтобы создать полноценный веб-продукт. Далее вы узнаете, как создать и отправить полноценный продукт, начав с фундаментальных строительных блоков создания бэкенда на Go. Вы будете применять передовые методы работы с cookies, API и безопасностью, а также совершенствовать свои навыки работы с быстрорастущим фронтенд-фреймворком Vue. Когда ваше приложение с полным стеком будет готово, вы поймете, как вывести его в продакшн и будете готовы обслуживать клиентов.
👉 @golang_lib
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Просмотрщик сборок и исходного кода Go
Установка производится с помощью обычных команд Go:
Для Linux может потребоваться добавление некоторых дополнительных зависимостей. Чтобы не собирать версию Wayland или X11, можно использовать
Для запуска программы задайте фильтр регулярных выражений для проверяемой функции. -watch позволяет автоматически перезагружать исполняемый файл и информацию при его изменении.
https://github.com/loov/lensm
👉 @golang_lib
Установка производится с помощью обычных команд Go:
go install loov.dev/lensm@main
Для Linux может потребоваться добавление некоторых дополнительных зависимостей. Чтобы не собирать версию Wayland или X11, можно использовать
go install --tags nowayland loov.dev/lensm@main
или go install --tags nox11 loov.dev/lensm@main
соответственно.Для запуска программы задайте фильтр регулярных выражений для проверяемой функции. -watch позволяет автоматически перезагружать исполняемый файл и информацию при его изменении.
lensm -watch -filter Fibonacci lensm
https://github.com/loov/lensm
👉 @golang_lib
🔥3👍1
Ozon Tech QA Meetup: тестируем на Go
В Ozon хорошо развита инфраструктура и Go-сообщество. У нас большая экспертиза в создании собственных фреймворков и обучении людей языку Go. Поэтому у нас стали появляться автотесты на Go: тестировщики хотели быть ближе к разработчикам, чтобы те могли в любой момент посмотреть тесты, что-то исправить или просто поревьюить код.
https://www.youtube.com/watch?v=oXjK672Yrbs
👉 @golang_lib
В Ozon хорошо развита инфраструктура и Go-сообщество. У нас большая экспертиза в создании собственных фреймворков и обучении людей языку Go. Поэтому у нас стали появляться автотесты на Go: тестировщики хотели быть ближе к разработчикам, чтобы те могли в любой момент посмотреть тесты, что-то исправить или просто поревьюить код.
https://www.youtube.com/watch?v=oXjK672Yrbs
👉 @golang_lib
YouTube
Ozon Tech QA Meetup: тестируем на Go
Приглашаем на второй митап, посвященный тестированию. В этот раз подробнее поговорим о тестировании на Go.
В Ozon хорошо развита инфраструктура и Go-сообщество. У нас большая экспертиза в создании собственных фреймворков и обучении людей языку Go. Поэтому…
В Ozon хорошо развита инфраструктура и Go-сообщество. У нас большая экспертиза в создании собственных фреймворков и обучении людей языку Go. Поэтому…
👍2
Реализация сегментного дерева на языке Golang
В данной статье описывается продвинутая структура данных Segment Tree и приводится ее реализация на популярном современном языке Golang. Мы решим задачу на языке SPOJ, чтобы показать, как можно использовать сегментное дерево в конкурентном программировании.
https://rtoch.com/posts/golang-segment-tree/
👉 @golang_lib
В данной статье описывается продвинутая структура данных Segment Tree и приводится ее реализация на популярном современном языке Golang. Мы решим задачу на языке SPOJ, чтобы показать, как можно использовать сегментное дерево в конкурентном программировании.
https://rtoch.com/posts/golang-segment-tree/
👉 @golang_lib
👍1