Re[2]: Состояния объекта
От: igua  
Дата: 23.02.11 14:07
Оценка:
Здравствуйте, ZegSoft, Вы писали:

ZS>Если я правильно понял, то такая ситуация называется "инкапсуляция". Реализуется очень просто: делаешь закрытыми все свойства объекта, а доступ и изменение к ним осуществляешь через функции. Общепринятыми для этих целей считаются функции под именами put/get. Но можно применять и любые другие, главное сам не запутайся. Если проводить анологию с БД, то такие функции в неготором роде можно назвать тригерами. Соответственно в этой функции анализируешь новое значение и на его основе присваиваешь остальным свойствам нужные значения.


Вы правильно поняли.
Получается в каком либо ,напр., входном интерфейсе get(xtype inX), достаточно правильно обработать
получение параметра inX для инкапсулированного св-ва X со всеми вытекающими последствиями (установка "нужных" значений зависимых свойств XA, XB, XC).

Но достаточно ли только этого? У Страутрупа в таких ситуациях применяется понятие инварианта, и всяческих сопуствующих ему
проверок\установок (собственно это немного и сбило с толку ) Хотелось бы прояснить это.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.