Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 阅读以重新进入Java开发?_C#_Java - Fatal编程技术网

C# 阅读以重新进入Java开发?

C# 阅读以重新进入Java开发?,c#,java,C#,Java,在大约六年左右的时间里,我没有做过多少Java开发。我可能很快就需要将一个C#应用程序移植到Java中,以便使其在Windows和公司标准的Linux上运行(原因我无法讨论)。我想知道的是,从那时起,什么是最好的阅读材料来复习Java的变化,这样我就可以使端口尽可能平滑 我目前运行在.NETFramework3.5上,并使用lambdas、扩展方法和LINQ。这是一个客户端应用程序,没有web服务调用或数据库调用。我确实使用各种网络协议与其他机器通信,但我已经在研究替换我们现在使用的组件(Dar

在大约六年左右的时间里,我没有做过多少Java开发。我可能很快就需要将一个C#应用程序移植到Java中,以便使其在Windows和公司标准的Linux上运行(原因我无法讨论)。我想知道的是,从那时起,什么是最好的阅读材料来复习Java的变化,这样我就可以使端口尽可能平滑

我目前运行在.NETFramework3.5上,并使用lambdas、扩展方法和LINQ。这是一个客户端应用程序,没有web服务调用或数据库调用。我确实使用各种网络协议与其他机器通信,但我已经在研究替换我们现在使用的组件(Dart Telnet、SharpSSH等)

我主要是寻找Java语言和BCL自那时以来发生的变化。我不记得泛型,
foreach
循环,装箱和拆箱是一个PITA。对于扩展方法,lambdas和LINQ是否有任何等价物?

可能是起始文本。它讨论了新的语言特性和使用它们的最佳实践。有些东西可能大家都很熟悉,但六年后,复习并不是个坏主意


有关新功能的各种Sun教程也是新功能的良好开端。

要回答您的最后一个问题,没有与扩展方法、lambdas或LINQ等效的方法

自从Java5中引入注释和泛型以来,Java语言的开发进展非常缓慢,大多数有趣的Java语言工作都是在JVM语言中进行的,例如。如果您需要使用JVM,那么像Scala这样更高级的语言可能适合您的需要(请注意,Scala将与现有Java库集成)

接下来,请查看,这是为Java 7建议的语言开发集。


有效java,以java和简体思维作为参考指南。

< P>而不是重写爪哇中的应用程序,您可能需要考虑将MSIL重新编译为java字节码的主要产品。

可以使用mono吗?它可能需要对源代码进行一些修改,但这比将其全部移植到Java要容易得多。@jheddings:这是我可以讨论的部分原因。我试过单声道,但长话短说,应用程序的多个必需组件需要P/Invoke调用,而这些调用无法转换为mono.+1以获得有效的Java-这是我今年早些时候用来在2-3年后提高速度的方法Hibernate/JPA没有为LINQ提供类似的功能吗?我不相信它们在集合等方面提供同样流畅的查询机制。谢谢,但由于第三方控件中的P/Invoke,这是行不通的。