Объёмная статья о реализации шаблона backend сервера на Golang, в которой каждый найдёт для себя что-то полезное.
Часть 1 (HTTP сервер)
Часть 2 (REST API)
Часть 1 (HTTP сервер)
Часть 2 (REST API)
Хабр
Шаблон backend сервера на Golang — часть 1 (HTTP сервер)
Представленный ниже шаблон сервера на Golang был подготовлен для передачи знаний внутри нашей команды. Основная цель шаблона, кроме обучения — это снизить время...
История о том, как исследователь безопасности нашел критическую уязвимость в инфраструктуре Uber, основанной на Golang: https://proglib.io/w/3eddca16
Medium
How dangerous is Request Splitting, a vulnerability in Golang or how we found the RCE in Portainer and hacked Uber
SSRF + CRLF + HTTP Pipeline + Docker API = RCE
Руководство по оформлению кода от разработчиков Thanos с оглядкой на читаемость, производительность, тестируемость и др.
https://proglib.io/w/4bcabd36
https://proglib.io/w/4bcabd36
GitHub
GitHub - thanos-io/thanos: Highly available Prometheus setup with long term storage capabilities. A CNCF Incubating project.
Highly available Prometheus setup with long term storage capabilities. A CNCF Incubating project. - thanos-io/thanos
Go-разработчик с нуля всего за год!
Нравится программирование, но не можешь разобраться во всем самостоятельно? Мы поможем освоить новую профессию и расскажем, как найти высокооплачиваемую работу после обучения!
Переходи по ссылке и регистрируйся ▶️ https://clc.to/rQhbFg
На курсе «Профессия Go-разработчик» ты получишь базовые знания программирования, а также подробное обучение по работе с Golang. Пройдя обучающий курс, ты создашь крутое портфолио и сможешь претендовать на должность junior-программиста. А еще, дарим 2 месяца бесплатного английского в онлайн школе «EnglishDom»
Первым 20 студентам скидка 40% на обучение!
Нравится программирование, но не можешь разобраться во всем самостоятельно? Мы поможем освоить новую профессию и расскажем, как найти высокооплачиваемую работу после обучения!
Переходи по ссылке и регистрируйся ▶️ https://clc.to/rQhbFg
На курсе «Профессия Go-разработчик» ты получишь базовые знания программирования, а также подробное обучение по работе с Golang. Пройдя обучающий курс, ты создашь крутое портфолио и сможешь претендовать на должность junior-программиста. А еще, дарим 2 месяца бесплатного английского в онлайн школе «EnglishDom»
Первым 20 студентам скидка 40% на обучение!
Для работы с ядром и системными I/O-вызовами в Go есть специальный интерфейс
https://proglib.io/w/9a4460ef
io_uring
. В статье показано, как с ним работать и в чем заключаются его особенности.https://proglib.io/w/9a4460ef
Что выведет программа?
Anonymous Quiz
54%
aello
35%
Ошибка компиляции
6%
Нет правильного ответа
5%
Посмотреть результаты
Вы знаете, что строки в Go неизменны. Как только строка создана, её невозможно изменить.
В строке 8 мы пытаемся изменить первый символ строки на «
Чтобы обойти неизменность строки, их преобразуют в срез руны. Затем этот фрагмент мутирует с любыми необходимыми изменениями и преобразуется обратно в новую строку.
Обратите внимание на картинку, прикреплённую к посту. В строке 7 приведенной программы функция
В строке 8 мы пытаемся изменить первый символ строки на «
а
». Любой символ Unicode в одинарной кавычке является руной
. Мы пытаемся назначить руну а
нулевой позиции среза. Это недопустимо, поскольку строка является неизменной, и, следовательно, такая программа скомпилируется с ошибкой.Чтобы обойти неизменность строки, их преобразуют в срез руны. Затем этот фрагмент мутирует с любыми необходимыми изменениями и преобразуется обратно в новую строку.
Обратите внимание на картинку, прикреплённую к посту. В строке 7 приведенной программы функция
mutate
принимает срез руны в качестве аргумента. Затем она изменяет первый элемент среза на «а
», преобразовывает руну обратно в строку и возвращает её. Этот метод вызывается из строки 13 программы. Переменная h
преобразуется в срез руны и передаётся для изменения в строке 13, что приводит к корректной работе и выводу aello
.Hands_On_GUI_Application_Development_in_Go_by_Andrew_Williams_z.epub
16 MB
Hands-On GUI Application Development in Go (2019)
Автор(ы): Andrew Williams
С помощью книги вы откроете для себя библиотеки GUI Golang, такие как Go-GTK (GIMP Toolkit) и Go-Qt, и научитесь создавать красивые, производительные и отзывчивые графические приложения.
В книге рассматриваются лучшие практики работы с доступными наборами инструментов, включая Walk, Shiny и Fyne.
В конечном итоге вы изучите преимущества и сложности создания собственных графических приложений на Go, получите представление о том, как Go упрощает разработку кроссплатформенных графических приложений, научитесь разрабатывать графические приложения для Windows с использованием Walk и многое другое.
Автор(ы): Andrew Williams
С помощью книги вы откроете для себя библиотеки GUI Golang, такие как Go-GTK (GIMP Toolkit) и Go-Qt, и научитесь создавать красивые, производительные и отзывчивые графические приложения.
В книге рассматриваются лучшие практики работы с доступными наборами инструментов, включая Walk, Shiny и Fyne.
В конечном итоге вы изучите преимущества и сложности создания собственных графических приложений на Go, получите представление о том, как Go упрощает разработку кроссплатформенных графических приложений, научитесь разрабатывать графические приложения для Windows с использованием Walk и многое другое.
👍1
Вы знаете, что Github Actions позволяют упростить жизнь разработчику, т. к. обеспечивают автоматизацию рабочего процесса. В этом видеоуроке вы узнаете, как можно добавить невероятно полезные GitHub Actions в свои проекты на Go.
https://proglib.io/w/919f7e3d
https://proglib.io/w/919f7e3d
YouTube
GitHub Actions for Go Developers!
👨💻 For the price of a ☕ every month, sign up and gain access to a growing list of premium courses on my site - https://tutorialedge.net/pricing/ 👩💻
✅ Subscribe and hit that 🔔 to get notified for all the latest tutorials!
Text Tutorial: https://tuto…
✅ Subscribe and hit that 🔔 to get notified for all the latest tutorials!
Text Tutorial: https://tuto…
Команда Go предложила более простой дизайн дженериков: новость об этом и само описание.
Для экономии времени можно прочитать краткое руководство по новому дизайну дженериков Go: https://proglib.io/w/de45b19d
Для экономии времени можно прочитать краткое руководство по новому дизайну дженериков Go: https://proglib.io/w/de45b19d
go.dev
The Next Step for Generics - The Go Programming Language
An updated generics design draft, and a translation tool for experimentation
GolangQuiz - канал на котором публикуются интересные задачи и вопросы по Go и их разбор.
🚴 Паттерны Go-кода на все случаи жизни
Cортировки и битовые маски, обработка ошибок и создание изображений, генерация перестановок и работа с хэш-суммами, запуск HTTP-сервера, юнит-тесты и другие распространенные задачи, решаемые с помощью Go.
https://proglib.io/sh/tAslm0UR9V
Cортировки и битовые маски, обработка ошибок и создание изображений, генерация перестановок и работа с хэш-суммами, запуск HTTP-сервера, юнит-тесты и другие распространенные задачи, решаемые с помощью Go.
https://proglib.io/sh/tAslm0UR9V
Оператор
Тип a: *int
Адрес b: 0xc0000b4020
Вы можете получить другой адрес для b, так как местоположение b может быть где угодно в памяти.
&
используется для получения адреса переменной. В строке 9 программы мы присваиваем адрес b типу a *int. В таком случае говорят, что a указывает на b
. Когда мы выводим значение в a
, будет выведен адрес b
. В итоге получаем:Тип a: *int
Адрес b: 0xc0000b4020
Вы можете получить другой адрес для b, так как местоположение b может быть где угодно в памяти.
Утилита gogrep позволяет находить код по синтаксическим шаблонам, фильтровать результаты по типам выражений, выполнять замену по шаблонам и т. д.
Зачастую она используется для упрощения рефакторинга кода, изучения кодовой базы и поиска подозрительного кода. Автор статьи в подробностях разобрался с утилитой и поделился практическим опытом.
https://proglib.io/w/eb89f1cf
Зачастую она используется для упрощения рефакторинга кода, изучения кодовой базы и поиска подозрительного кода. Автор статьи в подробностях разобрался с утилитой и поделился практическим опытом.
https://proglib.io/w/eb89f1cf
GitHub
GitHub - mvdan/gogrep: Search for Go code using syntax trees
Search for Go code using syntax trees. Contribute to mvdan/gogrep development by creating an account on GitHub.
👨💻 Как выбрать сервер для 1С
Рассказываем, как выбрать сервер для продуктов 1С в зависимости от числа активных пользователей и других требований к системе.
https://proglib.io/sh/bL4TeHxcQy
Рассказываем, как выбрать сервер для продуктов 1С в зависимости от числа активных пользователей и других требований к системе.
https://proglib.io/sh/bL4TeHxcQy
Существуют разные способы установления безопасного соединения TLS с помощью Go и gRPC. Вопреки распространенному мнению, вам не нужно вручную предоставлять сертификат сервера вашему клиенту gRPC для шифрования. В статье представлен список примеров кода для разных сценариев. Исходный код доступен в репозитории.
Gopheracademy
Navigating the uncharted waters of SSL/TLS certificates and gRPC with Go
There are different ways to establishing a secure TLS connection with Go and gRPC. Contrary to popular belief, you don’t need to manually provide the Server certificate to your gRPC client in order to encrypt the connection.
Если кому-то необходимо освежить в памяти основы Golang, например, перед собеседованием, то вот отличый вариант, хоть и может показаться неактуальным по времени: https://proglib.io/w/79391e19
YouTube
Go Programming
Get the Cheat Sheet Here : http://goo.gl/bxT1V7
Best Book on Go : http://goo.gl/YU2aRn
MY UDEMY COURSES ARE 87.5% OFF TIL December 19th ($9.99) ONE IS FREE
➡️ Python Data Science Series for $9.99 : Highest Rated & Largest Python Udemy Course + 56 Hrs +…
Best Book on Go : http://goo.gl/YU2aRn
MY UDEMY COURSES ARE 87.5% OFF TIL December 19th ($9.99) ONE IS FREE
➡️ Python Data Science Series for $9.99 : Highest Rated & Largest Python Udemy Course + 56 Hrs +…