- Категории
- Источники
- Все курсы
- Разделы
- Книги
Go Optimizations 101 + Go Details & Tips 101 + Go Generics 101
Оптимизация в Go: Эта книга предоставляет некоторые трюки, советы и предложения по оптимизации производительности кода. Большая часть содержимого этой книги создана на основе официального стандартного компилятора и реализации среды выполнения Go.
Жизнь полна компромиссов, и мир программирования тоже. В программировании нам часто приходится выбирать между читаемостью кода, его поддерживаемостью, эффективностью разработки и эффективностью программы и т.д. Даже в рамках одного из аспектов также требуются компромиссы. Взяв в качестве примера эффективность программы, мы можем столкнуться с необходимостью выбирать между экономией памяти, скоростью выполнения кода и сложностью реализации и т.д.
На практике большая часть кодовой базы проекта не требует высокой производительности в реализации. Чаще важнее сохранить их поддерживаемость и читаемость (чем экономию памяти и очень высокую скорость работы). Предложения, сделанные в этой книге, предназначены только для частей кода, реализация которых действительно должна быть высокопроизводительной. Некоторые из предложений часто приводят к более многословному коду. И обратите внимание, что некоторые предложенные реализации могут быть эффективными только в определенных сценариях и могут быть неэффективными в других.
Детали и советы по Go: Эта книга собирает множество деталей и предлагает несколько советов по программированию на Go. Детали и советы классифицируются по следующим категориям:
Большинство деталей специфичны для Go, но несколько из них не зависят от языка.
Generics в Go: Начиная с версии 1.18, Go поддерживает пользовательские обобщения (generics).
Эта книга рассматривает функциональность пользовательских обобщений языка программирования Go. Содержание книги включает:
Читателю необходимо быть знакомым с общим программированием на Go для чтения этой книги. В частности, читатели этой книги должны быть знакомы с системой типов Go, включая встроенные обобщения Go, которые и пользовательские обобщения Go являются двумя разными системами.
В настоящее время книга в основном сосредоточена на синтаксисе и концепциях пользовательских обобщений. Более практические примеры будут предоставлены, когда я получу больше опыта использования пользовательских обобщений.