Купить книги Ешь, двигайся, спи Чек-лист. Как избежать глупых ошибок, ведущих к фатальным последствиям Телефоны Бизбук - c 10 до 18 по будним дням
 
Наши проекты:
Вход для зарегистрированных пользователей
Регистрация нового пользователя
Главная Новинки Анонсы Мои заказы Рассылка Оплата и Доставка Контакты
АУДИОКНИГИ ПО БИЗНЕСУ ЭКОНОМИЧЕСКАЯ ЛИТЕРАТУРА КОМПЬЮТЕРНАЯ ЛИТЕРАТУРА ДЕТСКАЯ ЛИТЕРАТУРА
ДОМ, БЫТ, ДОСУГ ЕСТЕСТВЕННЫЕ НАУКИ ИНОСТРАННЫЕ ЯЗЫКИ ИСКУССТВО, ЖИВОПИСЬ
ОБЩЕСТВЕННЫЕ И ГУМАНИТАРНЫЕ НАУКИ ПОДАРОЧНАЯ ЛИТЕРАТУРА ПСИХОЛОГИЯ ТЕХНИЧЕСКАЯ ЛИТЕРАТУРА
ХУДОЖЕСТВЕННАЯ и ПОПУЛЯРНАЯ ЛИТЕРАТУРА ЭЛЕКТРОНИКА РАСПРОДАЖА. СУПЕРСКИДКИ !!!  
Вы находитесь в разделе каталога:
• Программирование без дураков, Катриг Пассиг, Йоханнес Яндер

Программирование без дураков
Книга Программирование без дураков
Катриг Пассиг, Йоханнес Яндер
Год выпуска: 2016
Изд-во: Питер
ISBN: 978-5-496-02023-7
Переплёт: мягкий
416 страниц
Цена: 698.00 грн.
Есть в наличии
в корзину

Instant Purshare Только 1 книга
Доставка: по Киеву - в течение суток*
                по Украине - от 2 до 10 суток*
Хотите научиться программировать "less wrong"? Тогда эта книга - для вас. Ведь программирование - это во многом коммуникация. Стиль программирования, именование, комментирование, работа с чужим кодом - зачастую соглашения складываются именно там, где строгая регламентация на уровне языка программирования отсутствует.
Познакомьтесь с разнообразными традициями, существующими в различных языках программирования, узнайте, как практически не спотыкаясь передвигаться по этой пересеченной местности.
Со знанием дела и юмором авторы книги "Программирование без дураков" погружаются в обсуждение ложных путей, неверных суждений и ошибок, тем самым значительно облегчая жизнь любому начинающему и бывалому программисту.




Оглавление книги Катриг Пассиг, Йоханнес Яндер "Программирование без дураков"




