码迷,mamicode.com
首页 > 其他好文 > 详细

葵花宝典读书笔记-面向对象的迷思

时间:2018-02-14 20:42:22      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:运行速度   架构设计   编程模式   对象   模式   面向对象   性能   基本   磁盘   

        从语言层面的处理机制上讲,面向对象的方式肯定比面向过程的方式效率要低一些。所以,对性能要求高的,例如操作系统、驱动程序、网络设备程序都是由C语言编写的。(C语言虽然提供的编程模式是面向过程的,但是同样可以以面向对象的思想来写程序,只是它没有太多机制支持面向对象方式编写程序,不是很方便而已。)

        很多人认为面向对象的效率会导致性能很差,经常用C语言和JAVA语言做比较来说明观点。

        程序系统的运行效率更大的取决于设备的IO速度。

                CPU:每秒10亿次,性能是纳秒级

                内存:每秒1000万次,每次请求时间是微妙级

                磁盘:每次5ms,请求时间是毫秒级

                网络(TCP):每次网络交互2ms,毫秒级

                数据库:基本等于网络和磁盘之和,甚至更慢

        可以看到,如果业务流程中涉及到了磁盘、网络、数据库,那么性能将降低到毫秒级。

        对于大部分语言,语言本身的运行速度是内存级别,也就是微妙级的。

        假设,一个业务流程:

                C语言处理的速度是:语言本身10微妙 + 磁盘操作5豪秒 = 5.01ms   

                JAVA处理速度:语言本身100微妙 + 磁盘操作5豪秒 = 5.1ms   

        语言本身的性能差距在整个流程中的提升可以看作是微乎其微。

        因此,对复杂的业务系统,性能的高低是由系统的架构设计决定的,不是由语言本身决定的。

葵花宝典读书笔记-面向对象的迷思

标签:运行速度   架构设计   编程模式   对象   模式   面向对象   性能   基本   磁盘   

原文地址:https://www.cnblogs.com/mysic/p/8448815.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!