.对象的自动初始化和清除
.操作符重载
支持对象风格程序设计的语言称为基于对象的程序设计语言。它们不支持继承和动态绑定。
Ada就是一个典型的基于对象的程序设计语言。
面向对象的程序设计不仅仅包含基于对象程序设计的特性,还支持继承和动态绑定。
OOP的应用
OOP最有前途的应用领域如下:
1、实时系统;
2、仿真和建模;
3、面相对象;
4、超文本、超媒体和扩展文本;
5、AI和专家系统;
6、神经网络和并行程序设计;
7、决策支持和办公自动化系统;
8、CIM/CAM/CAD系统。
Via
业务逻辑比较简单的适合用面向过程,例如统计当前用户数,一条SQL语句就可以搞定的没有多大必要用面向对象,也没有必要用什么设计模式,那样就是简单问题复杂化了。
业务逻辑比较复杂的适合用面向对象,这样当需求有变化时,维护起来会比较方便。
面向对象的局部是面向过程的,比如某个类里面某个方法里面实际就是面向过程的,而面向过程会借用面向对象的一些优点来进行优化。
网上发现了一篇文章,说了一下OP与OO的不同,并且打了一个比喻,通俗易懂。
有人这么形容OP和OO的不同:用面向过程的方法写出来的程序是一份蛋炒饭,而用面向对象写出来的程序是一份盖浇饭。所谓盖浇饭,北京叫盖饭,东北叫烩饭,广东叫碟头饭,就是在一碗白米饭上面浇上一份盖菜,你喜欢什么菜,你就浇上什么菜。我觉得这个比喻还是比较贴切的。
蛋炒饭制作的细节,我不太清楚,因为我没当过厨师,也不会做饭,但最后的一道工序肯定是把米饭和鸡蛋混在一起炒匀。盖浇饭呢,则是把米饭和盖菜分别做好,你如果要一份红烧肉盖饭呢,就给你浇一份红烧肉;如果要一份青椒土豆盖浇饭,就给浇一份青椒土豆丝。
蛋炒饭的好处就是入味均匀,吃起来香。如果恰巧你不爱吃鸡蛋,只爱吃青菜的话,那么唯一的办法就是全部倒掉,重新做一份青菜炒饭了。盖浇饭就没这么多麻烦,你只需要把上面的盖菜拨掉,更换一份盖菜就可以了。盖浇饭的缺点是入味不均,可能没有蛋炒饭那么香。
到底是蛋炒饭好还是盖浇饭好呢?其实这类问题都很难回答,非要比个上下高低的话,就必须设定一个场景,否则只能说是各有所长。如果大家都不是美食家,没那么多讲究,那么从饭馆角度来讲的话,做盖浇饭显然比蛋炒饭更有优势,他可以组合出来任意多的组合,而且不会浪费。
盖浇饭的好处就是'菜''饭'分离,从而提高了制作盖浇饭的灵活性。饭不满意就换饭,菜不满意换菜。用软件工程的术语就是'可维护性'比较好,'饭'和'菜'的耦合度比较低。蛋炒饭将'蛋''饭'搅和在一起,想换'蛋''饭'中任何一种都很困难,耦合度很高,以至于'可维护性'比较差。软件工程追求的目标之一就是可维护性,可维护性主要表现在3个方面:可理解性、可测试性和可修改性。面向对象的好处之一就是显著的改善了软件系统的可维护性。
Via
更多其它的可以参考下面的链接,里面的文章写得都不错。
参考:
?tid=3a8af1a399 a97786
a7aa8cd1166d2.html
?q=面向% E8��程+面向对��+优点+缺点&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:zh-CN:official&client=firefox-a
?wd=�����%B 3�+�������+�ŵ�+ȱ%B5�&tn=monline_dg
?uid=2331&do=blog&id=2302
05/3961250.aspx
24/3933983.aspx
最近打算给开发和QA的同学介绍一下面向对象和UML相关的内容。这是第一篇,介绍主要面向对象的基础概念和UML类图的绘制。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-25679-5.html
晚安
016元