标签:
写点啥。。。开头省略1000字,哈哈,开始讨论OOP编程思想啦~
我来翻译一下OOP吧(面向对象编程)
最近一直在看C++的一本书,看到书中有这样一句话(我按我的意思概括一下哈):OOP是一种编程思想,和具体的编程语言无关。(这是真的么?)
我们继续说哈,话说我也已经工作快三年了,不过一直在做运维方面的工作(其实我不太喜欢,太麻烦),所以在技术方面略显木讷。(不说闲话了)
大学期间和我看到这句话期间(可能之前也看过,但是一直不明白什么意思),我一直听到这样一种观点:C语言是面向过程的编程语言,C++是面向对象的高级编程语言,blalalala....
上面那个观点对么?答案是肯定的,是对的,但是又是片面的,这很容易误导很多初学编程的童鞋。他们可能会这样理解,哦,面向过程的语言就是C语言,面向对象的就是C++或者java或者其他更高级的语言。这样理解是片面的(至少在我真正理解面向对象思想的时候我也是这样认为的,现在我也不敢说我真的领悟了OOP精神)。按照我的理解,我觉得对OOP应该这样表述,无论是C语言还是C++语言还是其他什么语言,他们都可以实现面向过程和面向对象的编程。当然,这么理解的话,完全可以用C语言实现面向对象编程(比如,你用struct作为数据对象,而数据对象中的成员只能通过用户定义的接口去访问,而不能直接访问对象中的成员,这样是不是就实现了OOP的特性呢?大家自己领悟哈),C++等其他语言实现面向过程编程更简单的不得了(一逗到底呗)。
所以说OOP是一种编程思想,而不是某种语言所特有的,具体看程序猿喜不喜欢用到这种方式。而C++被冠以面向对象的语言是因为它实现了OOP的更多特性,来复习一下OOP的五大特性(抽象、封装或数据隐藏、多态、继承、代码可重用性)。C++中提供的类更是完美的契合了OOP精神(暂且称为精神吧,感觉这样更伟大,哈哈)。
这是目前我对OOP精神的理解,后面仍在不断学习中,我要努力称为开发,因为我喜欢码代码的感觉~,希望在这里给初学者带来一点启示,不要犯我之前的错误。
记住了哈,OOP是一种编程思想, 不是某种语言的专利,只要你喜欢,任何语言都可以用到这种思想。
QQ:452260570 (喜欢开发的可以交流哈,我叫三只熊,虽然我的QQ昵称叫苏小沫)
标签:
原文地址:http://www.cnblogs.com/sanzhixiong47/p/5357441.html