Ум программиста. Как понять и осмыслить любой код [Фелин Херманс] (pdf) читать постранично

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

The Programmer’s Brain
FELIENNE HERMANS
Foreword byJon Sheet

11
MANNING
Shelter Island

УМ ПРОГРАММИСТА
КАК ПОНЯТЬ
и осмыслить
ЛЮБОЙ КОД
Фелин Хермане
Предисловие Джона Скита

Санкт-Петербург
«БХВ-Петербург»
2023

УДК 004.4
ББК 32.973.26-02
Х39

Хермане Ф.
Х39

Ум программиста. Как понять и осмыслить любой код: Пер. с англ. —
СПб.: БХВ-Петербург, 2023. — 272 с.: ил.

ISBN 978-5-9775-1176-6
Книга освещает практические основы когнитивистики для программистов.
Основные темы: осмысление и развитие чужого и собственного кода, изучение но­
вых языков программирования, мнемонические приемы для программистов, под­
держка кода в читаемом состоянии. Объяснено, как снижать когнитивную нагрузку
при работе программиста, как делать код логичным и понятным для себя и коллег.
Рассмотрены приемы именования функций, классов и переменных, подходы
к ведению репозиториев, совместной разработке и доработке кода.

Для программистов и других 1Т-специалистов
УДК 004.4
ББК 32.973.26-02

Группа подготовки издания:

Руководитель проекта
Зав редакцией
Перевод с английского
Компьютерная верстка
Оформление обложки

Олег Спеченко
Людмила Гауль
Кристины Черниковой
Ольги Сергиенко
Зои Канторович

Original English language edition published by Manning Publications
Copyright (c) 2021 by Manning Publications
Russian-language edition copyright (c) 2022 by BHV All rights reserved
Оригинальное издание на английском языке опубликовано Manning Publications
©2021 Manning Publications
Издание на русском языке © 2022 ООО «БХВ» Все права защищены

Подписано в печать 02 09 22
Формат 70x1001/i6 Печать офсетная Усл печ л 21,93
Тираж 1000 экз. Заказ № 5329
"БХВ-Петербург", 191036, Санкт-Петербург, Гончарная ул , 20

Отпечатано с готового оригинал-макета
ООО "Принт-М", 142300, М О , г Чехов, ул Полиграфистов, д 1

ISBN 978-1-61729-867-7 (англ.)
ISBN 978-5-9775-1176-6 (рус.)

© Manning Publications, 2021
© Перевод на русский язык, оформление ООО "БХВ-Петербург",
ООО "БХВ", 2023

Оглавление

Предисловие.................................................................................................................... 13

От автора.........................................................................................................................15
Благодарности.................................................................................................................17
О книге.............................................................................................................................19
Структура книги...................................................................................................................................... 19
Дискуссионный форум liveBook.........................................................................................................20

Об авторе......................................................................................................................... 21
Об обложке...................................................................................................................... 23
ЧАСТЬ I. ОБ УЛУЧШЕНИИ НАВЫКОВ ЧТЕНИЯ КОДА................................ 25
Глава 1. Определение вашего типа замешательства при кодировании............ 27
1.1. Разные типы замешательства в коде........................................................................................... 28
1.1.1. Первый тип замешательства — недостаток знаний..................................................... 29
1.1.2. Второй тип замешательства — недостаток информации........................................... 29
1.1.3. Третий тип замешательства — недостаток вычислительной мощности.................30
1.2. Различные когнитивные процессы, влияющие на процесс кодирования........................... 31
1.2.1. Долговременная память и программирование.............................................................. 31
Программа на APL с точки зрения долговременной памяти..................................... 32
1.2.2. Кратковременная память и программирование............................................................32
Программа на Java с точки зрения кратковременной памяти................................... 32
1.2.3. Рабочая память и программирование............................................................................. 33
Программа на BASIC с точки зрения рабочей памяти................................................ 33
1.3. Совместная работа когнитивных процессов............................................................................. 34
1.3.1. Краткое описание того, как когнитивные процессы взаимодействуют
друг с другом.................................................................................................................................. 34
1.3.2. Когнитивные процессы и программирование............................................................... 35
Выводы.................................................................................................................................................... 37

Глава 2. Скорочтение кода.......................................................................................... 39
2.1. Быстрое чтение кода.................................................................................................................... 40
2.1.1. Что только что происходило в вашем мозге................................................................. 41
2.1.2. Перепроверка воспроизведенного кода......................................................................... 42
Вторая попытка воспроизведения кода......................................................................... 43

2.1.3. Перепроверка воспроизведенного................................................................................... 44
2.1.4. Почему читать незнакомый код так сложно..................................................................44
2.2. Преодоление лимитов памяти..................................................................................................... 45
2.2.1. Сила чанков......................................................................................................................... 45
Чанки кода.......................................................................................................................... 48
2.2.2. Опытные