#58
帖子
由 antaur » 2007-07-26 9:58
这样的讨论个人觉得就是饭后没事瞎泡。也就根本分不出个对错。
无论那种语言,最后都是需要编译成机器码来执行的。
C++作为面向面向对象思想的代表。更容易是开发人员对程序在架构上进行驾驭,特别是大的程序。如果是个几万行的小程序。无助轻重,如果是上百万行的大的程序,我很难想象在不使用UML进行设计,而直接在代码层来实现。而UML设计出来的东西,C++比C好的多。
如果争论C++的语法细节,个人觉得那是没有真正对C++产生感觉。不可否认,C++的一些语法特性是比C要复杂。但是要明白,他是是为了提供新的特性,这样的开销是必须的,而且应该是能够让我们接受的。
关于效率高低,完全看程序员的水平了。逻辑合理,数据结构设计的足够优化。用一个好的编译器,两者都可以写出完美的程序。
不可否认,C++能够开发的程序,C也能够开发出来,但是开发周期呢?稳定性呢?可读性呢?是否便于升级和代码复用呢?
学编程,作程序员,最高境界应该是理解系统的架构。设计出优化的数据结构,至于用什么语言来实现。这个不重要,因为,理论上讲,主流的语言都可以实现任何的设计。因为说过了,什么语言最终都是在跑机器码,包括java.
个人感觉,C和C++是每个一立志作程序的人的必修课。因为他们确实太经典了,学好了才能真正用程序的观点来看程序。个人感觉,现在层出不穷的新语言,都是懒人语言,速成语言,降低了程序员的门槛,使得编程从艺术变成了技术。
至于各家都有各家的类库,使用不便的说法,个人感觉那是看自己的了,如果不喜欢,甚至不想学,完全可以不用,C的类库主流的C++编译器都是支持的,其他的是人家送给你的,要不要全看自己,如果不喜欢完全可以自己动手阿。
所以,说人是语言的奴隶,感觉不太合适,人是去驾驭语言的,怎么能让语言驾驭自己呢。
====================
ee是个热心人。在论坛潜了很久了,这个是知道的,但是对于你10年C++经验得出的结论,不敢苟同。故言之。欢迎拍砖。
====================