【问题标题】:Tips for moving from C# to Java? [closed]从 C# 迁移到 Java 的提示? [关闭]
【发布时间】:2009-01-23 00:36:43
【问题描述】:

所以我下周要去 Java 的地方参加面试,我不想让人觉得自己一无所知。我是一个非常自信的 C#/.NET 开发人员,并且(显然!)愿意考虑跳槽到 Java - 我想要人们推荐的资源链接。我对以下问题的答案感兴趣:

  • 任何指南大致相当于Justin Etheridge's Ruby for C# developers?当我决定要学习 Ruby 的 rake(因此至少要学一点 Ruby)时,这真的很有用。不过,似乎有更多页面可供人们走另一条路……
  • 使用哪个 IDE?实际上,我已经购买了自己的 IntelliJ,因为我喜欢它的 HTML/CSS/JS,但还没有触及它真正存在的理由,嗯,“那个 Java 的东西”。但是,我怀疑我将要使用 Eclipse 的地方。那么 - 在 Mac 或 Windows 上启动和运行的推荐资源(我不挑剔)?
  • 这可能是一次 TDD 编码面试;我想 JUnit 是在这里学习一点的事实上的选择?

提前致谢。

【问题讨论】:

    标签: c# java


    【解决方案1】:

    查看this link,其中详细介绍了两种语言之间的许多差异。

    至于 IDE,很多人喜欢 Eclipse 或 Netbeans(我最喜欢)——两者都是免费的。由于您已经拥有 IntelliJ,您可以尝试一下。

    FYO 的一些主要区别是:

    • 缺少属性/自动属性
    • 没有“事件”类型(处理事件的不同方式)
    • foreach 循环语法
    • “泛型”实现
    • 已检查的异常

    可能还有更多:)

    【讨论】:

    • Netbeans 也是我的最爱!!!
    • 没有值类型的自动装箱!
    • 不要忘记缺少 var 等价物。
    【解决方案2】:

    IDE

    你有 IntelliJ。相信我是最好的。我用了两年,然后不得不改用一些免费的东西。我尝试了 Eclipse,这很痛苦,只是告诉你我的经验并没有冒犯。现在,和 Netbeans 一起工作,我很开心,但还是一天一次想念 IntelliJ。

    TDD

    是的,您对 JUnit 的看法非常正确。充分了解后,最好看看其他专业库,如 HtmlUnit、DBUnit。此外,还有像 Cobertura 或 Emma 这样的代码覆盖工具。由于您必须使用 IntelliJ,您可能会喜欢查看 Emma,因为它与 IDEA 有很好的集成。

    过渡

    我认为您在过渡期间不会遇到困难。 IMO,阅读文档和规范会让你继续前进。也许你可以继续阅读一些书籍,但就核心 Java 而言,阅读 API 文档和规范将是一个好的开始。您可以使用 SO 来提问。我见过很多问题,比如“Java 中的 C# 等效 ..”。

    【讨论】:

      【解决方案3】:

      由于您只有一周的时间,因此我会赞同您的建议,即专注于 Effective Java 指出的那类事情。

      了解集合 API。当我采访人们时,这是我淘汰人们的一种方式。尤其要知道equals()、hashCode()和compareTo()之间的区别,以及正确实现它们需要什么。

      了解如何在 Java 中处理异常,以及它如何与标准 EJB 事务交互。

      如果你有幸得到这份工作,我会花一些时间了解 J2EE 领域,它非常广阔。这些天来,我认为 J2EE 的基础是 EJB、MDB、servlet 和 JPA。

      我不会太担心 IDE 或 xUnit API。对于任何有经验的体面的开发人员来说,这些都是微不足道的。

      【讨论】:

        【解决方案4】:

        Netbeans 是 Java 开发人员最好的(并且最像 Visual Studio)IDE。如果你有足够的内存,你会喜欢它的。

        【讨论】:

          【解决方案5】:

          如果您有一周的时间,请尝试编写尽可能多的 Java 代码。

          我发现从 Java 转到 C# 很容易,其他方式应该也是一样的。

          拿起一本《Effective Java》通读一遍——确实非常好。

          【讨论】:

            【解决方案6】:

            我认为最大的区别在于两个平台周围的社区和环境。在 .NET 世界中,Microsoft 做出重大决策并推出功能集。另一方面,Java 世界中有许多第三方库几乎是对平台的补充,如果您从事某种开发,您应该了解它们。见Most useful free Java libraries。

            【讨论】:

              【解决方案7】:

              正如您所提到的,对于 IDE,您应该考虑 Eclipse,它是免费的,并且是用于基本开发的不错的 IDE。但是,如果您打算使用 Java EE,这可能还不够,但它会帮助您快速学习基础知识。

              有很多书籍涵盖了基本语法和编程风格,如果您是一名优秀的 C# 开发人员,任何书籍都可能足以让您继续前进。我不知道你提到的那种副手。

              我最近做了相反的转换,从 Java 到 C#。我发现用新语言重写现有应用程序比我想象的要容易得多。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2011-04-03
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2012-09-15
                • 2010-09-12
                • 2016-07-29
                相关资源
                最近更新 更多