Главная    Ex Libris    Книги    Журналы    Статьи    Серии    Каталог    Wanted    Загрузка    ХудЛит    Справка    Поиск по индексам    Поиск    Форум   
blank
Авторизация

       
blank
Поиск по указателям

blank
blank
blank
Красота
blank
Фаулер М., Бек К., Брант Д., Апдайк У., Робертс Д. — Рефакторинг. Улучшение существующего кода
Фаулер М., Бек К., Брант Д., Апдайк У., Робертс Д. — Рефакторинг. Улучшение существующего кода



Обсудите книгу на научном форуме



Нашли опечатку?
Выделите ее мышкой и нажмите Ctrl+Enter


Название: Рефакторинг. Улучшение существующего кода

Авторы: Фаулер М., Бек К., Брант Д., Апдайк У., Робертс Д.

Аннотация:

Подход к улучшению структурной целостности и производительности существующих программ, называемый рефакторингом, получил развитие благодаря усилиям экспертов в области ООП, написавших эту книгу. Каждый шаг рефакторинга прост. Это может быть перемещение поля из одного класса в другой, вынесение фрагмента кода из метода и превращение его в самостоятельный метод или даже перемещение кода по иерархии классов. Каждый отдельный шаг может показаться элементарным, но совокупный эффект таких малых изменений в состоянии радикально улучшить проект или даже предотвратить распад плохо спроектированной программы.
Мартин Фаулер с соавторами пролили свет на процесс рефакторинга, описав принципы и лучшие приемы его осуществления, а также указав, где и когда следует начинать углубленное изучение кода с целью его улучшения. Основу книги составляет подробный перечень более 70 методов рефакторинга, для каждого из которых описываются мотивация и техника испытанного на практике преобразования кода с примерами на Java. Рассмотренные в книге методы позволяют поэтапно модифицировать код, внося каждый раз небольшие изменения, благодаря чему снижается риск, связанный с развитием проекта. .


Язык: ru

Статус предметного указателя: Готов указатель с номерами страниц

ed2k: ed2k stats

Год издания: 2003

Количество страниц: 432

Добавлена в каталог: 18.05.2005