Предисловие. 17
Почему нужно столько времени, чтобы поумнеть?. 19
Проблемы, характерные для плохих программистов. 20
Топ-7 отговорок плохих программистов. 21
Несколько лет спустя. 22
Что же вас ждет на следующих 393 страницах. 23
Часть I. Привет, миф! Привет, мир!
Глава 1. Туда ли я попал?. 26
Глава 2. От гордыни к смирению . 29
Слабые стороны могут быть сильными. 31
Истина не всегда кроется в сложном. 33
Часть II. Программировать и понимать
Глава 3. Ты такой же, как все. 36
Глава 4. Договоренности. 38
Учить ли английский. 39
Камень преткновения . 42
Договоренности в команде. 45
Глава 5. Присвоение имен. 47
Правила присвоения имен. 47
Сначала Византий, потом Константинополь, теперь Стамбул . 49
Что должны уметь имена. 51
Читать, понимать и не путать . 52
Ясность и логика. 54
Никаких шуток! Никакой крутости! . 56
Материал, из которого делаются имена. 57
Процессы, функции, методы. 58
Переменные типа Boolean . 67
Объектно-ориентированное пр ограммирование. 69
Базы данных. 70
Что же дальше?. 72
Глава 6. Комментарии . 74
Меньше слов - больше дела. 76
О структуре комментариев. 77
Комментарии к документации . 79
Когда и что нужно комментировать. 80
Случаи, когда комментарий мог бы помочь . 82
Проблемные комментарии. 86
Глава 7. Чтение кода. 89
Думаете, это действительно того стоит?. . . . . . . . . . . . . . . . 89
Сперва читайте документацию. 91
Распечатайте исходник . 92
Схематично изобразите для себя, для чего предназначены
некоторые компоненты программы . 93
Сверху вниз, от простого к сложному. 93
Учитесь искусству следопыта. 94
Соотношение 80/20 оптимально (в большинстве случаев) . 95
Помните о форматах данных. 95
Истина в самой программе. 96
Коллективное чтение кода. 96
Глава 8. Где искать помощь. 97
Подходящий момент . 98
Спрашивайте в подходящем месте. 100
Структурируйте запрос правильно. 101
Думайте о читателе. 104
Не ожидайте слишком многого. 105
Не приводите абстрактных примеров. 105
Оставайтесь вежливы несмотря ни на что. 106
Глава 9. Право на оказание помощи. 108
Неправильная причина . 108
Корыстные мотивы . 110
Отсутствие эмпатии. 111
Слишком много информации сразу. 112
Отвечайте на конкретные вопросы. 113
Если вы сами не знаете ответа. 114
Если ваши коллеги худшие программисты, чем вы. 115
Плохой код? Сохраняйте спокойствие . 116
Глава 10. Как выжить в команде. 118
Это не я!. 120
Фактор автобуса . 121
Сотрудничество с заказчиками. 123
Работа с добровольцами . 123
Часть III. Работа над ошибками
Глава 11. Искусство ошибаться для начинающих. 126
В гостях у заблуждения: чувствуйте себя как дома. 127
Изучение ошибок в повседневности. 128
Базу данных съела собака!. 129
Шлем с мягкой подкладкой . 130
Глава 12. Отладка I: поиск ошибок как наука. 134
Систематический поиск ошибок. 136
Наблюдение . 137
Что усложняет наблюдение. 139
Анализ и построение гипотез. 140
Что усложняет построение гипотез . 141
Проверка гипотез . 142
Что усложняет проверку гипотез. 143
Глава 13. Отладка II: найди ошибку. 145
Сообщения об ошибках - наши друзья. 145
Кому тут что-то от меня нужно?. 146
Инструменты и стратегии диагностики. 148
Привычные подозреваемые. 149
Валидаторы, Lint-программы, анализ кода. 149
Отладка с помощью команды print. 150
Ведение журналов. 151
Отладчики. . . . . . . . . . . . . . . . . . . . . . . . 153
Отладка в декларативных языках программирования. 159
Если больше ничего не помогает. 162
Если и это не помогает . 164
После поиска ошибок о поиске ошибок . 164
Наиболее распространенные причины ошибок плохих
программистов . 165
Глава 14. Недобрые предзнаменования,
или Коричневые M&M's . 167
Слишком большие файлы . 168
Очень длинные функции. 169
Слишком широкие функции. 169
Многоуровневые функции if/then. 170
Всплывающие посреди кода числа. 172
Сложные арифметические выражения в коде. 172
Глобальные переменные. 173
Ремонтный код . 174
Собственная имплементация функций. 175
Особые случаи. 176
Неунифицированное написание. 176
Функции более чем с пятью параметрами . 177
Дублирование кода. 178
Сомнительные названия файлов . 178
Лабиринт чтения. 178
Бесполезные комментарии. 179
Очень большое количество базовых классов или интерфейсов. 180
Очень большое количество переменных или свойств объекта. 180
Блоки кода и функции, помещенные в комментарии. 181
Использование определенного браузера . 181
Подозрительные звуки клавиатуры . 182
Глава 15. Рефакторинг. 184
Писать ли заново?. 185
Когда нужен рефакторинг. 186
Все по порядку . 189
Распределите код по нескольким файлам. 194
Разбейте программный модуль на более мелкие модули. . . . . . . . . . . 194
Устраняйте побочные эффекты. 196
Объединяйте код. 197
Понятнее оформляйте условия . 201
Правильный цикл для правильной цели. 203
Оформляйте циклы понятнее. 204
Посмотрите критически на переменные. 206
Рефакторинг баз данных. 207
Что можно сделать еще. 209
Стало ли теперь действительно лучше?. 210
Когда от рефакторинга лучше отказаться. . . . . . . . . . . . . . . . . . . . . . 211
Проблема и ее решение. 214
Глава 16. Тестирование. 216
Для чего нужно тестирование. 216
Способы тестирования. 217
Системное тестирование. 217
Модульное тестирование. 219
Валидация данных. 222
Тестирование производительности . 224
Правильно тестировать. 227
Глава 17. Предупреждающие знаки. 228
GET- и POST-запросы. 228
Кодирование знаков . 230
Указание времени и даты. 231
Сохранение десятичных дробей в виде строковых,
целочисленных и десятичных переменных. 232
Передача переменных в виде значений или ссылки. 234
Тяжелая работа с ничем . 236
Рекурсия. 237
Юзабилити . 238
Глава 18. Компромиссы. 240
Обманчивые достоинства. 242
Уверенность в завтрашнем дне. 242
Скорость. 243
Совершенство, красота, элегантность. 245
Абсолютизация: когда допустимы порочные практики. 246
Часть IV. Выбор средств
Глава 19. Не делай сам. 252
Что делать. 254
Библиотеки. 255
Обращение с чужим кодом. 257
Чего не нужно делать самостоятельно. 258
Чего ни в коем случае не следует делать самостоятельно. 262
Три решения одной проблемы. 266
Глава 20. Инструментарий. 268
Редакторы. 269
Какой язык программирования правильный?. 270
REPL. 274
Diff и patch . 276
Менеджер пакетов. 279
Фреймворки. 281
Выбор фреймворка. 282
Предупредительные знаки при работе с фреймворками. 282
Среды разработки. 284
Управление проектами . 284
Проверка кода . 285
Автодополнение кода . 286
Помощь в организации труда. . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Поиск и рефакторинг. 289
Недостатки. 290
Глава 21. Система контроля версий. 292
Альтернативы. 294
Работа в VCS. 295
Разрешение конфликтов . 297
Какую систему контроля версий выбрать?. 298
Subversion. 299
Git. 299
Полезные идеи при работе с системой контроля версий. 300
Неудачные идеи при работе с системой контроля версий. 301
Система контроля версий - элемент ПО . 302
Глава 22. Command and Conquer: из жизни командной строки . 304
Повышение эффективности с помощью автоматизации . 305
Наши длиннобородые предки . 307
Windows . 308
Что следует знать каждому программисту . 308
Параметры . 309
Аргументы. 310
Что делать с результатами?. 311
Сопряжение результатов. 311
Символы-джокеры. 312
Навигация. 313
Файлы. 313
Просмотр. 315
Искать и найти . 317
Сбережение ресурсов . 319
Совместная работа . 321
Синхронизация . 321
Редактирование с сервера. 322
Интернет. 323
Стоит ли помнить обо всем этом?. 324
Еще не всё!. 325
Глава 23. Объектно-ориентированное программирование. 326
Преимущества объектно-ориентированного программирования. 328
Принципы объектно-ориентированного программирования . 330
Модульность и инкапсуляция. 330
Абстракция данных. 332
Полиморфизм. 335
Наследование. 335
Разумное использование ООП . 337
Недостатки и проблемы. 340
Различные модели объекта в зависимости от языка. 341
Объектно-ориентированное программирование и планы
по захвату мира. 341
Глава 24. Хранение данных. 343
Файлы. 344
CSV/TSV . 346
XML. 347
JSON. 347
YAML. 348
Системы управления версиями. 349
Базы данных. 349
Искать и найти . 349
Реляционные базы данных . 350
Базы данных NoSQL. 353
Документоориентированные базы данных,
такие как CouchDB или MongoDB. 354
Графовые базы данных, такие как Neo4j. 355
Глава 25. Безопасность. 356
Важные концепции . 357
Преимущества и недостатки открытости . 359
Работа с паролями. 361
Методы аутентификации. 362
Внедрение SQL-кода и XSS - угрозы в пользовательском контенте. 366
Белые списки лучше черных . 371
Установите все ползунки на минимум. 372
Черный ход тоже запирайте. 374
Тестирование на проникновение. 375
Ошибки других . 376
Безопасность - это процесс . 377
Глава 26. Полезные концепции. 379
Исключения. 379
Обработка ошибок. 382
Состояние и отсутствие сохранения состояния. 386
ID, GUID, UUID . 387
Языковые семьи. 389
Типы переменных . 391
Разделение содержания и представления . 394
Разделение на сервер разработки и "продакшн"-сервер . 395
Селекторы. 396
Пространства имен . 398
Область видимости переменных. 400
Утверждения. 401
Транзакции и откаты. 404
Хеш-коды, дайджесты, цифровые отпечатки . 404
CRUD и REST. 407
Глава 27. Что дальше?. 409
Кто такой хороший программист . 410
Что еще можно почитать. 411
Благодарности . 413
Указатель. 414

