ДЕНЬ 30 ИЗ 100
Сегодня тоже решила две задачи.
Одна была простая, а другую решала час. Снова та закавыка с последовательностью рун и русским языком😐
Хорошо, что я сохраняю себе почти все предыдущие решения. Плохо, что я вспоминаю об этом под конец.
Как снитч из Гарри Поттера, блин. Аж мозги закипели.
Роадмап бэкенда: 5% — 5%
Роадмап Go: 30% — 30%
Оценка за день: 3/5
Сегодня тоже решила две задачи.
Одна была простая, а другую решала час. Снова та закавыка с последовательностью рун и русским языком
Хорошо, что я сохраняю себе почти все предыдущие решения. Плохо, что я вспоминаю об этом под конец.
Как снитч из Гарри Поттера, блин. Аж мозги закипели.
Роадмап бэкенда: 5% — 5%
Роадмап Go: 30% — 30%
Оценка за день: 3/5
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👎3👏1🥴1🌭1
ДЕНЬ 32 ИЗ 100
Курс закончился и я не знаю, куда себя деть. Продолжу пока двигаться по роадмапу.
Изучаю модули. Модуль — набор пакетов, которые выпускаются, версионируются и распространяются вместе. Модули можно загружать непосредственно из репозиториев системы контроля версий или с прокси-серверов модуля.
Модули Go решают многие проблемы с GOPATH, исходной системой, и позволяют пользователям размещать код своего проекта в выбранном ими каталоге и указывать версии зависимостей для каждого модуля.
Аж захотелось перевести с английского какую-нибудь статью полезную, вспомнить старое...
Обменялись сегодня с частью друзей частью подарков. Всё-таки обожаю праздники, обожаю, когда мне дарят штуки, заказать которые себе мне не хватало поводов❤️ ❤️ ❤️
А вам уже дарят подарки? А вы дарите? Делитесь🌟
Роадмап бэкенда: 5% — 5%
Роадмап Go: 30% — 33%
Оценка за день: 4/5
Курс закончился и я не знаю, куда себя деть. Продолжу пока двигаться по роадмапу.
Изучаю модули. Модуль — набор пакетов, которые выпускаются, версионируются и распространяются вместе. Модули можно загружать непосредственно из репозиториев системы контроля версий или с прокси-серверов модуля.
Модули Go решают многие проблемы с GOPATH, исходной системой, и позволяют пользователям размещать код своего проекта в выбранном ими каталоге и указывать версии зависимостей для каждого модуля.
Аж захотелось перевести с английского какую-нибудь статью полезную, вспомнить старое...
Обменялись сегодня с частью друзей частью подарков. Всё-таки обожаю праздники, обожаю, когда мне дарят штуки, заказать которые себе мне не хватало поводов
А вам уже дарят подарки? А вы дарите? Делитесь
Роадмап бэкенда: 5% — 5%
Роадмап Go: 30% — 33%
Оценка за день: 4/5
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤3👍3
На ночь глядя делюсь с вами интересной статистикой за 2023:
https://www.jetbrains.com/lp/devecosystem-2023/
https://www.jetbrains.com/lp/devecosystem-2023/
JetBrains: Developer Tools for Professionals and Teams
The State of Developer Ecosystem in 2023 Infographic
Learn about the latest trends in tools, technologies, AI, and programming languages.
❤7
ДЕНЬ 33 ИЗ 100
Сегодня прочитала про context.
Context — это пакет, который позволяет передавать данные в программу в каком-то «контексте». Контекст так же, как и таймаут, дедлайн или канал, сигнализирует прекращение работы и вызывает return.
Вот классная статья с примерами😮
Роадмап бэкенда: 5% — 5%
Роадмап Go: 33% — 34%
Оценка за день: 3/5
Сегодня прочитала про context.
Context — это пакет, который позволяет передавать данные в программу в каком-то «контексте». Контекст так же, как и таймаут, дедлайн или канал, сигнализирует прекращение работы и вызывает return.
Вот классная статья с примерами
Роадмап бэкенда: 5% — 5%
Роадмап Go: 33% — 34%
Оценка за день: 3/5
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤2👎2🐳2🤨1
ДЕНЬ 34 ИЗ 100
Сегодня про каналы.
Каналы (channels) позволяют горутинам обмениваться данными, но один канал может передавать только данные одного типа.
Про горутины я читала ещё до челленджа, так что пока картинка стройно в голове складывается.
Работа канала состоит из двух основных операций: отправка (send) и прием (receive), обе операции в совокупности называются коммуникацией.
Вот пример:
Роадмап бэкенда: 5% — 5%
Роадмап Go: 34% — 36%
Оценка за день: 4/5
Сегодня про каналы.
Каналы (channels) позволяют горутинам обмениваться данными, но один канал может передавать только данные одного типа.
Про горутины я читала ещё до челленджа, так что пока картинка стройно в голове складывается.
Работа канала состоит из двух основных операций: отправка (send) и прием (receive), обе операции в совокупности называются коммуникацией.
Вот пример:
package main
import "fmt"
func main() {
// Создаём канал с помощью var
var mychannel chan int
fmt.Println("Value of the channel: ", mychannel)
fmt.Printf("Type of the channel: %T ", mychannel)
// Создаём канал, используя make()
mychannel1 := make(chan int)
fmt.Println("\nValue of the channel1: ", mychannel1)
fmt.Printf("Type of the channel1: %T ", mychannel1)
Роадмап бэкенда: 5% — 5%
Роадмап Go: 34% — 36%
Оценка за день: 4/5
👍6🔥3❤🔥2❤1
ДЕНЬ 35 ИЗ 100
Ну шо, с наступающим, пацаны и пацанессы...
Даже в праздник не прерываем челлендж. Сегодня чуть-чуть нудно про select.
Оператор select позволяет подпрограмме ожидать выполнения нескольких операций связи.
A select блокируется до тех пор, пока не сможет выполняться одно из его обращений, затем оно выполняет это обращение. Оно выбирает одно случайным образом, если готовы несколько. Оператор select аналогичен оператору switch, но в операторе select оператор case относится к связи, т.е. операции отправки или получения по каналу.
Пример:
Вот такие дела.
Попозже ещё напишу мыслишки свои всякие в отрыве от челленджа...🤡
Роадмап бэкенда: 5% — 5%
Роадмап Go: 36% — 37%
Оценка за день: 4/5
Ну шо, с наступающим, пацаны и пацанессы...
Даже в праздник не прерываем челлендж. Сегодня чуть-чуть нудно про select.
Оператор select позволяет подпрограмме ожидать выполнения нескольких операций связи.
A select блокируется до тех пор, пока не сможет выполняться одно из его обращений, затем оно выполняет это обращение. Оно выбирает одно случайным образом, если готовы несколько. Оператор select аналогичен оператору switch, но в операторе select оператор case относится к связи, т.е. операции отправки или получения по каналу.
Пример:
package main
import (
"fmt"
"time"
)
func main() {
//выбор по двум каналам
c1 := make(chan string)
c2 := make(chan string)
Каждый канал получит значение через некоторое время для имитации, например, блокирования операций RPC выполнения в параллельных программах.
go func() {
time.Sleep(1 * time.Second)
c1 <- "one"
}()
go func() {
time.Sleep(2 * time.Second)
c2 <- "two"
}()
Мы будем использовать select для ожидания обоих этих значений одновременно, печатая каждое по мере его поступления.
for i := 0; i < 2; i++ {
select {
case msg1 := <-c1:
fmt.Println("received", msg1)
case msg2 := <-c2:
fmt.Println("received", msg2)
}
}
}
Вот такие дела.
Попозже ещё напишу мыслишки свои всякие в отрыве от челленджа...
Роадмап бэкенда: 5% — 5%
Роадмап Go: 36% — 37%
Оценка за день: 4/5
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍2🔥1
ДЕНЬ 36 ИЗ 100
С наступившим, чтоли😮
Сегодня неспешно читаю про buffer в обнимку с селёдкой под шубой.
Буфер используется в контексте каналов для обработки асинхронного обмена данными между горутинами.
Буфер представляет собой внутреннюю очередь, которая позволяет горутинам отправлять данные на каналы даже в том случае, если нет готового получателя для этих данных.
Вот и примерчик:
Роадмап бэкенда: 5% — 5%
Роадмап Go: 37% — 39%
Оценка за день: 4/5
С наступившим, чтоли
Сегодня неспешно читаю про buffer в обнимку с селёдкой под шубой.
Буфер используется в контексте каналов для обработки асинхронного обмена данными между горутинами.
Буфер представляет собой внутреннюю очередь, которая позволяет горутинам отправлять данные на каналы даже в том случае, если нет готового получателя для этих данных.
Вот и примерчик:
package main
import "fmt"
func main() {
// Создание канала с буфером в 2 элемента
ch := make(chan int, 2)
// Помещение данных в буфер канала
ch <- 1
ch <- 2
// Извлечение данных из буфера канала
fmt.Println(<-ch)
fmt.Println(<-ch)
}
Роадмап бэкенда: 5% — 5%
Роадмап Go: 37% — 39%
Оценка за день: 4/5
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍1🔥1
ДЕНЬ 37 ИЗ 100
Прочитала одну статью про мьютекс.
Мьютексы (mutex) — это структуры данных из пакета sync. Они помогают установить блокировку для разных разделов данных, чтобы только одна подпрограмма могла получить к ним доступ одновременно.
А вот и ссылка на статью.
Роадмап бэкенда: 5% — 5%
Роадмап Go: 39% — 40%
Оценка за день: 3/5
Прочитала одну статью про мьютекс.
Мьютексы (mutex) — это структуры данных из пакета sync. Они помогают установить блокировку для разных разделов данных, чтобы только одна подпрограмма могла получить к ним доступ одновременно.
А вот и ссылка на статью.
Роадмап бэкенда: 5% — 5%
Роадмап Go: 39% — 40%
Оценка за день: 3/5
👍7🔥3❤1
ДЕНЬ 38 ИЗ 100
Сегодня читала про JSON, потому что так написано в роадмапе.
Раньше я с этим много работала, поэтому делаю это чисто для галочки. Вот полезная статья со спецификой json для go.
Завтра иду делать смешную тату. Покажу результат тут! Ждите😂
Роадмап бэкенда: 5% — 5%
Роадмап Go: 40% — 43%
Оценка за день: 1/5
Сегодня читала про JSON, потому что так написано в роадмапе.
Раньше я с этим много работала, поэтому делаю это чисто для галочки. Вот полезная статья со спецификой json для go.
Завтра иду делать смешную тату. Покажу результат тут! Ждите
Роадмап бэкенда: 5% — 5%
Роадмап Go: 40% — 43%
Оценка за день: 1/5
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤2😁2❤🔥1👎1🌚1
ДЕНЬ 39 ИЗ 100
Читаю про интерфейсы командной строки. Это уже что-то более новое, а значит — интересное.
Без изысков — читаю на go.dev.
На флаттер я довольно редко пользовалась терминалом. Здесь для более точной работы с CLI используются инструменты Cobra и Viper.
Cobra — это одновременно библиотека для создания мощных современных CLI-приложений и программа для создания приложений с CLI в Go. Cobra поддерживает большинство популярных приложений Go, включая CoreOS, Delve, Docker, Dropbox, Git Lfs, Hugo, Kubernetes и многие другие.
Viper — это комплексное конфигурационное решение для приложений Go, разработанное для работы в приложении с учетом потребностей в настройке и форматов. Cobra и Viper созданы для совместной работы.
Роадмап бэкенда: 5% — 5%
Роадмап Go: 43% — 46%
Оценка за день: 4/5
Читаю про интерфейсы командной строки. Это уже что-то более новое, а значит — интересное.
Без изысков — читаю на go.dev.
На флаттер я довольно редко пользовалась терминалом. Здесь для более точной работы с CLI используются инструменты Cobra и Viper.
Cobra — это одновременно библиотека для создания мощных современных CLI-приложений и программа для создания приложений с CLI в Go. Cobra поддерживает большинство популярных приложений Go, включая CoreOS, Delve, Docker, Dropbox, Git Lfs, Hugo, Kubernetes и многие другие.
Viper — это комплексное конфигурационное решение для приложений Go, разработанное для работы в приложении с учетом потребностей в настройке и форматов. Cobra и Viper созданы для совместной работы.
Роадмап бэкенда: 5% — 5%
Роадмап Go: 43% — 46%
Оценка за день: 4/5
👍7🔥3❤1
ДЕНЬ 40 ИЗ 100
Продолжаю изучать Cobra и Viper. Немного тяжело даётся работа с командной строкой...
Может, поэтому я особо ей и не пользовалась, пока незачем было😮
Ещё отхожу от тату, у меня всегда после сеансов температура поднимается.
Кстати, у меня забиты две руки, три татуировки на ногах, одна на грудной клетке и вот теперь ещё на кистях появилась. Проценты сами посчитайте😂
Роадмап бэкенда: 5% — 5%
Роадмап Go: 46% — 46%
Оценка за день: 2/5
Продолжаю изучать Cobra и Viper. Немного тяжело даётся работа с командной строкой...
Может, поэтому я особо ей и не пользовалась, пока незачем было
Ещё отхожу от тату, у меня всегда после сеансов температура поднимается.
Кстати, у меня забиты две руки, три татуировки на ногах, одна на грудной клетке и вот теперь ещё на кистях появилась. Проценты сами посчитайте
Роадмап бэкенда: 5% — 5%
Роадмап Go: 46% — 46%
Оценка за день: 2/5
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤1🔥1
ДЕНЬ 41 ИЗ 100
Читаю про urfave / cli — декларативный, простой, быстрый и увлекательный пакет для создания инструментов командной строки в Go, как говорит readme у репозитория.
В то время, как в Cobra мы работаем с cobra.Command объектами, в urfave / cli мы начинаем с cli.App и работаем только с cli.Command экземплярами.
Оставляю ссылку на классную статью с примерами и укатываюсь на субботний вечерний бранч в бар!
Роадмап бэкенда: 5% — 5%
Роадмап Go: 46% — 48%
Оценка за день: 4/5
Читаю про urfave / cli — декларативный, простой, быстрый и увлекательный пакет для создания инструментов командной строки в Go, как говорит readme у репозитория.
В то время, как в Cobra мы работаем с cobra.Command объектами, в urfave / cli мы начинаем с cli.App и работаем только с cli.Command экземплярами.
Оставляю ссылку на классную статью с примерами и укатываюсь на субботний вечерний бранч в бар!
Роадмап бэкенда: 5% — 5%
Роадмап Go: 46% — 48%
Оценка за день: 4/5
👍8⚡1🔥1
ДЕНЬ 42 ИЗ 100
Вот это я вчера наклюкалась... благо, без похмелья обошлось😂
Тема дня: ORM.
Объектно-реляционное отображение (ORM, O/RM и O/R mapping tool) — метод программирования для преобразования данных между системами типов с использованием объектно-ориентированных языков программирования. Это создает, по сути, “базу данных виртуальных объектов”, следовательно, уровень абстракции, который может быть использован изнутри языка программирования.
В го для этого используют GORM — библиотеку ORM для работы с реляционными базами данных. Она разработана поверх пакета database/sql.
Роадмап бэкенда: 5% — 5%
Роадмап Go: 48% — 51%
Оценка за день: 4/5
Вот это я вчера наклюкалась... благо, без похмелья обошлось
Тема дня: ORM.
Объектно-реляционное отображение (ORM, O/RM и O/R mapping tool) — метод программирования для преобразования данных между системами типов с использованием объектно-ориентированных языков программирования. Это создает, по сути, “базу данных виртуальных объектов”, следовательно, уровень абстракции, который может быть использован изнутри языка программирования.
В го для этого используют GORM — библиотеку ORM для работы с реляционными базами данных. Она разработана поверх пакета database/sql.
Роадмап бэкенда: 5% — 5%
Роадмап Go: 48% — 51%
Оценка за день: 4/5
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1🤯1
ДЕНЬ 43 ИЗ 100
Сегодня вместе с @nogipx немного трогаем кубер. Ему нужно для своего проекта, а я просто сую к нему нос😂
Kubernetes — это платформа управления контейнерами с открытым исходным кодом и доминирующий продукт в этой области. Используя Kubernetes, команды могут развертывать образы на нескольких базовых хостах, определяя их желаемую доступность, логику развертывания и масштабирования в YAML.
Отдельные большие спасибы за уточнения по ORM❤️
Роадмап бэкенда: 5% — 6%
Роадмап Go: 51% — 51%
Оценка за день: 3/5
Сегодня вместе с @nogipx немного трогаем кубер. Ему нужно для своего проекта, а я просто сую к нему нос
Kubernetes — это платформа управления контейнерами с открытым исходным кодом и доминирующий продукт в этой области. Используя Kubernetes, команды могут развертывать образы на нескольких базовых хостах, определяя их желаемую доступность, логику развертывания и масштабирования в YAML.
Отдельные большие спасибы за уточнения по ORM
Роадмап бэкенда: 5% — 6%
Роадмап Go: 51% — 51%
Оценка за день: 3/5
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8❤🔥2👍2
Расскажите, пожалуйста, что ещё не пригодится мне на работе, чтобы я не тратила время на изучение 🗒
А в обмен я вам расскажу, что в Краснодаре наконец-то пошел СНЕГ
UPD:
https://roadmap.sh/backend https://roadmap.sh/golang
На всякий случай
А в обмен я вам расскажу, что в Краснодаре наконец-то пошел СНЕГ
UPD:
https://roadmap.sh/backend https://roadmap.sh/golang
На всякий случай
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
ДЕНЬ 44 ИЗ 100
Трогаю кубер, день второй.
Поставили kubectl, minikube — локальный кластер кубера.
@nogipx говорит, что для изучения пойдёт пока и это, но потом нужно будет разбираться с kubeadm.
Роадмап бэкенда: 6% — 6%
Роадмап Go: 51% — 51%
Оценка за день: 2/5
Трогаю кубер, день второй.
Поставили kubectl, minikube — локальный кластер кубера.
@nogipx говорит, что для изучения пойдёт пока и это, но потом нужно будет разбираться с kubeadm.
Роадмап бэкенда: 6% — 6%
Роадмап Go: 51% — 51%
Оценка за день: 2/5
👍5👎4❤1🔥1💯1