同名报错,这样可以避免一些 bug。
Ruby 中 include 两个模块,如果有同名方法就很容易 bug。
应该没有...
除非你特意写个 included 的 hook 去做检查
Ruby 没有这样的设定,这正是它的灵活性所在,只要顺着继承链顺藤摸瓜,不会有什么问题
PHP 中的 trait 只是对 Ruby Mixin 拙劣的模仿,同名报错可以说是一个优点,但同时也是一个缺点,多个 trait 具有同名方法就不能 use 进同一个类使用了?
按照 Ruby 的查找逻辑,如果做同名检测的话,性能估计会很差吧,难以想象每个方法都需要遍历一遍继承树。