发布网友 发布时间:2022-03-28 00:27
共1个回答
热心网友 时间:2022-03-28 01:56
优点:
1、维护简单
模块化是面向对象编程中的一个特征。实体被表示为类和同一名字空间中具有相同功能的类,我们可以在名字空间中添加一个类而不会影响该名字空间的其他成员。
2、可扩充性
面向对象编程从本质上支持扩充性。如果有一个具有某种功能的类,就可以很快地扩充这个类,创建一个具有扩充的功能的类。
3、代码重用
由于功能是被封装在类中的,并且类是作为一个实体而存在的,提供一个类库就非常简单了。事实上,任何一个.NET Framework编程语言的程序员都可以使用.NET Framework类库,.NET Framework类库提供了很多的功能。更令人高兴的是,我们可以通过提供符合需求的类来扩充这些功能。
缺点:
就 C++ 而言,由于面向更高的逻辑抽象层,使得 C++ 在实现的时候,不得不做出性能上面的牺牲,有时候甚至是致命的 ( 所有对象的属性都经过内置多重指针的间接引用是其性能损失的主要原因之一;不过,笔者的局限性在于未使用过 VC++ 外的面向对象语言,所以不是十分肯定,哈哈,有人笑出来了… )。
在计算机速度飞速发展的今天,你可能会说,一丁点的性能牺牲没什么大不了。是的,从面向对象的角度,使的编程的结构更加清晰完整,数据更加和易于管理,性能的牺牲可以带来这么多的好处,没有理由不做稳赚的生意吧?
不过,在某些对速度要求极高特殊场合,例如你做的是电信的交换系统,每秒钟有超过百万的人同时进行电话交换,如果,每一个数据交换过程都是一个对象,那么总的性能损失将是天文数字!!