30.86 USD
Наличие на складе:
Ожидаемое поступление (если вы сделаете заказ прямо сейчас): 03.09.2024; планируемая отправка: 04.09.2024
Ожидаемое поступление (если вы сделаете заказ прямо сейчас): 06.09.2024; планируемая отправка: 07.09.2024
Издательство: | Вильямс/Диалектика |
Серия: | Несерийные |
Дата выхода: | ноябрь 2018 |
ISBN: | 978-5-907114-21-0 |
Объём: | 432 страниц |
Масса: | 693 г |
Размеры(В x Ш x Т), см: | 24 x 17 |
Обложка: | твёрдая |
Бумага: | офсетная |
Переводное издание | + |
Место в рейтинге продаж: | 124 |
Вы краем уха слышали о новом языке программирования Go, но не знаете, что он представляет собой на самом деле? Ответы на все ваши вопросы вы получите в этой книге. Она поможет вам познакомиться с языком Go поближе, узнать о его предназначении и преимуществах, и о том, как писать программы на этом языке (причем это будут программы не начинающего, но профессионального программиста — эффективные и идеоматичные).
Книга написана двумя профессионалами — как в области программирования, так и в области написания книг на программистские темы. Так что если вы хотите быть в курсе последних достижений в программировании — не сомневайтесь, взяв эту книгу, вы свернули на верный путь к профессиональному овладению языком Go. Книга предназначена в первую очередь для программистов, уже уверенно владеющих каким-либо языком программирования.
Данная книга является важным и авторитетным источником знаний для тех, кто хочет изучить язык программирования Go. Она рассказывает о том, как писать ясные и идиоматические программы на языке Go для решения реальных практических задач. Книга не предполагает ни наличие некоторых предварительных знаний языка Go, ни опыта в работе с каким-то конкретным языком программирования, так что она будет доступна для вас, с каким бы языком вы раньше не работали — JavaScript, Ruby, Python, Java или C++.
Первая глава представляет собой справочник основных концепций языка Go, показанных на примере программ файлового ввода-вывода и обработки текстов, простейшей графики, а также веб-клиентов и серверов. Первые главы охватывают структурные элементы программ на языке Go: синтаксис, управление потоком выполнения, типы данных и организация программ в виде пакетов, файлов и функций.
Приводимые примеры иллюстрируют множество пакетов стандартной библиотеки и показывают, как создавать собственные пакеты. В последующих главах механизм пакетов будет рассмотрен более подробно, и вы узнаете, как строить, тестировать и поддерживать проекты, используя инструментарий go. В главах, посвященных методам и интерфейсам, описывается нестандартный подход языка Go к объектно-ориентированному программированию, в котором методы могут быть объявлены для любого типа, а интерфейсы — неявно удовлетворены.
В этих главах поясняются ключевые принципы инкапсуляции, композиции и заменимости с использованием реалистичных примеров. Две главы, посвященные параллелизму, представляют углубленный подход к этой важной теме. Первая глава охватывает основные механизмы go-подпрограмм и каналов, иллюстрирует стиль, известный как взаимодействие последовательных процессов, которым знаменит Go. Вторая охватывает более традиционные аспекты параллелизма с совместно используемыми переменными.
Эти главы обеспечивают прочный фундамент для программистов, которые впервые встречаются с параллельными вычислениями. Две последние главы рассматривают низкоуровневые возможности языка Go. Одна из них посвящена искусству метапрограммирования с помощью рефлексии, а другая показывает, как использовать пакет unsafe для выхода за пределы системы типов в особых случаях, а также как использовать инструмент cgo для связи Go с библиотеками C.
В книге приведены сотни интересных и практичных примеров хорошо написанного кода на языке Go, которые охватывают весь язык, его наиболее важные пакеты, и имеют широкий спектр применения.
В каждой главе содержатся упражнения для проверки вашего понимания и изучения возможных расширений и альтернатив. Исходные тексты свободно доступны для скачивания с адреса http://gopl.io/ и могут быть легко получены, построены и инсталлированы с использованием команды go get