Что следует запомнить
В эгтой главе вы изучили некоторые из основ объектно-ориентированного програм-■ниисеанпя. Вот основные моменты, которые стоит запомнить.
* Ваш код состоит из структурных функций или базовых классов, а также архитек¬турных функций, связанных с бизнесом.
-ункциональные возможности базового класса сосредоточены на специфической a f : блеме, которую можно решить общим способом, но решена будет только спец-:г:ическая проблема. Функциональные возможности базового класса требуют : глзеделенного знания в данной области. Считайте это реализацией калькулято-: а где ваша основная задача — гарантировать правильность вычислений.
Е ьк окоуровневые архитектурные возможности, связанные с бизнес-функциями, е г>тот общего знания бизнеса. Идея заключается в том, чтобы взять базовый
оасс, или класс, связанный с базовым классом, и использовать его для реше-: н бизнес-проблемы. Считайте это с использованием калькулятора для деловых
м:четов.
гс бы не предоставлять переменные-члены для общего доступа, используйте вме-: го этого свойства.
i-.гьшинство опытных разработчиков предпочитают не использовать прямые
зшзи, поскольку считают их плохой практикой программирования. Однако свой-
i в а имеют свои преимущества, они особенно полезны, когда возникает вопрос
;:эерия.
• Вообще-то классы не должны предоставлять доступ к своему состоянию. Что<ж избежать предоставления состояния, создавайте методы, которые реализуют :г щее намерение класса.
• Наследование — это фундаментальная часть языка С#, и вы должны знать. кал. использовать его. Один из способов реализации наследования — использован: -ключевого слова abstract.
• Переопределение заключается в сохранении прежнего интерфейса при измен е нии поведения.
• Перегрузка заключается в получении производного класса и определении идеш тификатора, одноименного с неким идентификатором базового класса. Ваш гл регруженный идентификатор может изменить поведение прежнего и способ ег: использования.
• Операторы условной компиляции могут быть эффективными, когда необход;::•■. включать или исключить код для нескольких конфигураций.
• Частичные классы полезны тогда, когда вы хотите отделять функции, служащш для специфической цели. В основном приложении этой главы цель заключала:= в том, чтобы добавить проверочный код, не нарушая правила предоставлен;. ■ состояния.