Re: Когда дублирование кода является правильным решением
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.04.11 23:47
Оценка:
Здравствуйте, 0K, Вы писали:

0K>В итоге получился такой код для авто-генерации:


Причем тут дублирование кода? Где ты его усмотрел?

0K>Какие недостатки у подобного решения?


При усложнении генератора (особенно усложнении логики) он превратится в кашу. Он уже ею является.
Потом может случится так, что ты найдешь баг в сгенерированном коде и забыв что он генерирован поправишь его. После очередной перегенерации ты потеряешь изменения и получишь ошибку снова.

Кроме того кода находишь ошибку в сгенерированном коде (и знаешь что он сгенерирован) нужно искать участок генератора его породивший. Если объем генератор большой — это проблема.

Но это все проблемы твоего дремучего подхода. Кроме него существуют и более продвинутые. Например, использование T4. Его проблемой является то, что он генерирует текст, а в нем легко ошибиться. Еще более продвинутый подход использование макросов. Для них зачастую и рефлексия не нужна. Но тут уже нужен специализированный язык.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.