РуЛиб - онлайн библиотека > Торрес Аарон > Go (golang) > Go. Рецепты программирования

Читаем онлайн «Go. Рецепты программирования»

Tlgm: @it_boooks
Tlgm: @it_boooks
Go. Рецепты программирования
Второе издание
Более 85 рецептов для создания модульных, удобочитаемых и
тестируемых приложений Golang в различных областях.
Аарон Торрес
БИРМИНГЕМ — МУМБАИ
Tlgm: @it_boooks
Go. Рецепты
программирования
Вторая редакция
Copyright © 2019 Packt Publishing
Первая редакция: Июнь 2017
Второе издание: Июль 2019
ISBN 978-1-78980-098-2
www.packtpub.com
Tlgm: @it_boooks
Моей жене Кейли и моим дочерям Хейзел, Олеандр и Арании. Спасибо
за ваше терпение, любовь и поддержку. Эта книга была бы
невозможна без вас.
Tlgm: @it_boooks
Contributors
Об авторе
Аарон Торрес получил степень магистра компьютерных наук в Горнотехнологическом институте Нью-Мексико. Он работал над
распределенными системами в области высокопроизводительных
вычислений, а также над крупномасштабными веб-приложениями и
микросервисами. В настоящее время он возглавляет команду
разработчиков Go, которая совершенствует и фокусируется на лучших
практиках Go с упором на непрерывную доставку и автоматическое
тестирование.
Аарон опубликовал ряд статей и имеет несколько патентов в области
хранения и ввода/вывода. Он страстно любит делиться своими
знаниями и идеями с другими. Он также является большим
поклонником языка Go и программного обеспечения с открытым
исходным кодом для серверных систем и разработки.
О рецензенте
Эдуард Бондаренко — разработчик программного обеспечения,
проживающий в Киеве, Украина. Он давно начал программировать на
BASIC на ZXSpectrum. Позже он работал в сфере веб-разработки. Он
использует Ruby on Rails более 8 лет. Долгое время используя Ruby, он
открыл для себя Clojure в начале 2009 года, и ему понравилась
простота языка. Помимо Ruby и Clojure, он интересуется разработкой
Go и ReasonML.
Я хочу поблагодарить мою замечательную жену, детей и родителей
за всю любовь, поддержку и помощь, которые они мне оказывают.
Tlgm: @it_boooks
Table of Contents
Оглавление
Contributors
Об авторе
О рецензенте
Предисловие
Для кого эта книга
Что охватывает эта книга
Чтобы получить максимальную отдачу от этой книги
Загрузите файлы примеров кода
Код в действии
Используемые соглашения
Разделы
Подготовка
Как это сделать…
Как это работает…
Как связаться
Отзывы
1. Ввод-вывод и файловые системы
Технические требования
Использование общих интерфейсов ввода/вывода
Как это сделать…
Как это работает…
Использование пакетов bytes и strings
Как это сделать…
Как это работает…
Работа с каталогами и файлами
Как это сделать…
Как это работает…
Tlgm: @it_boooks
Работа с форматом CSV
Как это сделать…
Как это работает…
Работа с временными файлами
Как это сделать…
Как это работает…
Работа с text/template и html/template
Как это сделать…
Как это работает…
2. Инструменты командной строки
Технические требования
Использование флагов командной строки
Как это сделать…
Как это работает…
Использование аргументов командной строки
Как это сделать…
Как это работает…
Чтение и установка переменных среды
Как это сделать…
Как это работает…
Конфигурация с использованием TOML, YAML и JSON
Как это сделать…
Как это работает…
Работа с каналами Unix
Как это сделать…
Как это работает…
Перехват и обработка сигналов
Как это сделать…
Как это работает…
Приложение для раскрашивания ANSI
Как это сделать…
Как это работает…
3. Преобразование данных и композиция
Tlgm: @it_boooks
Технические требования
Преобразование типов данных и приведение интерфейсов
Как это сделать…
Как это работает…
Работа с числовыми типами данных с использованием math и
math/big
Как это сделать…
Как это работает…
Преобразование валюты и рассмотрение float64
Как это сделать…
Как это работает…
Использование указателей и SQL NullTypes для кодирования
и декодирования
Как это сделать…
Как это работает…
Кодирование и декодирование данных Go
Как это сделать…
Как это работает…
Структурные теги и базовая рефлексия в Go
Как это сделать…
Как это работает…
Реализация коллекций через замыкания
Как это сделать…
Как это работает…
4. Обработка ошибок в Go
Технические требования
Обработка ошибок и интерфейс ошибок
Как это сделать…
Как это работает…
Использование пакета pkg/errors и перенос ошибок
Как это сделать…
Как это работает…
Tlgm: @it_boooks
Использование пакета журнала и понимание того, когда следу
ет регистрировать ошибки
Как это сделать…
Как это работает…
Структурированное ведение журналов с помощью пакетов ap
ex и logrus
Как это сделать…
Как это работает…
Ведение журнала с пакетом context
Как это сделать…
Как это работает…
Использование глобальных переменных уровня пакета
Как это сделать…
Как это работает…
Отлов паники для долго выполняющихся процессов
Как это сделать…
Как это работает…
5. Сетевое программирование
Технические требования
Написание эхо-сервера и клиента