为经验丰富的C ++开发人员快速切换到Java

时间:2009-11-17 14:22:25

标签: java c++ oop eclipse-plugin swt

我正在寻找在线教程/书籍,它们充分了解OOP /设计模式概念,并强调C ++和Java之间的差异(概念和语法),从而允许后者的快速发展。 非常感谢您,感谢您的时间。

9 个答案:

答案 0 :(得分:14)

我在6年前从C ++转向Java,是Bloch使用的“Effective Java”,这是一本样式书,在50篇短文中解释了如何最好地使用各种java类和技术。这非常类似于Meyers的“Effective C ++”和Sutter的“Exceptional C ++”。

如果您已经了解C ++和面向对象编程并且可以阅读Java,那么这是编写高质量Java代码的最快方法。

现在有一个新的版本出现了泛型等等。在我看来,这本书对于所有Java程序员以及想要学习Java的人来说都是必不可少的。

答案 1 :(得分:6)

The Java Tutorial

它保持最新并且写得很好。也可在hard-copy中找到。

我总是对“从X改为Y”指南持怀疑态度。虽然他们之后可能会作为参考点提供帮助,但是从另一个人那里学习一门新语言可能比你想象的要快。

我认为学习新设计的语言非常重要,并且能够感受到这种语言中“正确”的方式,并学习其代码习语。

对于想要了解Java潜在缺陷的有经验的程序员来说,这是一本好书,我建议Effective Java

答案 2 :(得分:3)

O'Reilly的“Head First”书籍写得非常好。看看Head First Java和Head First Design Patterns。

答案 3 :(得分:2)

我在1996年左右进行了这种转变,当时Java是新的。一本书肯定会有所帮助。我使用了Laura Lemay's 21 day book,现在已达到第6版。我花了3天的时间来完成原始书籍,并且在我觉得自己完全熟悉之前的另一周。

习惯的事情:

  1. 语言不是很大,但是支持库是。可能已经有了你想要的东西
  2. 垃圾收集和理智的内存管理非常棒。与使用Java相比,我的错误数量与使用C ++相比有所下降
  3. 垃圾收集和理智的内存管理很糟糕。我正在编写性能关键应用程序(当时),我会杀死某人以获得类似于贴装新内容或操作员新重载的内容。
  4. 垃圾收集不是一般资源收集(即打开文件等)。你仍然需要担心这一点。
  5. 我真的错过了一个集成的宏预处理器。当然,你仍然可以使用一个,但是你的构建变得更加复杂。

答案 4 :(得分:2)

首先避免使用Java头。它是低信噪比。果壳很好但是变得很大,就像语言一样。

答案 5 :(得分:1)

如果您是经验丰富的C ++开发人员,我建议您浏览the Java Tutorialas mentioned by Gerd Klima)。然后,只需打开Java API documentation并向前跳,然后向右跳。

答案 6 :(得分:0)

当我这样做时,我使用了O'Reilly的Java in a Nutshell。现在它似乎更像是“intermodal shipping container中的Java”,所以也许它不再那么快了。我现在仍然期待它是体面的,我认为现在它是更多的参考资料。

答案 7 :(得分:0)

亚马逊上有几本书涵盖“Java for C++ Programmers”。

答案 8 :(得分:0)

你肯定需要一本书,那里有很多。

除此之外,有一件事有用,恕我直言,是一个备忘单,你可以打印并放在你的显示器旁边。当你学习东西时,你可以将它们添加到工作表中。

这是一对,特别是对C ++程序员来说: