Книги
чёрным по белому
Главное меню
Главная О нас Добавить материал Поиск по сайту Карта книг Карта сайта
Книги
Археология Архитектура Бизнес Биология Ветеринария Военная промышленность География Геология Гороскоп Дизайн Журналы Инженерия Информационные ресурсы Искусство История Компьютерная литература Криптология Кулинария Культура Лингвистика Математика Медицина Менеджмент Металлургия Минералогия Музыка Научная литература Нумизматика Образование Охота Педагогика Политика Промышленные производства Психология Путеводители Религия Рыбалка Садоводство Саморазвитие Семиотика Социология Спорт Столярное дело Строительство Техника Туризм Фантастика Физика Футурология Химия Художественная литература Экология Экономика Электроника Энергетика Этика Юриспруденция
Новые книги
Цуканов Б.И. "Время в психике человека" (Медицина)

Суворов С. "Танк Т-64. Первенец танков 2-го поколения " (Военная промышленность)

Нестеров В.А. "Основы проэктирования ракет класса воздух- воздух и авиационных катапульных установок для них" (Военная промышленность)

Фогль Б. "101 вопрос, который задала бы ваша кошка своему ветеринару если бы умела говорить" (Ветеринария)

Яблоков Н.П. "Криминалистика" (Юриспруденция)
Реклама

Совершенный код. Мастер-класс - Макконнелл С.

Макконнелл С. Совершенный код. Мастер-класс — М.: Русская редакция, 2005. — 896 c.
ISBN: 5-469-00822-3
Скачать (прямая ссылка): soversheniykodmasterklass2005.djvu
Предыдущая << 1 .. 116 117 118 119 120 121 < 122 > 123 124 125 126 127 128 .. 426 >> Следующая

Рефакторинг Рефакторинг - это подход к разработке с
усовершенствованием кода посредством последовательности
семантически корректных преобразований. Программисты
пользуются шаблонами плохого кода или "запахами" (smells) для
выявления разделов кода, подлежащих усовершенствованию. Этот
подход подробно описан в главе 24, а также в книге Мартина
Фаулера "Refactoring: Improving the Design of Existing Code"
(Fowler, 1999).
Проектирование no контракту Это подход предполагает, что
каждый метод имеет пред- и постусловия (см. раздел 8.2).
Лучший источник информации на эту тему - книга Бертрана Мейера
"Object-Oriented Software Construction" (Meyer, 1997).
226 ЧАСТЬ II Высококачественный код
Бессистемное программирование Некоторые программисты лепят
программу как попало, а не используют тот или иной
систематический подход, например ППП. Если вы не понимаете,
что делать дальше, это признак того, что надо переходить на
Г1ПП. Не было ли у вас такого, чтобы вы забывали написать
часть класса или метода? Вряд ли такое могло случиться при
применении ППП. Если вы глядите на экран и не знаете, с чего
начать, пора начать ППП, который сделает вашу программистскую
долю проще.
Контрольный список: Процесс Программирования с Псевдокодом
? Проверили ли вы, что удовлетворяются предварительные
условия?
? Определена ли проблема, которую решает класс?
? Достаточно ли понятна высокоуровневая конструкция, чтобы
дать классам и методам адекватные имена?
? Продумали ли вы тестирование класса и каждого из его
методов?
? Рассматривали ли вы эффективность с позиции стабильных
интерфейсов и понятной реализации или с позиции
соответствия ресурсам и бюджету?
? Проанализировали ли вы стандартные и другие библиотеки на
предмет наличия подходящих методов и компонентов?
? Просмотрели ли вы литературу в поисках полезных алгоритмов?
? Проектировали ли вы каждый метод с использованием подробного
псевдокода?
? Проверили ли вы псевдокод умозрительно? Легко ли его понять?
? Уделили ли вы внимание предупреждениям, которые указывают на
необходимость перепроектирования (использование глобальных
данных, операции, которые лучше перенести в другой класс или
метод и т. д.)?
? Точно ли вы перевели псевдокод в код?
? Рекурсивно ли вы применяли ППП, разбивая методы на более
мелкие при необходимости?
? Документировали ли вы принимаемые допущения?
? Убрали ли вы избыточные комментарии?
? Проделали ли вы несколько итераций или остановились после
первой?
? Вполне ли вы понимаете свой код? Легко ли в нем разобраться?
Ключевые моменты
¦ Конструирование классов и методов - процесс итеративный.
Особенности, замечаемые при конструировании отдельных
методов, заставляют возвращаться к проектированию класса.
В Написание хорошего псевдокода предполагает употребление
понятного естественного языка без специфических особенностей
конкретного языка программирования, а также формулировок на
уровне намерений (описания сути конструкции, а не способов
ее работы).
http://cc2e.com/0943
Перекрестная ссылка Назначение этого списка - проверить,
применяете ли вы правильные методики при созданий методов.
Контрольный список по качеству методов как таковых см. в главе
7.
ГЛАВА 9 Процесс программирования с псевдокодом
227
¦ Процесс Программирования с Псевдокодом - полезный инструмент
детального проектирования, упрощающий кодирование. Псевдокод
транслируется непосредственно в комментарии, гарантируя их
адекватность и полезность.
¦ Не останавливайтесь на первой придуманной вами конструкции -
испробуйте несколько подходов и выберите лучший, прежде чем
писать код.
¦ Проверяйте свою работу на каждом шаге и просите об этом
других. При этом вы отловите ошибки на наименее
дорогостоящем уровне, когда вы вложили в работу меньше
усилий.
Часть III
ПЕРЕМЕННЫЕ
¦ Глава 10. Общие принципы использования переменных
¦ Глава 11. Сила имен переменных
¦ Глава 12. Основные типы данных
¦ Глава 13. Нестандартные типы данных
ГЛАВА 10
Общие принципы использования переменных
Содержание
http://cc2e.com/1085
" 10.1. Что вы знаете о данных?
10.2. Грамотное объявление переменных
10.3. Принципы инициализации переменных
10.4. Область видимости
10.5. Персистентность
10.6. Время связывания
10.7. Связь между типами данных и управляющими
структурами
¦ 10.8. Единственность цели каждой переменной
Связанные темы
¦ Именование переменных: глава 11
¦ Фундаментальные типы данных: глава 12
¦ Редкие типы данных: глава 13
¦ Размещение объявлений данных: одноименный подраздел раздела
31.5
¦ Документирование переменных: подраздел "Комментирование
объявлений данных" раздела 32.5
Если при конструировании приходится заполнять небольшие
пробелы в требованиях и архитектуре, это нормально и даже
желательно. Проектирование программы вплоть до
микроскопических деталей было бы неэффективным. В этой главе
рассматривается один из низкоуровневых вопросов
конструирования - использование переменных.
Предыдущая << 1 .. 116 117 118 119 120 121 < 122 > 123 124 125 126 127 128 .. 426 >> Следующая