Программист-прагматик. Путь от подмастерья к мастеру

Краткое описание

Находясь на переднем крае программирования, книга "Программист-прагматик. Путь от подмастерья к мастеру" абстрагируется от всевозрастающей специализации и технических тонкостей разработки программ на современном уровне, чтобы исследовать суть процесса – требования к работоспособной и поддерживаемой программе, приводящей пользователей в восторг. Книга охватывает различные темы – от личной ответственности и карьерного роста до архитектурных методик, придающих программам гибкость и простоту в адаптации и повторном использовании.

Прочитав эту книгу, вы научитесь:

Бороться с недостатками программного обеспечения;

Избегать ловушек, связанных с дублированием знания;

Создавать гибкие, динамичные и адаптируемые программы;

Избегать программирования в расчете на совпадение;

Защищать вашу программу при помощи контрактов, утверждений и исключений;

Собирать реальные требования;

Осуществлять безжалостное и эффективное тестирование;

Приводить в восторг ваших пользователей;

Формировать команды из программистов-прагматиков и с помощью автоматизации делать ваши разработки более точными.

Содержание

Глава 1 Прагматическая философия 1 Мой исходный текст съел кот Мурзик Принятие ответственности

Глава 1 Прагматическая философия 4 Приемлемые программы Находите компромисс с пользователями

Глава 1 Прагматическая философия 4 Приемлемые программы Знайте меру

Глава 1 Прагматическая философия 5 Портфель знаний Ваш портфель знаний

Глава 1 Прагматическая философия 5 Портфель знаний Построение вашего портфеля

Глава 1 Прагматическая философия 5 Портфель знаний Цели

Глава 1 Прагматическая философия 5 Портфель знаний Возможности обучения

Глава 1 Прагматическая философия 5 Портфель знаний Критическое осмысление

Глава 2 Прагматический подход 7 Пороки дублирования Как возникает дублирование?

Глава 2 Прагматический подход 7 Пороки дублирования Навязанное дублирование

Глава 2 Прагматический подход 7 Пороки дублирования Неумышленное дублирование

Глава 2 Прагматический подход 7 Пороки дублирования Нетерпеливое дублирование

Глава 2 Прагматический подход 7 Пороки дублирования Коллективное дублирование

Глава 2 Прагматический подход 8 Ортогональность Что такое ортогональность?

Глава 2 Прагматический подход 8 Ортогональность Преимущества ортогональности

Глава 2 Прагматический подход 8 Ортогональность Проектные группы

Глава 2 Прагматический подход 8 Ортогональность Проектирование

Глава 2 Прагматический подход 8 Ортогональность Инструментарии и библиотеки

Глава 2 Прагматический подход 8 Ортогональность Написание текста программы

Глава 2 Прагматический подход 8 Ортогональность Тестирование

Глава 2 Прагматический подход 8 Ортогональность Документация

Глава 2 Прагматический подход 8 Ортогональность Жизнь в условиях ортогональности

Глава 2 Прагматический подход 9 Обратимость Гибкая архитектура

Глава 2 Прагматический подход 10 Стрельба трассирующими Программа, которую видно в темноте

Глава 2 Прагматический подход 10 Стрельба трассирующими При стрельбе трассирующими вы не всегда попадаете в цель

Глава 2 Прагматический подход 10 Стрельба трассирующими Программа трассировки и создание прототипов

Глава 2 Прагматический подход 11 Прототипы и памятные записки Для чего создаются прототипы

Глава 2 Прагматический подход 11 Прототипы и памятные записки Как использовать прототипы

Глава 2 Прагматический подход 11 Прототипы и памятные записки Создание прототипов архитектуры

Глава 2 Прагматический подход 11 Прототипы и памятные записки Как не надо использовать прототипы

Глава 2 Прагматический подход 13 Оценка Насколько точной является "приемлемая точность"?

Глава 2 Прагматический подход 13 Оценка Из чего исходят оценки?

Глава 2 Прагматический подход 13 Оценка Что сказать, если вас просят оценить что-либо

Глава 3 Походный набор инструментов 14 Преимущества простого текста Что такое простой текст?

Глава 3 Походный набор инструментов 14 Преимущества простого текста Недостатки

Глава 3 Походный набор инструментов 14 Преимущества простого текста Преимущества простого текста

Глава 3 Походный набор инструментов 14 Преимущества простого текста Подводим итог

Глава 3 Походный набор инструментов 15 Игры с оболочками Утилиты оболочек и системы Windows

Глава 3 Походный набор инструментов 16 Мощь редактирования Один-единственный редактор

