kb · go reference

Go

Язык (горутины, каналы, интерфейсы, error handling, generics), стандартная библиотека (net/http, encoding/json, context и другие), ООП-соответствия (структуры, интерфейсы, embedding вместо классов) и экосистема сторонних пакетов (web/gRPC, testing, tooling, observability). Все 4 раздела — каркасы.The language (goroutines, channels, interfaces, error handling, generics), the standard library (net/http, encoding/json, context, and others), OOP mappings (structs, interfaces, embedding instead of classes), and the third-party package ecosystem (web/gRPC, testing, tooling, observability). All 4 sections are skeletons.

РазделыSections

кликабельны по готовностиclickable once ready
language каркасskeleton

Ядро языкаThe language core

Горутины и каналы, select, интерфейсы и неявная типизация, defer/panic/recover, обработка ошибок, generics, устройство слайсов/мап.Goroutines and channels, select, interfaces and implicit satisfaction, defer/panic/recover, error handling, generics, how slices/maps actually work.

23 фичи в планеfeatures planned
std каркасskeleton

Стандартная библиотекаThe standard library

net/http, encoding/json, context, конкурентность (sync/atomic), файлы и ОС, время/строки/regex.net/http, encoding/json, context, concurrency (sync/atomic), files & OS, time/strings/regex.

16 пунктов в планеitems planned
oop каркасskeleton

ООП в GoOOP in Go

Базовые концепции ООП (конструкторы, методы, полиморфизм через интерфейсы и другие; деструкторы/свойства/индексаторы/наследование/события опущены — их нет в языке), отображённые на структуры/интерфейсы/embedding Go, плюс специфика языка (структурная типизация, встраивание, пустой интерфейс).The baseline OOP concepts (constructors, methods, interface-based polymorphism, and others; destructors/properties/indexers/inheritance/events are omitted — the language has none of them) mapped onto Go's structs/interfaces/embedding, plus Go-specific mechanisms (structural typing, embedding, the empty interface).

14 карточекcards
ecosystem каркасskeleton

Сторонние пакетыThird-party packages

Web/gRPC (gin/echo/gRPC-go/fasthttp), тестирование (testify/gomock/go-cmp), инструменты (go modules/golangci-lint/cobra/viper), observability (Prometheus/OpenTelemetry-go), сериализация (encoding/json/sonic), данные/хранилища (clickhouse-go/go-redis/kafka), сжатие.Web/gRPC (gin/echo/gRPC-go/fasthttp), testing (testify/gomock/go-cmp), tooling (go modules/golangci-lint/cobra/viper), observability (Prometheus/OpenTelemetry-go), serialization (encoding/json/sonic), data/storage (clickhouse-go/go-redis/kafka), compression.

7 категорийcategories

статусstatus

Все 4 раздела — каркасы, страницы фич ещё не написаны. language/std/ecosystem повторяют структуру Rust и Python; oop/ — пятый в серии сравнения ООП-концепций между C++/Rust/Go/JS-TS/Python, у Go в этой серии больше всего карточек «n/a» (наследование, деструкторы, свойства и другие), поскольку язык сознательно заменяет их структурами, интерфейсами и embedding. Раздел ecosystem/web мотивирован тем же соображением, что и JS/TS и Python: cranor — это сейчас Python-CLI поверх gRPC, и Go — ещё один реалистичный кандидат на роль бэкенда/сервера, особенно учитывая, что уже созданный sre/ и его глава про Kubernetes/observability написаны с прицелом именно на Go-сервисы (Grafana Tempo принимает трассы «с C++, Rust, Go и Python микросервисов»).All 4 sections are skeletons, feature pages not yet written. language/std/ecosystem mirror the structure of Rust and Python; oop/ is the fifth entry in the cross-language OOP-concept comparison series (C++/Rust/Go/JS-TS/Python), and Go has the most "n/a" cards of the five, since the language deliberately replaces inheritance, destructors, properties, and more with structs, interfaces, and embedding. The ecosystem/web section is motivated by the same consideration as JS/TS and Python: cranor is currently a Python CLI on top of gRPC, and Go is another realistic candidate for the backend/server role — especially since the already-existing sre/ section's Kubernetes/observability chapter is written with Go services specifically in mind (Grafana Tempo collects traces "from C++, Rust, Go, and Python microservices").