大话coding 之面向对象概念之争

—— 今天想了想,大话C、C++这个范围太小了,我还是改成这个系列为“大话 coding” 吧。其实就是记录一下我自己的一些瞎想。。(每天没事干时。。就想些这问题)

 

小学就开始简单的接触编程。。但是几乎直到最近才对面向对象有个系统的了解。

 

大学的时候虽然有这个课程,但是说实话,只知一点表层的东西。。今天来讨论一下所谓的面向过程、半面向对象、完全面向对象吧。

 

C语言是完全的面向过程编程语言,其逻辑按照执行顺序进行,程序员在设计的时候也是以先后顺序,(这里一般称流程)来考虑与设计程序。

C++提供了面向对象的思想,但是就其面向对象性,很多人提出了质疑。说C++只能算一半面向对象,而JAVA、C#之类的才是完全的面向对象。(也有人说smalltalk之类才是完全的Object Oritened,不过我对其完全不懂。。。所以暂不介绍)

 

这里非完全面向对象与完全面向对象的主要区别是:main函数在哪。

 

C++ 中是一个独立的模块。而JAVA、C#中是在一个类中。

 

这就有意思了,

 

其实main函数具体在哪,并不太影响人们的代码编写与面向对象的设计思维,所以这个争论我觉得对于程序界的实现并没有太大影响,从而上升为一个哲学问题。

 

实际上该问题我觉得就等同于宇宙的起源说。

 

1,有人说宇宙起源于混沌,一个大爆炸,于是开始以光速放射,时间从那时候开始。

2,有人说宇宙是线性存在的,时间是绝对的,万物都在时间的一条基线内运动。

 

其实1就是所谓“完全的面向对象”,他把时间的起源也归从与物体之下。(宇宙的开始,导致时间的起源)这不就是所谓的main包含在对象中么?

 

2就是所谓的“不完全面向对象”,他把宇宙从时间中独立出来,时间绝对存在,一切物体在时间中运动。这不就是所谓的main不包含在对象中么?

 

说的相当凌乱。。而且很可能有很多错误,今天相当累了,暂写到这……

 

by the way:大话C、C++系列都是我每天上下半总共加起来1个小时骑单车时瞎想的,呵呵。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值