Глава 3 Походный набор инструментов 16 Мощь редактирования Средства редактирования

Глава 3 Походный набор инструментов 16 Мощь редактирования Производительность

Глава 3 Походный набор инструментов 16 Мощь редактирования Куда же направиться?

Глава 3 Походный набор инструментов 16 Мощь редактирования Какой же редактор выбрать?

Глава 3 Походный набор инструментов 17 Управление исходным текстом программ Команда, в которой я работаю, не использует систему управления исходным текстом

Глава 3 Походный набор инструментов 17 Управление исходным текстом программ Программы управления исходным текстом

Глава 3 Походный набор инструментов 18 Отладка Психология процесса отладки

Глава 3 Походный набор инструментов 18 Отладка Умонастроение отладки

Глава 3 Походный набор инструментов 18 Отладка С чего начать?

Глава 3 Походный набор инструментов 18 Отладка Стратегии отладки

Глава 3 Походный набор инструментов 18 Отладка Элемент удивления

Глава 3 Походный набор инструментов 18 Отладка Контрольные вопросы при отладке

Глава 3 Походный набор инструментов 20 Генераторы текстов программ Пассивные генераторы

Глава 3 Походный набор инструментов 20 Генераторы текстов программ Активные генераторы текста

Глава 3 Походный набор инструментов 20 Генераторы текстов программ Генераторы текста не должны быть слишком сложными

Глава 3 Походный набор инструментов 20 Генераторы текстов программ Генераторы текста не всегда генерируют тексты программ

Глава 4 Прагматическая паранойя 21 Проектирование по контракту Реализация принципа ППК

Глава 4 Прагматическая паранойя 21 Проектирование по контракту ППК и аварийное завершение работы программы

Глава 4 Прагматическая паранойя 21 Проектирование по контракту Другие случаи применения инвариантов

Глава 4 Прагматическая паранойя 21 Проектирование по контракту Динамические контракты и агенты

Глава 4 Прагматическая паранойя 22 Мертвые программы не лгут Аварийное завершение не означает "отправить в корзину для мусора"

Глава 4 Прагматическая паранойя 23 Программирование утверждений Не отключайте утверждения

Глава 4 Прагматическая паранойя 24 Случаи, в которых используются исключения Что является исключительным?

Глава 4 Прагматическая паранойя 24 Случаи, в которых используются исключения Обработчики ошибок как альтернатива исключению

Глава 4 Прагматическая паранойя 25 Балансировка ресурсов Объекты и исключения

Глава 4 Прагматическая паранойя 25 Балансировка ресурсов Балансировка и исключения

Глава 4 Прагматическая паранойя 25 Балансировка ресурсов Случаи, при которых балансировка ресурсов невозможна

Глава 4 Прагматическая паранойя 25 Балансировка ресурсов Проверка баланса

Глава 5 Гибкость против хрупкости 26 Несвязанность и закон Деметера Сведение связанности к минимуму

Глава 5 Гибкость против хрупкости 26 Несвязанность и закон Деметера Закон Деметера для функций

Глава 5 Гибкость против хрупкости 26 Несвязанность и закон Деметера А не все ли равно?

Глава 5 Гибкость против хрупкости 27 Метапрограммирование Динамическая конфигурация

Глава 5 Гибкость против хрупкости 27 Метапрограммирование Приложения, управляемые метаданными

Глава 5 Гибкость против хрупкости 28 Временное связывание Последовательность операций

Глава 5 Гибкость против хрупкости 28 Временное связывание Архитектура

Глава 5 Гибкость против хрупкости 28 Временное связывание Проектирование с использованием принципа параллелизма

Глава 5 Гибкость против хрупкости 28 Временное связывание Развертывание

Глава 5 Гибкость против хрупкости 29 Всего лишь визуальное представление Протокол "Публикация и подписка"

Глава 5 Гибкость против хрупкости 29 Всего лишь визуальное представление Принцип "модель-визуальное представление-контроллер»

Глава 5 Гибкость против хрупкости 29 Всего лишь визуальное представление Отходя от графических интерфейсов

Глава 5 Гибкость против хрупкости 29 Всего лишь визуальное представление Все такой же связанный (после стольких лет)

Глава 5 Гибкость против хрупкости 30 Доски объявлений Реализация концепции доски объявлений

Глава 5 Гибкость против хрупкости 30 Доски объявлений Пример приложения

Глава 6 Пока вы пишете программу 31 Программирование в расчете на стечение обстоятельств Как программировать в расчете на стечение обстоятельств

Глава 6 Пока вы пишете программу 31 Программирование в расчете на стечение обстоятельств Преднамеренное программирование

