Shanraq.org Shanraq.org

Архив публикаций

пятница, 4 сентября 2026

пятница

сентябрь 2026
пнвтсрчтптсбвс
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

Выделенные дни — те, в которые что-то опубликовано; их можно нажать.

IT

Сборка: блокнот в консоли из всего, что вы уже знаете

Восемнадцатый урок курса по Go и конец модуля о языке. Одна законченная программа из знакомых деталей: структура, срез, словарь, методы с указателем, ошибки, свой пакет и тесты. Ничего нового, кроме чтения команд с клавиатуры: собрать выученное в работающую вещь — отдельное умение.

IT

GitHub: код, который видно

Семнадцатый урок курса по Go. GitHub — не резервная копия, а та же история, видимая другим. Аккаунт и первый репозиторий, git remote и git push, почему пароль там больше не принимают и чем его заменили, README как первое, что читает человек, и что нельзя выкладывать никогда.

IT

Git: история вашего кода и путь назад

Шестнадцатый урок курса по Go. Git хранит не последнюю версию файла, а все состояния, к которым можно вернуться. git init, три места — папка, индекс и история, — git status как самая частая команда, что писать в сообщении, зачем нужен .gitignore и как достать вчерашний файл.

IT

Пакеты и модули в Go: go mod и заглавная буква

Пятнадцатый урок курса по Go. Пакет — это папка, а заглавная буква в имени — дверь наружу. Как разложить программу по папкам, что записано в go.mod и go.sum, как подключить чужой пакет командой go get, зачем нужна папка internal и почему go mod tidy запускают перед отправкой кода.

IT

Ошибки в Go: не исключение, а обычное значение

Четырнадцатый урок курса по Go. Ошибка здесь не прерывает программу, а возвращается вторым значением, и проверяют её первой. error как интерфейс с одним методом, errors.New и fmt.Errorf, обёртка через %w и errors.Is, своя ошибка как значение — и почему panic для этого не нужен.

IT

Интерфейс в Go: договор по умению, а не по устройству

Тринадцатый урок курса по Go. Интерфейс — список умений: одна функция работает с любым хранилищем, если оно умеет то, что записано в договоре. Почему реализация не объявляется, а получается сама, как проверить её при сборке и почему подменное хранилище делает тесты возможными без базы.

IT

Указатели и методы в Go: почему правка не сохранялась

Двенадцатый урок курса по Go. Ответ на ловушку прошлого урока: указатель — это адрес значения, а не его копия. Как работают & и *, чем метод отличается от функции, когда приёмник берут указателем, а когда значением, и почему for i := range чинит то, что for _, a := range ломает.

IT

Структура в Go: свой тип вместо пяти переменных

Одиннадцатый урок курса по Go. Структура — свой тип: type Article struct вместо трёх словарей, которые держали в согласии вручную. Поля и точка, литерал с именами и без, нулевая структура, срез структур и главная ловушка: структура передаётся копией, и правка внутри range пропадает.

IT

Первый тест в Go: go test и файл _test.go

Десятый урок курса по Go. Проверка, которая остаётся: файл _test.go рядом с кодом, функция TestXxx и команда go test. Как читать провал — имя теста, файл, строка, «получили» и «ждали», — чем t.Errorf отличается от t.Fatalf и почему проверять надо края списка, а не его середину.

IT

Прежде чем начать: что нужно для курса, а что нет

Предисловие к курсу по Go. Что нужно на самом деле — компьютер, право ставить программы и полчаса в день, — и чего не нужно: английского, математики и мощной машины. Какой у вас терминал и почему это важно, что делать, если установка программ запрещена, и во сколько всё это обойдётся.