Операции: Положить на полку | Скопировать ссылку для форума | Скопировать ID
blank
Предметный указатель
Рефакторинг помогает найти ошибки      65
Рефакторинг при исправлении ошибок      67
Рефакторинг при разборе кода      67
Рефакторинг программ C++      383—386
Рефакторинг, ввод новых функций и      63
Рефакторинг, декомпозиция и перераспределение метода statement      27—48
Рефакторинг, достижение выгод в короткие сроки      386
Рефакторинг, изменения дизайна, вызывающие трудности      75
Рефакторинг, изучение      409—412
Рефакторинг, изучение, возврат к прежней версии      411
Рефакторинг, изучение, наметить цели      410
Рефакторинг, изучение, остановка при неуверенности      411
Рефакторинг, изучение, работа дуэтом      411
Рефакторинг, инструментальные средства      401
Рефакторинг, истоки, оптимизация системы, зарплаты      83
Рефакторинг, исходная программа      22
Рефакторинг, как и где применять рефакторинг      381
Рефакторинг, как разговаривать о рефакторинге с руководителем      69
Рефакторинг, когда не нужен      75
Рефакторинг, когда следует проводить      66—69
Рефакторинг, когда следует проводить, правило трех ударов      66
Рефакторинг, когда следует проводить, при добавлении новой функции      67
Рефакторинг, комментарии к исходной программе      25
Рефакторинг, косвенность и      70
Рефакторинг, не меняет видимого поведения ПО      62
Рефакторинг, облегчает понимание ПО      64
Рефакторинг, определение      61
Рефакторинг, основания для применения      66
Рефакторинг, особенности языка, затрудняющие рефакторинг      384—386
Рефакторинг, первый пример      21—69
Рефакторинг, первый пример, заключительные размышления      59
Рефакторинг, первый шаг      26
Рефакторинг, повторное использование кода и реальность      377—399
Рефакторинг, повторное использование кода и реальность, нежелание разработчиков применять рефакторинг к своим программам      380
Рефакторинг, повторное использование кода и реальность, последствия повторного использования ПО и передачи технологий      395—397
Рефакторинг, повторное использование кода и реальность, проверка в реальных условиях      378 394
Рефакторинг, почему приносит результаты      68
Рефакторинг, приведение кода в порядок и      62
Рефакторинг, принципы      61— 33
Рефакторинг, проблемы проведения базы данных      73
Рефакторинг, проблемы проведения базы данных, изменения дизайна, вызывающие трудности      75
Рефакторинг, проблемы проведения базы данных, интерфейсы      75
Рефакторинг, проектирование и      76
Рефакторинг, производительность и      79
Рефакторинг, ресурсы и библиография      395
Рефакторинг, сокращение расходов на      389
Рефакторинг, стили программирования, затрудняющие рефакторинг      384
Рефакторинг, улучшает композицию ПО      63
Рефакторинг, форма глагола      62
Рефакторинг, форма существительного      61
Рефакторинг, формат      118
Рефакторинги крупные      357—376
Рефакторинги крупные, важность      358
Рефакторинги крупные, выделение иерархии      372
Рефакторинги крупные, отделение предметной области от представления      367
Рефакторинги крупные, правила игры      357
Рефакторинги крупные, преобразование процедурного проекта в объекты      366
Рефакторинги крупные, разделение наследования      360
Рефакторинги крупные, четыре      359
Родительский класс, выделение      336
Родительский класс, выделение, мотивировка      336
Родительский класс, выделение, пример      337
Родительский класс, выделение, техника      337
Самоинкапсуляция поля      181—184
Самоинкапсуляция поля, мотивировка      181
Самоинкапсуляция поля, применение      160
Самоинкапсуляция поля, пример      182
Самоинкапсуляция поля, техника      182
Самотестирующийся код      101
Связь двунаправленная      207
Связь однонаправленная      204
Символические константы вместо магических чисел      211
Синтаксический разбор, дерево      404
Система зарплаты, оптимизация      83
Слушатели событий, применение      204
Сокрытие делегирования      168
Сокрытие делегирования, мотивировка      168
Сокрытие делегирования, пример      169
Сокрытие делегирования, техника      169
Сообщений, цепочки      95'
Составление методов      123—152
Состояние/стратегия, вместо кода типа      231
Состояние/стратегия, вместо кода типа, мотивировка      232
Состояние/стратегия, вместо кода типа, пример      232
Состояние/стратегия, вместо кода типа, техника      232
Список параметров, длинный      89
Спуск метода      328
Спуск метода, мотивировка      328
Спуск метода, техника      329
Спуск поля      329
Спуск поля, мотивировка      330
Спуск поля, техника      330
Ссылки, замена значением      193
Ссылки, замена значением, мотивировка      192
Ссылки, замена значением, пример      193
Ссылки, замена значением, техника      192
Ссылки, замена значения ссылкой      187
Ссылки, замена значения ссылкой, мотивировка      188
Ссылки, замена значения ссылкой, пример      189
Ссылки, замена значения ссылкой, техника      188
Ссылки, поиск      119
Стрельба из дробовика      90
Сумма, перемещение расчета      32
Тело конструктора, подъем      326
Тело конструктора, подъем, мотивировка      326
Тело конструктора, подъем, пример      327
Тело конструктора, подъем, техника      326
Теоретическая общность      94
Тесты модулей и функциональные      109
Тесты неполные, написание и прогон      111
Тесты полностью автоматические      102
Тесты, граничные условия и      112
Тесты, добавление новых      110—115
Тесты, исключительные ситуации и      113
Тесты, комплекты      111
Тесты, ошибки и боязнь написания      114
Тесты, разработка      101—115
Тесты, разработка, добавление новых тестов      110
Тесты, разработка, самотестирующийся код      101
Тесты, разработка, среда тестирования JUnit      104
Тесты, частота запуска      107
Удаление временных переменных      42
Условия граничные      112
Условия, обращение      256
Условные выражения, упрощение      241—273
Условные выражения, упрощение, введение нулевого объекта      269
Условные выражения, упрощение, введение утверждения      273
Условные выражения, упрощение, декомпозиция      242
Условные выражения, упрощение, замена вложенных условных операторов граничными операторами      253
Условные выражения, упрощение, замена вложенных условных операторов граничными операторами, обращение условий      256
Условные выражения, упрощение, замена условного оператора полиморфизмом      258
Условные выражения, упрощение, консолидация      246
Условные выражения, упрощение, объединение      244
Условные выражения, упрощение, объединение дублирующихся условных фрагментов      248
Условные выражения, упрощение, объединение логическое И      245
Условные выражения, упрощение, объединение логическое ИЛИ      245
Условные выражения, упрощение, удаление управляющего флага      252
Условные выражения, упрощение, удаление управляющего флага, пример: break вместо управляющего флага      249
Условные выражения, упрощение, удаление управляющего флага, пример: return, возвращающий значение управляющего флага      251
Установки значения, метод, удаление      302
Установки значения, метод, удаление, мотивировка      302
Установки значения, метод, удаление, пример      303
Установки значения, метод, удаление, техника      302
Утверждение, введение      270
Утверждение, введение, мотивировка      270
Утверждение, введение, пример      271
Утверждение, введение, техника      271
Фабричный метод, вместо конструктора      306
Фабричный метод, вместо конструктора, мотивировка      306
Фабричный метод, вместо конструктора, пример      307
Фабричный метод, вместо конструктора, пример: создание подклассов с помощью строки      307
Фабричный метод, вместо конструктора, пример: создание подклассов явными методами      309
Фабричный метод, вместо конструктора, техника      307
Флаг управляющий, удаление      248
Флаг управляющий, удаление, пример: break вместо управляющего флага      249
Флаг управляющий, удаление, пример: return, возвращающий значение управляющего флага      251
Формирование шаблона метода      344
Формирование шаблона метода, мотивировка      345
Формирование шаблона метода, пример      346
Формирование шаблона метода, техника      345
Функции, перемещение между объектами      153 178
Функциональные тесты      109
Функция, рефакторинг при добавлении новой      67
Цепочки сообщений      95
Числа, магические      211
Шаблон метода, формирование      344
Шаблон метода, формирование, мотивировка      345
Шаблон метода, формирование, пример      346
Шаблон метода, формирование, техника      345
Экстремальное программирование      81
Элементарные типы, одержимость      92
Явные методы, вместо параметра      288
Явные методы, создание подклассов с помощью      309
1 2 3
blank
Реклама
blank
blank
HR
@Mail.ru
       © Электронная библиотека попечительского совета мехмата МГУ, 2004-2024
Электронная библиотека мехмата МГУ | Valid HTML 4.01! | Valid CSS! О проекте