原文地址:点击连接

跟大多数编程语言一样,Swift允许一个类重写(override)其父类的方法和属性。这意味着,程序会在运行时去推断出调用的方法或属性,然后进行间接的调用或者访问。这种技术,我们称之为动态分配(dynamic dispatch)。这增强了语言的表达能力,但同时会为每一个运行时的间接访问增加一个固定的开销.从性能角度来讲,使用这种方式的代码通常是不受欢迎的。这篇博客会提供3种方式,通过消除这种动态特性来增强性能:final关键字,private关键字以及全模块优化(Whole Module Optimization)

Read More