一、CPU性能与Object-C之间的历史渊源
为了解决性能问题,诞生了3种方法:
1)基于Macintosh工具箱和macos早期系统版本的,完全放弃Smalltalk的动态面向对象的表达能力;
2)Smalltalk社区创新——即时编译和垃圾回收;
3)Object-C采用语言混编的折中方法,基于C语言集成类似于Smalltalk的动态运行时对象;
二、性能比较
1)在性能方面,Swift还不是很出色,大约是基本类型版本性能的50%,基于对象的性能大约是Object-C的三分之一;
2)Object-C可以比所有的语言更快或更慢,这取决于如何使用它;
总结
足够智能的编译器似乎已经不能保证我们的高级代码能够在优化后变得更快,硬件自身也不能再试一有代码运行得更快。因此,我们需要优化,虽然编译器的优化建议是值得肯定的,但是我们需要做出明智的决定,并用Instrument收集这些决定和工具所需的信息,然后将这些决定转化成代码。
网友评论