Поделиться через


Разработка статичных классов

Примечание.

Это содержимое перепечатывается разрешением Pearson Education, Inc. из руководства по проектированию платформы: соглашения, идиомы и шаблоны для повторно используемых библиотек .NET, 2-го выпуска. Этот выпуск был опубликован в 2008 году, и книга с тех пор была полностью пересмотрена в третьем выпуске. Некоторые сведения на этой странице могут быть устаревшими.

Статический класс определяется как класс, который содержит только статические элементы (разумеется, помимо элементов экземпляра, наследуемых от System.Object и, возможно, закрытого конструктора). Некоторые языки предоставляют встроенную поддержку для статических классов. В C# 2.0 и более поздних версиях, когда класс объявлен как статический, он является запечатанным и абстрактным, а элементы экземпляра не могут быть переопределены или объявлены.

Статические классы представляют собой своего рода компромисс между чисто объектно-ориентированной разработкой и простотой. Они обычно используются, чтобы быстро перейти к другим операциям (например, System.IO.File), держателям методов расширения или функциональным возможностям, для которых не гарантируется полная объектно-ориентированная оболочка (например, System.Environment).

✔️ ИСПОЛЬЗУЙТЕ статические классы c осторожностью.

Статические классы необходимо использовать только в качестве вспомогательных классов для объектно-ориентированного ядра платформы.

❌ Статические классы НЕ следует рассматривать как вспомогательные контейнеры.

❌ НЕ объявляйте и не переопределяйте элементы экземпляров в статических классах.

✔ Если ваш язык программирования не имеет встроенной поддержки статических классов,️ объявите статические классы как запечатанные и абстрактные, а затем добавьте закрытый конструктор экземпляра.

Фрагменты: © Корпорация Майкрософт (Microsoft Corporation), 2005, 2009. Все права защищены.

Перепечатано с разрешения Pearson Education, Inc. из книги Инфраструктура программных проектов. Соглашения, идиомы и шаблоны для многократно используемых библиотек .NET (2-е издание), авторы: Кржиштоф Цвалина (Krzysztof Cwalina) и Брэд Абрамс (Brad Abrams). Книга опубликована 22 октября 2008 г. издательством Addison-Wesley Professional в рамках серии, посвященной разработке для Microsoft Windows.

См. также