Глава 6 Пока вы пишете программу 32 Скорость алгоритма Что подразумевается под оценкой алгоритмов?

Глава 6 Пока вы пишете программу 32 Скорость алгоритма Система обозначений О()

Глава 6 Пока вы пишете программу 32 Скорость алгоритма Оценка с точки зрения здравого смысла

Глава 6 Пока вы пишете программу 32 Скорость алгоритма Скорость алгоритма на практике

Глава 6 Пока вы пишете программу 33 Реорганизация Когда осуществлять реорганизацию?

Глава 6 Пока вы пишете программу 33 Реорганизация Как производится реорганизация?

Глава 6 Пока вы пишете программу 34 Программа, которую легко тестировать Модульное тестирование

Глава 6 Пока вы пишете программу 34 Программа, которую легко тестировать Тестирование в рамках контракта

Глава 6 Пока вы пишете программу 34 Программа, которую легко тестировать Создание модульных тестов

Глава 6 Пока вы пишете программу 34 Программа, которую легко тестировать Применение тестовых стендов

Глава 6 Пока вы пишете программу 34 Программа, которую легко тестировать Построение тестового окна

Глава 6 Пока вы пишете программу 34 Программа, которую легко тестировать Культура тестирования

Глава 7 Перед тем, как начать проект 36 Карьер для добычи требований В поисках требований

Глава 7 Перед тем, как начать проект 36 Карьер для добычи требований Документация требований

Глава 7 Перед тем, как начать проект 36 Карьер для добычи требований Чрезмерная спецификация

Глава 7 Перед тем, как начать проект 36 Карьер для добычи требований Видеть перспективу

Глава 7 Перед тем, как начать проект 36 Карьер для добычи требований Еще одна мелочь…

Глава 7 Перед тем, как начать проект 36 Карьер для добычи требований Поддержка глоссария

Глава 7 Перед тем, как начать проект 36 Карьер для добычи требований Прошу слова…

Глава 7 Перед тем, как начать проект 37 Разгадка невероятных головоломок Степени свободы

Глава 7 Перед тем, как начать проект 37 Разгадка невероятных головоломок Есть более простой способ!

Глава 7 Перед тем, как начать проект 38 Чувство готовности Здравое суждение или промедление?

Глава 7 Перед тем, как начать проект 40 Круги и стрелки Какова отдача от методов?

Глава 7 Перед тем, как начать проект 40 Круги и стрелки Нужно ли использовать формальные методы?

Глава 8 Прагматические проекты 41 Команды прагматиков Никаких разбитых окон

Глава 8 Прагматические проекты 41 Команды прагматиков Сварившиеся лягушки

Глава 8 Прагматические проекты 41 Команды прагматиков Общайтесь

Глава 8 Прагматические проекты 41 Команды прагматиков Не повторяйте самого себя

Глава 8 Прагматические проекты 41 Команды прагматиков Ортогональность

Глава 8 Прагматические проекты 41 Команды прагматиков Автоматизация

Глава 8 Прагматические проекты 41 Команды прагматиков Чувствуйте момент, когда нужно остановиться

Глава 8 Прагматические проекты 42 Вездесущая автоматизация Все в автоматическом режиме

Глава 8 Прагматические проекты 42 Вездесущая автоматизация Компилирование проекта

Глава 8 Прагматические проекты 42 Вездесущая автоматизация Автоматизация процесса сборки

Глава 8 Прагматические проекты 42 Вездесущая автоматизация Автоматические административные процедуры

Глава 8 Прагматические проекты 42 Вездесущая автоматизация Дети сапожника

Глава 8 Прагматические проекты 43 Безжалостное тестирование Что тестировать

Глава 8 Прагматические проекты 43 Безжалостное тестирование Как проводить тестирование

Глава 8 Прагматические проекты 43 Безжалостное тестирование Когда тестировать

Глава 8 Прагматические проекты 43 Безжалостное тестирование Кольцо сжимается

Глава 8 Прагматические проекты 44 Все эти сочинения Комментарии в программе

Глава 8 Прагматические проекты 44 Все эти сочинения Исполняемые документы

Глава 8 Прагматические проекты 44 Все эти сочинения Технические писатели

Глава 8 Прагматические проекты 44 Все эти сочинения Печатать документ или ткать его на холсте?

Глава 8 Прагматические проекты 44 Все эти сочинения Языки разметки

Глава 8 Прагматические проекты 45 Большие надежды Передача надежд

Глава 8 Прагматические проекты 45 Большие надежды Небольшой довесок

© 2010 — www.kristina-ametov.narod.ru
Hosted by uCoz