kms писал(а) 07. Февраля 2007 :: 09:26:Зачем?
Если ты делаешь запись атрибута, ты в состоянии следующим шагом вызвать любой метод сам для обработки этого события.
С точки зрения инкапсуляции
не совсем корректно писать:
МойКласс.МояСтруктура.МоёСвойство=ХХХ;
МойКласс.ОбработкаЗаписиПоляМоёСвойствоСтруктурыМояСтруктура();
а вот так просто неудобно...
МойКласс.УстановитьЗначениеПоляМоёСвойствоСтруктурыМояСтруктура(ХХХ);
А если атрибутов много, и полей у них тоже... А обработка требуется...
Для атрибутов этот механизм очень удобно сделан - всё в классе, ничего доп. не надо, хотя твоё возражение справедливо и для них...
Почему бы не добавить:
ПриЗаписи_ИмяАтрибута(ЗначениеАтрибута,[Режим],[Дополнительно])
Где "Режим" = [ЗаписьЗначенияАтрибута, ЗаписьСвойстваАтрибута,...] а "Дополнительно" может быть именем поля, атрибута или чем-либо ещё...
Я, честно говоря предполагал раньше, что метод так и работает
ИМХО, Это было бы удобно.
Поправте меня, если я ошибаюсь...