Разработка с обеспечением расширяемости
Один важный аспект разработки платформы заключается в уделении пристального внимания расширяемости платформы. Для этого вы должны знать о затратах и преимуществах, которые связаны с разными механизмами расширяемости. Приведенные в этой главе сведения помогут вам подобрать оптимальный механизм расширяемости — создание подклассов, события, виртуальные члены, обратные вызовы и т. д. — для удовлетворения требований вашей платформы.
Существует множество способов реализовать расширяемость на платформах. Они могут быть как менее эффективными, но и более экономичными, так и очень эффективными и затратными. Для удовлетворения требований к расширяемости при возможности выбирайте такой механизм, который связан с минимальными затратами. Помните, что обычно вы можете без проблем повысить уровень расширяемости, но его понижение требует кардинальных изменений.
В этом разделе
Незапечатанные классы
Защищенные члены
События и обратные вызовы
Виртуальные члены
Абстракции (абстрактные типы и интерфейсы)
Базовые классы для реализации абстракций
Запечатывание
Фрагменты: © Корпорация Майкрософт (Microsoft Corporation), 2005, 2009. Все права защищены.
Перепечатано с разрешения Pearson Education, Inc. из книги Инфраструктура программных проектов. Соглашения, идиомы и шаблоны для многократно используемых библиотек .NET (2-е издание), авторы: Кржиштоф Цвалина (Krzysztof Cwalina) и Брэд Абрамс (Brad Abrams). Книга опубликована 22 октября 2008 г. издательством Addison-Wesley Professional в рамках серии, посвященной разработке для Microsoft Windows.