|
Универсальный setter
|
|||
---|---|---|---|
#18+
user7320А зачем тебе проверка на равенство старого и нового значения? Если для красоты, то оно того не стоит. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2014, 17:41 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
Алексей Кuser7320А зачем тебе проверка на равенство старого и нового значения? Если для красоты, то оно того не стоит. :-) Стоит. 1. При равенстве я не вызываю PropertyChanged. 2. Соответственно 1, не срабатывают байндинги. 3. Не вызывается цепочка сеттеров в случае, что я описал выше - т. е. когда модель представления не хранит свои копии значений свойств модели, а "пробрасывает" их в модель. И это в простом случае, когда у меня только VM и M, а если таких пробрасывателей больше? Ну и апелляция к авторитетам . ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2014, 19:32 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
D129user7320Ну и апелляция к авторитетам . Наконец то! :-))))) А вы, я так понимаю, против всяких универсальных сеттеров и максимум за что за - чтобы то стандратное, что вы выше приводили, генерилось сниппетами или шаблонами? Ну и потом в region'ы всё это непотребство спрятать, чтобы глаза не мозолило? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2014, 19:49 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
Еще можно Castle.DynamicProxy использовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 01:31 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
user7320Стоит.Нет. Это "экономия на спичках" за редкими исключениями. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 06:12 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
Алексей Кuser7320Стоит.Нет. Это "экономия на спичках" за редкими исключениями. Цепочки сеттеров, байндинги и лишние события - причём почти всегда это всё одновременно - "экономия на спичках"? При том, что нам сделать такую проверку ничего не стоит - вынес в базовый класс и написал один раз две строчки кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 09:57 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
Алексей Кuser7320Стоит.Нет. Это "экономия на спичках" за редкими исключениями. Приведите пример исключения, пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 09:57 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
user7320При том, что нам сделать такую проверку ничего не стоит - вынес в базовый класс и написал один раз две строчки кода.Ну тебе виднее. :-) user7320Алексей КНет. Это "экономия на спичках" за редкими исключениями. Приведите пример исключения, пожалуйста.Ну может, как ты и говорил, производительность. Хотя, в сеттерах медленного кода по идее быть не должно. Пока всё. Если ещё что придумаю - отпишу. :-) зы: Не стоит забывать, что в DependencyProperty, к которому выполняется привязка, есть встроенная проверка на равенство старого и нового значения. Делай выводы. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 10:05 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
Алексей Кuser7320При том, что нам сделать такую проверку ничего не стоит - вынес в базовый класс и написал один раз две строчки кода.Ну тебе виднее. :-) user7320пропущено... Приведите пример исключения, пожалуйста.Ну может, как ты и говорил, производительность. Хотя, в сеттерах медленного кода по идее быть не должно. Пока всё. Если ещё что придумаю - отпишу. :-) зы: Не стоит забывать, что в DependencyProperty, к которому выполняется привязка, есть встроенная проверка на равенство старого и нового значения. Делай выводы. Ну так мы делаем проверку раньше, чем это делает DependencyProperty, и, поскольку при равенстве мы значение не изменяем и событие изменения не вызываем, то и DependencyProperty никаких проверок не делает, т. к. байндинг не срабатывает. Но DependencyProperty это частный пример. Подстраивать каждый раз модель под то, будет она работать с DependencyProperty или с чем-то другим - муторно. Ну а так я согласен - где-то выиграешь, где-то проиграешь. Для меня, по крайней мере, плюс в том, что проверку я сам делаю осознанно, а про проверку в DependencyProperty могу и забыть. Ну а если по коллекции проходишься и делаешь изменения - тогда уже не "экономия на спичках"? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 10:14 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
user7320Ну а если по коллекции проходишься и делаешь изменения - тогда уже не "экономия на спичках"?Ну сколько там записей? Тысяча, не больше поди... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 12:07 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
И вообще, это попахивает преждевременной оптимизацией. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 12:09 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
Алексей КИ вообще, это попахивает преждевременной оптимизацией. А без проверок - недостаточная длина кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 12:21 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
user7320Алексей КИ вообще, это попахивает преждевременной оптимизацией. А без проверок - недостаточная длина кода.Это да. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 12:29 |
|
Универсальный setter
|
|||
---|---|---|---|
#18+
user7320D129пропущено... Наконец то! :-))))) А вы, я так понимаю, против всяких универсальных сеттеров и максимум за что за - чтобы то стандратное, что вы выше приводили, генерилось сниппетами или шаблонами? Ну и потом в region'ы всё это непотребство спрятать, чтобы глаза не мозолило? Я не поленюсь и написать, печатаю я быстро, да и не особо нужно сейчас печатать - с автоподсказками-то... Регионы - зло. Все в коде, что не код - должно быть стерто. Мне приходилось работать с файлами кода по 12 тысяч строк. Каждый раз, когда я в том файле встречал регион - я стирал его со словами - ты, гад, еще и скрыть от меня что-то хочешь? :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2014, 13:20 |
|
|
start [/forum/topic.php?fid=20&gotonew=1&tid=1403365]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
9ms |
get first new msg: |
7ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 321ms |
total: | 471ms |
0 / 0 |