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

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

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

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

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

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

Макконнелл С. Совершенный код. Мастер-класс — М.: Русская редакция, 2005. — 896 c.
ISBN: 5-469-00822-3
Скачать (прямая ссылка): soversheniykodmasterklass2005.djvu
Предыдущая << 1 .. 26 27 28 29 30 31 < 32 > 33 34 35 36 37 38 .. 426 >> Следующая

особенно важно потому, что многие программисты делают это
автоматически, из чувства профессиональной гордости. Явно
выразив ожидания в архитектуре, вы сможете избежать феномена,
при котором некоторые классы исключительно надежны, а другие
лишь отвечают требованиям.
Дополнительные сведения Хорошее введение в вопросы от-
казоустойчивости см. в июльском номере журнала "1ЕЕ? Software"
за 2001 год. Кроме того, в статьях этого номера есть ссылки т
многие отличные книги и статьи, посвященные данной теме.
ГЛАВА 3 Семь раз отмерь, один раз отрежь: предварительные
условия
49
Купить или создавать самим?
Самый радикальный подход к созданию ПО - не создавать Пттепм сеыш
Сгшсок
его вообще, а купить или загрузить из Интернета бесплат-
типов коммерческих
программ-
ное ПО с открытым исходным кодом. Вы можете приобре- ных
компонентов см. в подраз-
сти элементы управления GUI, менеджеры БД, процессоры Деле
"библиотеки кода" разде-
изображений, компоненты для работы с графикой и диа- т
граммами, компоненты для коммуникации по Интернету,
компоненты обеспечения безопасности и шифрования, обработки
электронных таблиц и текста - список почти бесконечен. Одним
из главных достоинств программирования с использованием
современных GUI-сред является объем функциональности, который
вы получаете автоматически: классы для работы с графикой,
менеджеры диалоговых окон, обработчики событий клавиатуры и
мыши, код, поддерживающий любые принтеры и мониторы и т. д.
Если архитектура не подразумевает применение готовых
компонентов, она должна объяснять, в каких аспектах
компоненты, которые будут разработаны, окажутся лучше готовых
библиотек и компонентов.
Повторное использование
Если план предусматривает применение существующего кода,
тестов, форматов данных и т. д., архитектура должна объяснять,
как повторно использованные ресурсы будут адаптированы к
другим архитектурным особенностям, если это будет сделано.
Стратегия изменений
Так как при создании продукта и программисты, и пользо-
перекрестная ссылка 0
систе-
ватели обучаются, приложение скорее всего в период разра-
матишй обработке
изменений
ботки будет изменяться. Причинами этого могут быть изме- см.
раздел 28.2"
нения типов данных, форматов файлов, функциональности,
реализация новых функций и т. д. Изменения могут быть новыми
возможностями, которые были запланированы заранее или не были
реализованы в первой версии системы. Поэтому разработчику
архитектуры ПО следует сделать ее достаточно гибкой, чтобы в
систему можно было легко внести вероятные изменения.
Архитектура должна четко описывать стратегию изменений.
0шйб)(и проширования чаш
Архитектура должна показывать, что возможные улучшения являшся
ДО80ЛЬН0 тонкими "
рассматривались и что реализация наиболее вероятных
объясняются эволюцией,
при
улучшений окажется наиболее простой. Если вероятны из- которой
по мере реализации
менения форматов ввода или вывода данных, стиля взаимо- H08WX
ФУи*ДОй и возможностей
действия с пользователями или требований к обработке,
разработчики забывают о
еде*
F F данных ранее
предположениях,
архитектура должна показывать, что все эти изменения были ^
^ •
- ^ Фернандо Дж. Корбат
предвосхищены и каждое из них будет ограничено неболь-
(Fernanda J Corbaty)
шим числом классов. Архитектурный план внесения изменений
может быть совсем простым: включить в файлы данных номера
версий, зарезервировать поля на будущее, спроектировать файлы
так, чтобы в них можно было добавить новые таблицы и т. д.
Если применяется генератор кода, архитектура должна
показывать, что он поддерживает возможность внесения предпола-
гаемых изменений.
50 ЧАСТЬ I Основы разработки ПО
п.гт-г-" 0 мерах в архитектуре должны быть отражены стратегии,
которые позволяющих т ограничивать позволяют программистам не
ограничивать имеющийся у
штштш выбора* см. под- них выбор раньше времени. Так,
архитектура может опре-
радел "Тщательно выбирайте делять, что вместо жестко
закодированных тестов if будет
время сшьшния" разшш ЬХ применяться метод, основанный на
проверке таблиц. Дан
ные таблиц можно хранить во внешнем файле, а не включать в
программу, что позволит вносить в нее изменения без
перекомпиляции.
Общее качество архитектуры
Хорошая спецификация архитектуры должна описывать классы
системы, информацию, скрываемую каждым классом, и обосновывать
принятые и отвергнутые варианты проекта системы.
Архитектура должна быть продуманным концептуальным
Перекрестная ссылка 0 сдано- ,
шении атрибутов качества см. целым' включа1°Щим несколько
специфических дополнении, раздет 20.1. Главный тезис самой
популярной книги по разработке ПО
"Мифический человеко-месяц" гласит, что основной проблемой,
характерной для крупных систем, является поддержание их
концептуальной целостности (Brooks, 1995). Хорошая архитектура
должна соответствовать проблеме. Изучая архитектуру, вы должны
испытывать удовольствие от того, насколько естественным и
Предыдущая << 1 .. 26 27 28 29 30 31 < 32 > 33 34 35 36 37 38 .. 426 >> Следующая