С этой книгой чаще всего покупают:
Эффективная работа с унаследованным кодом

Эффективная работа с унаследованным кодом

рекомендуем
Майкл Физерс
Год выпуска: 2016
Изд-во: Диалектика-Вильямс
в корзину
Только 1 книга
 
Чистый код: создание, анализ и рефакторинг. Библиотека программиста

Чистый код: создание, анализ и рефакторинг. Библиотека программиста

рекомендуем
Мартин Роберт
Год выпуска: 2016
Изд-во: Питер
Временно отсутствует Оставить заявку
Цена: 765.00 грн. 
 
Цена: 370.00 грн. 
Совершенный код

Совершенный код

Стив Макконнелл
Год выпуска: 2016
Изд-во: Русская редакция
в корзину
Только 1 книга
 
Гибкая разработка программ на Java и C++: принципы, паттерны и методики

Гибкая разработка программ на Java и C++: принципы, паттерны и методики

рекомендуем
Роберт C. Мартин
Год выпуска: 2016
Изд-во: Диалектика-Вильямс
в корзину
Только 1 книга
Цена: 960.00 грн. 
 
Цена: 765.00 грн. 
Идеальный программист. Как стать профессионалом разработки ПО

Идеальный программист. Как стать профессионалом разработки ПО

Мартин Р.
Год выпуска: 2016
Изд-во: Питер

в корзину

Instant Purshare Только 1 книга
 
   
Цена: 335.00 грн. 
   

Хотите оставить отзыв? У Вас возникли вопросы о книге "Программирование без дураков, Катриг Пассиг, Йоханнес Яндер" ? Пишите:

* Текст сообщения:
 
  Отправить
Сайт по косметолгии
Поиск по каталогу
 поиск в аннотациях
Искать

* Подробнее об условиях доставки смотрите в разделе "Оплата и Доставка" нашего магазина.
Если у Вас возникли вопросы как подобрать и купить книги в нашем интернет-магазине звоните с 9 до 18 по будним дням: Киев 331-04-53, МТС (050) 809-56-66, Киевстар (067) 408-26-36, Лайф (063) 227-24-47, Интертелеком (094) 831-04-53 или пишите нам