I've got a serious mental contingency bomb setup to explode whenever my mind wanders and thinks about reflection. I think about it, the bomb explodes, I stand up and go for a walk and when I come back the whole thought process that lead me to consider reflection is wiped clean, ready for a fresh redesign from scratch.
It's not that I don't see value in Reflection, it's just that I'm sick of debugging it.
Abstractfactories are not that bad, actually if you're in the habit (like me) to always step in and write an interface before you start any abstract, you pretty soon understand why it's a good or bad idea - interfaces of factories are so damn trivial that even an abstractfreak will see this as redundant work and will want to write an interface of this factory interface and then a factory interface factory through code injection, preferrably through annotations, but it could be from other means such as a properties file or xml configuration, so they think about a factory interface abstract factory (and of course its interface). By then, even the craziest persons give up and just do their job.
It's not that I don't see value in Reflection, it's just that I'm sick of debugging it.
Abstractfactories are not that bad, actually if you're in the habit (like me) to always step in and write an interface before you start any abstract, you pretty soon understand why it's a good or bad idea - interfaces of factories are so damn trivial that even an abstractfreak will see this as redundant work and will want to write an interface of this factory interface and then a factory interface factory through code injection, preferrably through annotations, but it could be from other means such as a properties file or xml configuration, so they think about a factory interface abstract factory (and of course its interface). By then, even the craziest persons give up and just do their job.