Публикации по теме 'golang'


Еще один пост о параллелизме Go
Каналы или примитивы синхронизации (мьютексы и др.)? Что делать? У меня мало опыта в Го. Итак, недавно, когда компания, в которую я собираюсь устроиться, дала мне домашнее задание на собеседовании, я воспользовался возможностью, чтобы попрактиковаться в Го. Это один из основных языков в их наборе инструментов (по крайней мере, так кажется со стороны), а домашнее задание на собеседовании, как правило, скучное занятие, так почему бы не сделать его интересным? Задача была довольно простой..

Визуальное понимание пула рабочих
Проблема, на которой нам нужно сосредоточиться, - это создание более визуального подхода к пониманию шаблонов и некоторых других архитектур решений , которые могут создать ситуацию черного ящика в вашей внутренней команде, если они не будут поняты. правильно. Часто мы испытываем искушение скопировать и вставить код и даже не понимаем, как все работает на нижележащих слоях. Сегодня мы собираемся рассмотреть знаменитый (но недооцененный ) пул рабочих (он же пул потоков). В Go..

Learning Go Episode 5 — Функции (а также методы и многое другое)
Ссылки на посты и видео эпизодов: 1 , 2 , 3 , 4 , 5 (этот пост), 6, 7 и 8. Не связанные ссылки находятся в работе! Однако видео сейчас доступно на Youtube , так что зацените их! На этом занятии мы рассмотрели множество тем, связанных с функциями Go. Наряду с некоторыми функциями устранения неполадок, отладки и другими функциями Jetbrains Goland IDE. Если вы также хотите ознакомиться с этим материалом в виде книги, я настоятельно рекомендую Язык программирования Go Алана А.А...

Почему вам следует избегать ioutil.ReadAll in Go
Когда у вас есть io.Reader , наиболее распространенным способом чтения является ioutil.ReadAll , но это не лучший и самый эффективный способ. Итак, вот три функции для сравнения различных методов демаршалинга JSON из io.Reader … С ioutil.ReadAll func IOUtilReadAll(reader io.Reader) (map[string]interface{}, error) { var ( m map[string]interface{} b, _ = ioutil.ReadAll(reader) ) return m, json.Unmarshal(b, &m) } 2. С io.Copy func IOCopy(reader..

Автоматическое тестирование в Go
Автоматическое тестирование в Go Дальнейшие приключения с метапрограммированием в Go. В этом мы опираемся на наш инструмент метапрограммирования Golang. Это продолжение последней статьи Метапрограмма в Go , возможно, начну с нее, если вы еще не читали. В этой статье мы сосредоточимся на автоматическом создании тестов для нашего CRUD API. Напомним, что мы уже автоматически делаем сами api на основе определений таблиц PostgreSQL. Попутно мы также создадим пару утилит, которые..

Обработка ошибок Golang - передовая практика в 2020 году
У Голанга много преимуществ, этим объясняется его популярность. Но обработка ошибок в Go 1 не очень эффективна, нам приходится писать много подробных неудобных кодов в повседневной разработке. Для решения этой проблемы существует несколько решений с открытым исходным кодом. Тем временем команда Go улучшает это как с точки зрения языка, так и со стороны стандартной библиотеки. Сегодня мы проанализируем общие проблемы, сравним решения и покажем лучшие практики на данный момент (п...

Настройка вашей машины для Go
Тем, кто не знаком с одним из мощных языков программирования Go, то можете прочитать мой предыдущий пост о Начиная с Go . Здесь я собираюсь объяснить, как мы можем настроить нашу машину или среду разработки для поддержки Go. Есть много способов установить и настроить среду Go в вашей системе, поэтому я объясню три наиболее распространенных способа. Установить из исходного кода Поскольку некоторые части Go написаны на Plan 9 C и ассемблере AT&T, вам необходимо установить компилятор..