反射的使用确实要慎重,倒不是说反射不好,性能还是其次,主要是可读性。一不小心可能就interface满天飞,别人看一个函数的签名时不知道要传什么类型的参数,这很蛋疼。反射应该隐藏在lib内部,而不应该过多侵入业务逻辑。如果你能做到,那就可以用。

至于性能嘛,其实很多人妖魔化了反射的性能。一般来说,你系统的瓶颈在IO,反射和IO比起来微乎其微