2011-02-02 54 views

回答

8

在菲罗或佳乐把扩展方法MyPackage的名为*mypackage方法类别(或者,如果你想成为更具描述性*mypackage-slug)。

在这些类别的方法自动地属于MyPackage的包(在从视蒙蒂塞洛点至少)

8

“它是确定只用新方法延伸的核心类,或者是有一个更好的方法?”

这个决定有权衡。事实上,Pharo曾将String >> asUrl直到最近,当时it was removed as part of cleaning the system。一方面,一些人认为这是不好的风格(参见肯特贝克的最佳实践),在没有类似协议的对象之间有转换方法(语义相似)。此外,这会导致膨胀的核心类(如字符串和对象)。但是,在您自己的应用程序中,可能有一个很好的理由来平衡这些因素,并且因为您将它与您的应用程序打包在一起,而不是与系统一起打包,所以可以摆脱困境。