Привет, меня зовут Максим. Сейчас ты читаешь мою книгу, которая поможет тебе
начать разрабатывать современные приложения на языке программирования Go.
С этим языком я активно работаю последних 2.5 года. За это время я успел применить
его на практике в проектах различной сложности, как личных так и на работе и
фрилансе. Чем больше я разрабатываю на этом языке, тем больше я влюбляюсь в его
простоту, производительность и мощность.
Язык я начал изучать в полевых условиях, так как мне нужно было буквально за 1-2 дня
сделать тестовое задание на Go при приеме на новую работу. Тогда было совсем
мало хорошего материала по этому языку, особенно в рунете.
Недавно я решил заново повторить основы и заполнить пробелы в фундаментальных
знаниях Go. Тут мне пришла идея структурировать все знания и опыт для ребят,
которые только начинают свой путь с этим языком.
Надеюсь, эта книга будет тебе полезной и послужит хорошим стартом в мир back-end
разработки на этом замечательном языке.
Написать мне: @zhashkevych (Telegram) / zhashkevychmaksim@gmail.com
Также я веду блог в телеграмм канале: https://t.me/zhashkevychdev
По настроению пишу статьи на медиум: https://medium.com/@zhashkevych
И выкладываю разные проекты на GitHub: https://github.com/zhashkevych
Эту книгу я написал чтобы помочь другим в освоении нового языка и поделиться
своими знаниями. Если вам эта книга поможет и вы захотите меня отблагодарить,
можете скинуть мне деньги на кофе: 5375 4141 0101 1855, мне будет очень приятно!
Спасибо что вы тут со мной, читаете эту книгу! Поехали!
2
Как читать эту книгу?
Книга состоит из 12 разделов. В разделах 1-10 идет разбор концепций языка с
практическими примерами.
В каждом разделе в конце есть домашнее задание. Для закрепления материала и
лучшего понимания последующих разделов я рекомендую вам их выполнять.
Также после каждого раздела предлагаю вам самим пописать код и на практике
закрепить полученные знания.
Вы всегда можете обращаться в эту книгу как в справочник, чтобы освежать знания
по тем или иным темам.
Конечно вы можете перепрыгивать разделы. Однако весь материал подан именно в
такой очереди специально, чтобы вы смогли понять более сложный материал имея
понимание базовых концепций.
Исходный код примеров вы можете найти тут:
https://github.com/zhashkevych/go-basics
3
Оглавление
Об авторе
2
Как читать эту книгу?
3
Базовые Концепции.
8
Переменные.
8
Функции и Указатели. Обработка Ошибок.
18
Массивы и Срезы. Цикл for.
28
Структуры и Мапы. Кастомные Типы.
41
Интерфейсы. ООП.
58
Go Modules. Пакеты.
68
Конкурентность и Параллелизм.
77
Горутины и Каналы.
85
Работа с HTTP.
96
Пишем REST API.
101
Что Дальше?
108
4
Раздел 00:
Почему Go?
На дворе начало третьего десятилетия XXI века. Огромная часть населения земли
имеет доступ к скоростному интернету. Такими сервисами как YouTube, Facebook,
Instagram, Netflix и тд. ежедневно пользуется сотни миллионов людей по всему миру.
Вся разработка уходит в веб и эта тенденция будет только развиваться.
Существует огромное количество языков программирования на которых
разрабатываются современные приложения. И на данный момент язык Go уже
хорошо зарекомендовал себя на практике и становится стандартом индустрии.
Все больше вакансий для Go разработчиков появляется на рынке. Все больше
проектов и стартапов выбирают Go в качестве основного языка для бекенда.
Появляется все больше Open-Source репозиториев в которых используется Go.
Если вы только начинаете свой путь в программировании или вы уже имеете опыт с
другими технологиями и хотите изучить новый язык, то Go сейчас — отличный выбор.
Немного истории
Go был разработан в 2007 году в стенах компании Google при участии Роба Пайка и
Кена Томпсона.
Изначально язык разрабатывался для внутреннего использования в гугле с целью
решения широкого спектра задач в эпоху распределенных систем и многоядерных
процессоров, однако в 2009 году состоялся релиз и язык стал доступен для широкой
публики.
Сам Роб Пайк говорит, что:
“Go был разработан для решения реальных проблем, возникающих при разработке
программного обеспечения в Google”
5
За чуть более чем 10 лет своего существования, Go успел завоевать любовь
множества разработчиков по всему миру. Так чем же так хорош этот язык на
сегодняшний день?
Простой и понятный синтаксис
У языка лаконичный и простой синтаксис, основанный на С, но существенно
доработанный, с большим количеством синтаксического сахара.
Читать код, написаный на Go, достаточно приятно, что является одним из
существенных плюсов данного языка.
Статическая типизация
Позволяет избежать ошибок, допущенных по невнимательности разработчика,
упрощает чтение и понимание кода, делает код однозначным.
Последние комментарии
8 часов 32 минут назад
11 часов 21 минут назад
1 день 21 часов назад
2 дней 6 часов назад
2 дней 11 часов назад
2 дней 14 часов назад