В корзину
Купить в 1 клик
Бесплатная доставка Новой Почтой
Отправка на следующий рабочий день
Отправка на следующий рабочий день
Описание
2012г.
Количество страниц: 592
Авторы популярной в IT-сообществе книги «Идеальный код» вновь предлагают вашему вниманию подборку лучших решений от признанных экспертов в области разработки ПО. Существует много споров о том, какие же инструменты, технологии и практики могут действительно оптимизировать процесс разработки ПО и усовершенствовать конечный продукт. В новой книге Идеальная разработка ПО. Рецепты лучших программистов. Орам под редакцией Энди Орама и Грега Уилсона известные разработчики делятся своим бесценным опытом и мнениями на эту тему. Авторские эссе и статьи посвящены наиболее эффективным методам работы программиста, а также развенчиванию ряда мифов, существующих в программистском сообществе. Среди авторов книги — такие авторитеты, как Стив Макконнелл, Барри Бэм, Барбара Китченхем и еще 27 известных экспертов в области разработки программного обеспечения.
Содержание книги
Идеальная разработка ПО. Рецепты лучших программистов. Орам
Предисловие........................................................................................... 17
Часть I. Общие принципы поиска и использования
доказательств
Глава 1. Задача сбора убедительных доказательств ........................ 22
Тим Мензес, Форрест Шалл
В начале ...........................................................................................................................................22
Как обстоят дела сегодня ..........................................................................................................23
Что может измениться ...............................................................................................................26
Влияние контекста ......................................................................................................................29
Взгляд в будущее .........................................................................................................................30
Библиография...............................................................................................................................33
Глава 2. Достоверность, или Почему мы настаиваем на том,
чтобы нас убедили ................................................................ 36
Лютц Прекелт, Мэриан Петр
Как появляются доказательства в области технологии программирования ..........36
Достоверность и релевантность .............................................................................................38
Объединение доказательств ....................................................................................................42
Виды доказательств, их сильные и слабые стороны .......................................................44
Общество, культура, технология программирования и вы ...........................................52
Благодарности ..............................................................................................................................53
Библиография...............................................................................................................................53
Глава 3. Что можно узнать из систематического обзора .................. 55
Барбара Китченхэм
Общие сведения о систематических обзорах .....................................................................56
Достоинства и недостатки систематических обзоров .....................................................59
Систематические обзоры в области технологий программирования .......................64
Гибкие методы ..............................................................................................................................66
Заключение ....................................................................................................................................70
Библиография...............................................................................................................................71
Глава 4. Качественные методы в области технологий
программирования ................................................................ 76
Эндрю Ко
Что такое «качественные методы» ........................................................................................77
Чтение результатов качественных исследований ............................................................79
Применение качественных методов на практике .............................................................81
Обобщение результатов качественных исследований ...................................................83
О систематичности качественных методов ........................................................................84
Библиография...............................................................................................................................84
Глава 5. Уроки практического применения: становление
метода QIP ............................................................................. 85
Виктор Р. Базили
Сложность исследований в области технологий программирования ......................85
Реалистичный подход к эмпирическим исследованиям ...............................................86
Лаборатория технологий программирования NASA:
испытательная площадка для эмпирических исследований .....................................87
QIP ....................................................................................................................................................88
Заключение ....................................................................................................................................95
Библиография...............................................................................................................................96
Глава 6. Личность, интеллект и опыт: влияние на разработку ........ 98
Джо Э. Ханней
Как узнать хорошего программиста ......................................................................................99
Индивид и среда.........................................................................................................................114
Расширенная модель интеллекта .........................................................................................117
Заключение ..................................................................................................................................121
Библиография.............................................................................................................................123
Глава 7. Почему так трудно научиться программировать ................ 130 Марк Гуздьял Действительно ли у студентов возникают трудности ..................................................131 Группа Маккракена ...................................................................................................................132 Группа Листера ...........................................................................................................................133 Естественное понимание ........................................................................................................134 Совершенствование инструментария и визуальное программирование ..............136 Роль контекстуализации .........................................................................................................138 Заключение ..................................................................................................................................141 Библиография.............................................................................................................................142 Глава 8. Кроме количества строк нужны ли дополнительные метрики сложности? ........................................................... 145 Исраэль Херрайц, Ахмед Э. Хассан Выбор продукта ..........................................................................................................................146 Метрики исходного кода.........................................................................................................147 Анализ выборки .........................................................................................................................148 Статистический анализ ...........................................................................................................153 Общий анализ .............................................................................................................................153 Замечания по поводу статистической методологии .....................................................159 Так нужны ли дополнительные метрики сложности ....................................................160 Библиография.............................................................................................................................161 Часть II. Конкретные вопросы технологий программирования Глава 9. Автоматизированная система прогнозирования дефектов .............................................................................. 164 Элейн Дж. Вьюкер, Томас Дж. Острэнд Распределение дефектов .........................................................................................................164 Характеристики дефектных файлов ...................................................................................168 Обзор модели прогнозирования ..........................................................................................169 Репликация и изменение модели прогнозирования .....................................................171 Создание программы ................................................................................................................176 Предупреждение ........................................................................................................................177 Библиография.............................................................................................................................180
Глава 10. Архитектурное планирование. Сколько и когда ............... 181 Барри Бем Изменяется ли стоимость внесения изменений на протяжении жизненного цикла проекта? ................................................................................................181 Сколько архитектурного планирования реально необходимо ..................................182 Так сколько архитектурного планирования реально необходимо ...........................198 Нужно ли проводить архитектурное планирование заранее .....................................202 Выводы ..........................................................................................................................................202 Библиография.............................................................................................................................203 Глава 11. Следствие из закона Конвея .............................................. 206 Кристиан Берд Закон Конвея ..............................................................................................................................206 Координация, конгруэнтность и производительность .................................................208 Координация при разработке продуктов с открытым кодом .....................................213 Заключение ..................................................................................................................................217 Библиография.............................................................................................................................218 Глава 12. Насколько эффективна разработка через тестирование ............................................................. 219 Бурак Турхан, Лукас Леймен, Мэделайн Дьеп, Хакан Эрдогму, Форрест Шалл Лекарство TDD — что это такое ...........................................................................................220 Сводка клинических испытаний TDD...............................................................................221 Выводы ..........................................................................................................................................229 Благодарности ............................................................................................................................230 Общая библиография ..............................................................................................................230 Данные клинических испытаний TDD..............................................................................230 Глава 13. Почему в области компьютерных технологий так мало женщин? ............................................................... 233 Мишель А. Уайткрафт, Уэнди М. Уильямс Почему так мало женщин? .....................................................................................................234 А нужно ли? .................................................................................................................................240 Заключение ..................................................................................................................................248 Библиография.............................................................................................................................249
Глава 14. Два сравнения языков программирования ....................... 252 Лютц Прекелт Сражение языков .......................................................................................................................253 Plat_forms: культура и технологии веб-разработки .......................................................261 И что? ............................................................................................................................................270 Библиография.............................................................................................................................271 Глава 15. Войны качества. Открытый код против коммерческих продуктов .................................................... 273 Диомидис Спинеллис Великие сражения прошлого ................................................................................................274 Поле боя ........................................................................................................................................275 В бой ...............................................................................................................................................279 Результаты и последствия ......................................................................................................300 Благодарности и сведения о личной заинтересованности ..........................................305 Библиография.............................................................................................................................305 Глава 16. Разговоры о программном коде ......................................... 309 Роберт Делайн День из жизни программиста ................................................................................................309 О типичности поведения программистов .........................................................................311 О чем разговор? ..........................................................................................................................312 Получение ответов на вопросы .............................................................................................312 Поиски логического обоснования .......................................................................................314 Прерывания и многозадачность ...........................................................................................315 О чем спрашивают программисты.......................................................................................315 Гибкие методологии лучше подходят для общения? ....................................................321 Программная модель общения .............................................................................................322 Библиография.............................................................................................................................324 Глава 17. Парное программирование ................................................ 325 Лори Уильямс История парного программирования .................................................................................326 Распределенное парное программирование .....................................................................334 Проблемы .....................................................................................................................................335 Выводы ..........................................................................................................................................336 Благодарности ............................................................................................................................336 Библиография.............................................................................................................................337
Глава 18. Современное рецензирование кода .................................. 343 Джейсон Коэн Здравый смысл ...........................................................................................................................343 Индивидуальное рецензирование кода .............................................................................344 Динамика в группах ..................................................................................................................347 Заключение ..................................................................................................................................350 Библиография.............................................................................................................................351 Глава 19. Общая мастерская или закрытые двери? ......................... 352 Хорхе Аранда Закрытые двери ..........................................................................................................................352 Общая мастерская .....................................................................................................................355 Производственные процессы ................................................................................................358 И последнее… ..............................................................................................................................360 Библиография.............................................................................................................................360 Глава 20. Выявление зависимостей и управление ими при глобальной разработке программного обеспечения ....... 362 Марсело Катальдо Почему возникают проблемы с координацией в GSD .................................................363 Зависимости и их социально-технический дуализм ....................................................364 От теории к практике ...............................................................................................................375 Перспективные направления ................................................................................................379 Библиография.............................................................................................................................382 Глава 21. Насколько эффективна модуляризация ........................... 385 Нейл Томас, Гейл Мерфи Системы ........................................................................................................................................386 Что такое изменение .................................................................................................................387 Что такое модуль .......................................................................................................................392 Результаты ...................................................................................................................................394 Угрозы валидности ....................................................................................................................400 Заключение ..................................................................................................................................401 Библиография.............................................................................................................................402 Глава 22. Доказательства в пользу паттернов проектирования ..... 404 Уолтер Тиши Примеры паттернов проектирования .................................................................................405 Почему паттерны проектирования могут работать .......................................................408
Выводы ..........................................................................................................................................422 Заключение ..................................................................................................................................424 Благодарности ............................................................................................................................425 Библиография.............................................................................................................................425 Глава 23. Научно обоснованное прогнозирование сбоев ................. 427 Начьяппан Нагаппан, Томас Болл Введение .......................................................................................................................................428 Покрытие кода ............................................................................................................................429 Текучесть кода ............................................................................................................................430 Сложность кода ..........................................................................................................................433 Зависимости кода ......................................................................................................................435 Организационные структуры ................................................................................................436 Интегрированный метод прогнозирования сбоев .........................................................438 Выводы ..........................................................................................................................................443 Благодарности ............................................................................................................................444 Библиография.............................................................................................................................444 Глава 24. Искусство сбора сообщений об ошибках .......................... 447 Рахул Премрадж, Томас Циммерманн Хорошие и плохие сообщения об ошибках ......................................................................447 Какими свойствами должно обладать хорошее сообщение об ошибке ..................448 Результаты опроса .....................................................................................................................451 Расхождения в представлениях об информации ...........................................................454 Проблемы с сообщениями об ошибках ..............................................................................456 О полезности дублирующихся сообщений об ошибках ..............................................458 Не все ошибки исправляются ...............................................................................................461 Заключение ..................................................................................................................................462 Благодарности ............................................................................................................................463 Библиография.............................................................................................................................463 Глава 25. Откуда берутся дефекты в программных продуктах ....... 465 Дьюэйн Перри Исследование дефектов в программных продуктах ......................................................465 Контекст исследования ...........................................................................................................467 Фаза 1: Общий опрос ...............................................................................................................468 Фаза 2: Опрос по дефектам проектирования/программирования ..........................474 Дефекты интерфейса и дефекты реализации ..................................................................496 Чему следует верить в этих результатах ............................................................................498
Что мы узнали.............................................................................................................................502 Благодарности ............................................................................................................................504 Библиография.............................................................................................................................504 Глава 26. Первые шаги профессионала: недавний выпускник в своем первом программном проекте .............................. 507 Эндрю Бегел, Бет Саймон Методология исследования ...................................................................................................509 Задача разработки программного продукта .....................................................................513 Сильные и слабые стороны начинающих разработчиков ...........................................517 Размышления ..............................................................................................................................520 Первые шаги ................................................................................................................................520 Заблуждения, мешающие обучению ...................................................................................522 О методологии преподавания ...............................................................................................523 Вовлечение в процесс изменений ........................................................................................525 Библиография.............................................................................................................................528 Глава 27. Анализ данных при сборе доказательств ......................... 530 Ким Себастиан Херциг, Андреас Зеллер Что именно анализировать ....................................................................................................530 Планирование исследования .................................................................................................531 Введение в анализ данных ......................................................................................................532 Что дальше? .................................................................................................................................540 Благодарности ............................................................................................................................541 Библиография.............................................................................................................................541 Глава 28. Копирование кода как принципиальный подход ............. 544 Майкл Годфри, Кори Кэпсер Пример клонирования кода ...................................................................................................545 Обнаружение клонированного кода в программном продукте .................................546 Практика клонирования кода ...............................................................................................548 Наше исследование ...................................................................................................................553 Заключение ..................................................................................................................................556 Библиография.............................................................................................................................557 Глава 29. Удобны ли ваши API? .......................................................... 558 Стивен Кларк Почему важно изучать удобство использования API...................................................559 Первые попытки изучения удобства API .........................................................................561
Если не получилось с первого раза .....................................................................................564 Адаптация к разным стилям работы ...................................................................................571 Заключение ..................................................................................................................................576 Библиография.............................................................................................................................577 Глава 30. Что означает «10x», или Измерение различий в производительности труда программистов ................... 578 Стив Макконнелл Различия в производительности труда программистов ..............................................578 Проблемы измерения производительности труда программистов .........................580 Различия в производительности труда групп .................................................................582 Библиография.............................................................................................................................584
Количество страниц: 592
Авторы популярной в IT-сообществе книги «Идеальный код» вновь предлагают вашему вниманию подборку лучших решений от признанных экспертов в области разработки ПО. Существует много споров о том, какие же инструменты, технологии и практики могут действительно оптимизировать процесс разработки ПО и усовершенствовать конечный продукт. В новой книге Идеальная разработка ПО. Рецепты лучших программистов. Орам под редакцией Энди Орама и Грега Уилсона известные разработчики делятся своим бесценным опытом и мнениями на эту тему. Авторские эссе и статьи посвящены наиболее эффективным методам работы программиста, а также развенчиванию ряда мифов, существующих в программистском сообществе. Среди авторов книги — такие авторитеты, как Стив Макконнелл, Барри Бэм, Барбара Китченхем и еще 27 известных экспертов в области разработки программного обеспечения.
Содержание книги
Идеальная разработка ПО. Рецепты лучших программистов. Орам
Предисловие........................................................................................... 17
Часть I. Общие принципы поиска и использования
доказательств
Глава 1. Задача сбора убедительных доказательств ........................ 22
Тим Мензес, Форрест Шалл
В начале ...........................................................................................................................................22
Как обстоят дела сегодня ..........................................................................................................23
Что может измениться ...............................................................................................................26
Влияние контекста ......................................................................................................................29
Взгляд в будущее .........................................................................................................................30
Библиография...............................................................................................................................33
Глава 2. Достоверность, или Почему мы настаиваем на том,
чтобы нас убедили ................................................................ 36
Лютц Прекелт, Мэриан Петр
Как появляются доказательства в области технологии программирования ..........36
Достоверность и релевантность .............................................................................................38
Объединение доказательств ....................................................................................................42
Виды доказательств, их сильные и слабые стороны .......................................................44
Общество, культура, технология программирования и вы ...........................................52
Благодарности ..............................................................................................................................53
Библиография...............................................................................................................................53
Глава 3. Что можно узнать из систематического обзора .................. 55
Барбара Китченхэм
Общие сведения о систематических обзорах .....................................................................56
Достоинства и недостатки систематических обзоров .....................................................59
Систематические обзоры в области технологий программирования .......................64
Гибкие методы ..............................................................................................................................66
Заключение ....................................................................................................................................70
Библиография...............................................................................................................................71
Глава 4. Качественные методы в области технологий
программирования ................................................................ 76
Эндрю Ко
Что такое «качественные методы» ........................................................................................77
Чтение результатов качественных исследований ............................................................79
Применение качественных методов на практике .............................................................81
Обобщение результатов качественных исследований ...................................................83
О систематичности качественных методов ........................................................................84
Библиография...............................................................................................................................84
Глава 5. Уроки практического применения: становление
метода QIP ............................................................................. 85
Виктор Р. Базили
Сложность исследований в области технологий программирования ......................85
Реалистичный подход к эмпирическим исследованиям ...............................................86
Лаборатория технологий программирования NASA:
испытательная площадка для эмпирических исследований .....................................87
QIP ....................................................................................................................................................88
Заключение ....................................................................................................................................95
Библиография...............................................................................................................................96
Глава 6. Личность, интеллект и опыт: влияние на разработку ........ 98
Джо Э. Ханней
Как узнать хорошего программиста ......................................................................................99
Индивид и среда.........................................................................................................................114
Расширенная модель интеллекта .........................................................................................117
Заключение ..................................................................................................................................121
Библиография.............................................................................................................................123Глава 7. Почему так трудно научиться программировать ................ 130 Марк Гуздьял Действительно ли у студентов возникают трудности ..................................................131 Группа Маккракена ...................................................................................................................132 Группа Листера ...........................................................................................................................133 Естественное понимание ........................................................................................................134 Совершенствование инструментария и визуальное программирование ..............136 Роль контекстуализации .........................................................................................................138 Заключение ..................................................................................................................................141 Библиография.............................................................................................................................142 Глава 8. Кроме количества строк нужны ли дополнительные метрики сложности? ........................................................... 145 Исраэль Херрайц, Ахмед Э. Хассан Выбор продукта ..........................................................................................................................146 Метрики исходного кода.........................................................................................................147 Анализ выборки .........................................................................................................................148 Статистический анализ ...........................................................................................................153 Общий анализ .............................................................................................................................153 Замечания по поводу статистической методологии .....................................................159 Так нужны ли дополнительные метрики сложности ....................................................160 Библиография.............................................................................................................................161 Часть II. Конкретные вопросы технологий программирования Глава 9. Автоматизированная система прогнозирования дефектов .............................................................................. 164 Элейн Дж. Вьюкер, Томас Дж. Острэнд Распределение дефектов .........................................................................................................164 Характеристики дефектных файлов ...................................................................................168 Обзор модели прогнозирования ..........................................................................................169 Репликация и изменение модели прогнозирования .....................................................171 Создание программы ................................................................................................................176 Предупреждение ........................................................................................................................177 Библиография.............................................................................................................................180
Глава 10. Архитектурное планирование. Сколько и когда ............... 181 Барри Бем Изменяется ли стоимость внесения изменений на протяжении жизненного цикла проекта? ................................................................................................181 Сколько архитектурного планирования реально необходимо ..................................182 Так сколько архитектурного планирования реально необходимо ...........................198 Нужно ли проводить архитектурное планирование заранее .....................................202 Выводы ..........................................................................................................................................202 Библиография.............................................................................................................................203 Глава 11. Следствие из закона Конвея .............................................. 206 Кристиан Берд Закон Конвея ..............................................................................................................................206 Координация, конгруэнтность и производительность .................................................208 Координация при разработке продуктов с открытым кодом .....................................213 Заключение ..................................................................................................................................217 Библиография.............................................................................................................................218 Глава 12. Насколько эффективна разработка через тестирование ............................................................. 219 Бурак Турхан, Лукас Леймен, Мэделайн Дьеп, Хакан Эрдогму, Форрест Шалл Лекарство TDD — что это такое ...........................................................................................220 Сводка клинических испытаний TDD...............................................................................221 Выводы ..........................................................................................................................................229 Благодарности ............................................................................................................................230 Общая библиография ..............................................................................................................230 Данные клинических испытаний TDD..............................................................................230 Глава 13. Почему в области компьютерных технологий так мало женщин? ............................................................... 233 Мишель А. Уайткрафт, Уэнди М. Уильямс Почему так мало женщин? .....................................................................................................234 А нужно ли? .................................................................................................................................240 Заключение ..................................................................................................................................248 Библиография.............................................................................................................................249
Глава 14. Два сравнения языков программирования ....................... 252 Лютц Прекелт Сражение языков .......................................................................................................................253 Plat_forms: культура и технологии веб-разработки .......................................................261 И что? ............................................................................................................................................270 Библиография.............................................................................................................................271 Глава 15. Войны качества. Открытый код против коммерческих продуктов .................................................... 273 Диомидис Спинеллис Великие сражения прошлого ................................................................................................274 Поле боя ........................................................................................................................................275 В бой ...............................................................................................................................................279 Результаты и последствия ......................................................................................................300 Благодарности и сведения о личной заинтересованности ..........................................305 Библиография.............................................................................................................................305 Глава 16. Разговоры о программном коде ......................................... 309 Роберт Делайн День из жизни программиста ................................................................................................309 О типичности поведения программистов .........................................................................311 О чем разговор? ..........................................................................................................................312 Получение ответов на вопросы .............................................................................................312 Поиски логического обоснования .......................................................................................314 Прерывания и многозадачность ...........................................................................................315 О чем спрашивают программисты.......................................................................................315 Гибкие методологии лучше подходят для общения? ....................................................321 Программная модель общения .............................................................................................322 Библиография.............................................................................................................................324 Глава 17. Парное программирование ................................................ 325 Лори Уильямс История парного программирования .................................................................................326 Распределенное парное программирование .....................................................................334 Проблемы .....................................................................................................................................335 Выводы ..........................................................................................................................................336 Благодарности ............................................................................................................................336 Библиография.............................................................................................................................337
Глава 18. Современное рецензирование кода .................................. 343 Джейсон Коэн Здравый смысл ...........................................................................................................................343 Индивидуальное рецензирование кода .............................................................................344 Динамика в группах ..................................................................................................................347 Заключение ..................................................................................................................................350 Библиография.............................................................................................................................351 Глава 19. Общая мастерская или закрытые двери? ......................... 352 Хорхе Аранда Закрытые двери ..........................................................................................................................352 Общая мастерская .....................................................................................................................355 Производственные процессы ................................................................................................358 И последнее… ..............................................................................................................................360 Библиография.............................................................................................................................360 Глава 20. Выявление зависимостей и управление ими при глобальной разработке программного обеспечения ....... 362 Марсело Катальдо Почему возникают проблемы с координацией в GSD .................................................363 Зависимости и их социально-технический дуализм ....................................................364 От теории к практике ...............................................................................................................375 Перспективные направления ................................................................................................379 Библиография.............................................................................................................................382 Глава 21. Насколько эффективна модуляризация ........................... 385 Нейл Томас, Гейл Мерфи Системы ........................................................................................................................................386 Что такое изменение .................................................................................................................387 Что такое модуль .......................................................................................................................392 Результаты ...................................................................................................................................394 Угрозы валидности ....................................................................................................................400 Заключение ..................................................................................................................................401 Библиография.............................................................................................................................402 Глава 22. Доказательства в пользу паттернов проектирования ..... 404 Уолтер Тиши Примеры паттернов проектирования .................................................................................405 Почему паттерны проектирования могут работать .......................................................408
Выводы ..........................................................................................................................................422 Заключение ..................................................................................................................................424 Благодарности ............................................................................................................................425 Библиография.............................................................................................................................425 Глава 23. Научно обоснованное прогнозирование сбоев ................. 427 Начьяппан Нагаппан, Томас Болл Введение .......................................................................................................................................428 Покрытие кода ............................................................................................................................429 Текучесть кода ............................................................................................................................430 Сложность кода ..........................................................................................................................433 Зависимости кода ......................................................................................................................435 Организационные структуры ................................................................................................436 Интегрированный метод прогнозирования сбоев .........................................................438 Выводы ..........................................................................................................................................443 Благодарности ............................................................................................................................444 Библиография.............................................................................................................................444 Глава 24. Искусство сбора сообщений об ошибках .......................... 447 Рахул Премрадж, Томас Циммерманн Хорошие и плохие сообщения об ошибках ......................................................................447 Какими свойствами должно обладать хорошее сообщение об ошибке ..................448 Результаты опроса .....................................................................................................................451 Расхождения в представлениях об информации ...........................................................454 Проблемы с сообщениями об ошибках ..............................................................................456 О полезности дублирующихся сообщений об ошибках ..............................................458 Не все ошибки исправляются ...............................................................................................461 Заключение ..................................................................................................................................462 Благодарности ............................................................................................................................463 Библиография.............................................................................................................................463 Глава 25. Откуда берутся дефекты в программных продуктах ....... 465 Дьюэйн Перри Исследование дефектов в программных продуктах ......................................................465 Контекст исследования ...........................................................................................................467 Фаза 1: Общий опрос ...............................................................................................................468 Фаза 2: Опрос по дефектам проектирования/программирования ..........................474 Дефекты интерфейса и дефекты реализации ..................................................................496 Чему следует верить в этих результатах ............................................................................498
Что мы узнали.............................................................................................................................502 Благодарности ............................................................................................................................504 Библиография.............................................................................................................................504 Глава 26. Первые шаги профессионала: недавний выпускник в своем первом программном проекте .............................. 507 Эндрю Бегел, Бет Саймон Методология исследования ...................................................................................................509 Задача разработки программного продукта .....................................................................513 Сильные и слабые стороны начинающих разработчиков ...........................................517 Размышления ..............................................................................................................................520 Первые шаги ................................................................................................................................520 Заблуждения, мешающие обучению ...................................................................................522 О методологии преподавания ...............................................................................................523 Вовлечение в процесс изменений ........................................................................................525 Библиография.............................................................................................................................528 Глава 27. Анализ данных при сборе доказательств ......................... 530 Ким Себастиан Херциг, Андреас Зеллер Что именно анализировать ....................................................................................................530 Планирование исследования .................................................................................................531 Введение в анализ данных ......................................................................................................532 Что дальше? .................................................................................................................................540 Благодарности ............................................................................................................................541 Библиография.............................................................................................................................541 Глава 28. Копирование кода как принципиальный подход ............. 544 Майкл Годфри, Кори Кэпсер Пример клонирования кода ...................................................................................................545 Обнаружение клонированного кода в программном продукте .................................546 Практика клонирования кода ...............................................................................................548 Наше исследование ...................................................................................................................553 Заключение ..................................................................................................................................556 Библиография.............................................................................................................................557 Глава 29. Удобны ли ваши API? .......................................................... 558 Стивен Кларк Почему важно изучать удобство использования API...................................................559 Первые попытки изучения удобства API .........................................................................561
Если не получилось с первого раза .....................................................................................564 Адаптация к разным стилям работы ...................................................................................571 Заключение ..................................................................................................................................576 Библиография.............................................................................................................................577 Глава 30. Что означает «10x», или Измерение различий в производительности труда программистов ................... 578 Стив Макконнелл Различия в производительности труда программистов ..............................................578 Проблемы измерения производительности труда программистов .........................580 Различия в производительности труда групп .................................................................582 Библиография.............................................................................................................................584
