`
djsl6071
  • 浏览: 589546 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

C++之父评论C++与Java

阅读更多
C++之父评论C++与Java

  如果人们非要拿 C++ 和 Java 来作比较,我建议他们去阅读 The Design and Evolution of C++,看看 C++ 为什么是今天这个样子,用我在设计 C++ 时遵从的原则来检验这两种语言。这些原则与 SUN 的 Java 开发小组所持的理念显然是不同的。除了表面语法的相似性之外,C++ 与 Java 是截然不同的语言。在很多方面,Java 更像 Smalltalk。(Sun的培训教材清楚地写道:Java在设计上采用了与C++ 相似的语法,与 Smalltalk 相似的语义。所以可以说Java与C++是貌合神离,与Smalltalk才是心有灵犀。)Java 语言相对简单,这部分是一种错觉,部分是因为这种语言还不完整。随着时间的推移,Java在体积和复杂程度上都会大大增长。在体积上它会增长两到三倍,而且会出现一些实现相关的扩展或者库。这是一条每个成功的商业语言都必须走过的发展之路。随便分析一种你认为在很大范围内取得了成功的语言,我知道肯定是无有例外者,而且实际上这非常有道理。

  上边这段话是在 Java 1.1 推出之前写的。我确信Java需要类似模板的机制,并且需要增强对于固有类型的支持。简单地说,就是为了基本的完整性也应该做这些工作。另外还需要做很多小的改动,大部分是扩展。1998 年秋,我从 James Gosling(Java 语言的创始人)那里得到一份建议书,说是要在 Java 中增加固有类型、操作符重载以及数学计算支持。

  还有一篇论文,是数学分析领域的世界级大师,伯克利大学的 W. Kahan 教授所写的 How Java's Floating-Point Hurts Everyone Everywhere(且看 Java 的浮点运算如何危害了普天下的芸芸众生),揭露了Java的一些秘密。我发现在电视和出版物中关于 Java 的鼓吹是不准确的,而且气势汹汹,让人讨厌。大肆叫嚣凡是非 Java 的代码都是垃圾,这是对程序员的侮辱;建议把所有的保留代码都用Java重写,这是丧心病狂,既不现实也不负责任。Sun和他的追随者似乎觉得为了对付微软罪恶的“帝国时代”,就必须如此自吹自擂。但是侮辱和欺诈只会把那些喜欢使用不同编程语言的程序员逼到微软阵营里去。

  Java 并非平台无关,它本身就是平台。跟 Windows 一样,它也是一个专有的商业平台。也就是说,你可以为 Windows/Intel 编写代码,也可以为 Java/JVM 编写代码,在任何一种情况下,你都是在为一个属于某个公司的平台写代码,这些代码都是与该公司的商业利益扯在一起的。当然你可以使用任何一种语言,结合操作系统的机制来编写可供 JVM 执行的程序,但是 JVM 之类的东西是强烈地偏向于 Java 语言的。它一点也不像是通用的、公平的、语言中立的 VM/OS。私下里,我会坚持使用可移植的 C++ 作大部分工作,用不同的语言作余下的工作。

  “Java is not platform-independent, it is the platform”,B. S的这句评语对于 C++ 用户有着很大的影响,有些 C++ 高手甚至把这句话作为自己的签名档,以表明对 Java 的态度和誓死捍卫 C++ 的决心。 


 
分享到:
评论

相关推荐

    一个Java程序员的C++学习之路

    2. **《The C++ Programming Language》**:这是一本权威的C++书籍,作者是C++之父Bjarne Stroustrup,适合进阶学习。 3. **《Effective C++》系列**:包括《Effective C++》、《More Effective C++》和...

    C++之父Bjarne(1) Stroustrup的大作 请下载这个

    在IT领域,特别是编程语言的发展历程中,C++无疑占据着举足轻重的地位,而其背后的创造者,Bjarne Stroustrup,更是被誉为“C++之父”,对整个计算机科学界产生了深远的影响。本篇文章将围绕C++及其创始人Bjarne ...

    C++只是Java很傲慢

    这种态度部分源于Java语言之父James Gosling和其他设计者对C++的否定态度。然而,这种态度导致Java在初期设计时可能过于草率地做出了某些决策,后来不得不在实践中修正和改进,包括对语言特性和库进行重大修订,以...

    c++ 深入探秘 之 c++ viewer-1

    - **走近C++之父Bjarne Stroustrup**:通过专访C++创始人之一Bjarne Stroustrup,深入了解C++的设计理念和发展历程,这对于理解C++的核心概念及其在软件工程中的地位至关重要。 - **Qt最新消息**:介绍了Trolltech...

    C++程序设计原理与实践

    除此之外,本书的描述还特别强调了“C++之父”这一标签。这意味着作者在本书中融入了自己对C++语言深刻的理解和对未来发展的预测。对于想要学习C++编程并希望站在巨人的肩膀上的读者来说,这本书无疑是极具价值的。 ...

    c++学习笔记精华版

    - **C++ 之父 Bjarne Stroustrup (1950—)** - 1979年,Bjarne Stroustrup 开始为 C 语言增加了类的概念,创造了 CPre。 - 1983年,正式发布了一种新的语言,最初命名为“C with Classes”,后来改名为 C++。 - ...

    C++好书推荐_自己整理

    《C++程序设计语言》(特别版)是C++之父Bjarne Stroustrup的著作,书中系统地介绍了C++的设计理念、语言特性和标准库,内容深入浅出,非常适合中高级读者。该书是不可替代的经典,任何C++开发者都应该读一读。 ...

    Java之父评价C语言之父.doc

    ### Java之父评价C语言之父 #### 背景介绍与重要性 在计算机科学领域,编程语言作为实现逻辑思维和技术创意的核心工具,扮演着至关重要的角色。C语言作为一种历史悠久且广泛使用的编程语言,其影响力深远而广泛。...

    如何学好C++语言

    2. **《C++程序设计语言》**:由C++之父Bjarne Stroustrup撰写,适合有一定基础的读者深入学习。 3. **《Effective C++》和《More Effective C++》**:这两本书是提高C++编程技能的经典之作,包含了大量实用的编程...

    C++代码设计与重用 pdf

    Ellis在C++社群中备受尊敬,她与C++之父Bjarne Stroustrup合作撰写了C++早期的经典著作《ARM(Annotated C++ Reference Manual)》,并长期在AT&T内部实验室、UNIX系统实验室和美国Novell公司从事编译器开发工作,...

    c++四书五经

    其中,《The C++ Programming Language》(简称TCPL)和《The Design and Evolution of C++》(简称D&E)是由C++之父Bjarne Stroustrup编写的两部权威作品。TCPL是除C++标准文档之外最权威的参考手册,详细介绍了C++...

    C++代码设计与重用.pdf

    她还与C++之父Bjarne Stroustrup合作撰写了C++早期的经典著作《ARM》(C++ Annotated Reference Manual),在C++社群中极具声望。 本书得到了众多C++专家的高度评价。例如,Scott Meyers推荐编程者在没有阅读这本书...

    如何成为一名C++程序员

    - 最终,阅读C++之父Bjarne Stroustrup的作品《C++程序设计语言(特别版)》,它是一部权威的C++参考书。 4. **再提高阶段**: - 面向对象设计是C++的一大特点。《设计模式--可复用面向对象软件的基础》介绍了23...

    推荐C++书目.doc推荐C++书目.doc

    2. **《The C++ Programming Language》特别版**:由C++之父Bjarne Stroustrup编写,详细介绍了C++的语法和特性,是深入理解C++的权威教材。 3. **《C++ Primer Plus》**:Stephen Prata的这本书适合初学者,全面...

    剑桥大学C/C++讲义

    - **《The C Programming Language》**:C语言的经典著作,由C语言之父之一Dennis Ritchie共同撰写。 - **《The C++ Programming Language》**:由C++语言的设计者Bjarne Stroustrup所著,详细介绍了C++的设计理念和...

    给C++初学者的忠告

    - **解释**:这两本书分别由C++之父Bjarne Stroustrup和Scott Meyers撰写,是学习C++不可多得的资源。它们不仅涵盖了语言的基础部分,还深入讲解了高级主题和内部实现机制。 - **建议**:虽然这些书籍可能比较晦涩...

    2020 全球C++及系统软件技术大会.pdf

    Boolan的专家资源遍布全球,包括C++之父Bjarne Stroustrup、硅谷产品大师Marty Cagan、机器学习之父Michael I. Jordan、全球软件架构大师Martin Abbott等,以及来自Google、Microsoft、Amazon、阿里巴巴等著名互联网...

    C++初学书目建议

    3. **《C++ Programming Language》**:由C++之父Bjarne Stroustrup撰写,是学习C++不可或缺的经典之作。 4. **《Thinking in C++》**:通过大量实例讲解C++的各种概念,适合自学。 5. **《C++ Standard Library: A ...

    C++Programming HOW TO

    - **Stroustrup C++ Style and Technique FAQ**:由C++之父Bjarne Stroustrup撰写的一份FAQ。 #### 18. C++在线文档 在线文档是学习和参考C++的重要资源。以下是一些有用的在线文档链接: - **C++ Standard ...

Global site tag (gtag.js) - Google Analytics