考虑从java迁移到.NET

8 .net c# java

我是一名四年级的计算机科学专业的学生,​​在大学里我的项目很多都是基于Java的,所以我很习惯语言,平台和apis.但是很长一段时间以来,我一直在阅读很多关于.net平台的改进,以及它的大量职业机会(至少在我的国家).现在我正在考虑转向微软世界.我有几个问题:

  • 转向.NET平台是否会很严重,因为当我开始我的职业生涯时,我将缺乏"4年的Java体验"到"1年的c#/ .net体验"?

  • 从Java世界到.net世界的交易会如何苛刻?

  • 感觉太阳的未来(以及Java的结果)看起来有点模糊,从长远来看这可能是一个问题吗?

编辑:对不起编辑,我想补充一点,我更多的是进入电信领域(即使我没有在这个领域的实习/工作经验).事实上,java不是我唯一的语言.我真的习惯了Python,LISP,Javascript,Php和其他一些标记语言.

谢谢

Jon*_*eet 18

当你习惯了Java API时,它肯定会转变,主要是学习.NET框架.很多概念是相同的,但它是一个学习在哪里找东西的案例.您不应期望有效地拥有4年的C#/ .NET经验 - 但您将拥有4年的通用软件开发,这本身就很重要.

从C#迁移到Java并不算太糟糕,尽管泛型在C#中非常不同.您会发现最新版本的C#中有许多功能都不是Java版本,而且值得了解它们以最大限度地利用该语言.

就个人而言,我发现C#是一种比Java更优雅,更强大的语言 - 当然,它的发展速度要快得多.我经常使用它们,但我的心脏是C#...而且它来自像你这样的Java背景.我当然不会后悔从Java转移到C#,特别是因为它不是一个"移动",只是在你的弓上添加一个额外的字符串.这并不像是你放弃了学习.NET的Java经验.

说完这一切之后,我认为你不必担心Java会很快消失.我认为对核心API和语言的进展速度感到担忧是合理的(虽然第三方图书馆和语言的发展速度相当快)但我相信公司会积极开发Java中的新产品.未来几年.

  • IBM在其大型机和中型机上支持Java,而不支持.NET.Java是新的Cobol :) (2认同)

Jen*_*der 15

  1. 如果您不想成为下一个cobol开发人员,请习惯更改语言.Java和C#将存在几年,底层平台也将如此.但事情会发生变化,所以最好习惯它.

  2. 你有0年的经验.在学校或大学完成的任何事情都不算数.原因是:要求完全不同.从CS的角度来看,学校的东西可能会更加困难,但它有固定的,相当明确的要求,而且你不需要支持它10年.所以再次习惯它:希望这是一个有趣的时间,但它不算作经验.

  3. C#最初几乎是Java的一个副本.现在这些人有很多有趣的功能,java缺乏.但是当你知道另一个时,它仍然很容易学习.

  4. 对于一份工作:有多少工作是无关紧要的.你只想要一个对吗?那么你应该检查一下你感兴趣的工作类型?Web,移动,嵌入式,富客户端,大型服务器.

那么真正的建议是什么?去吧,现在找个雇主.告诉他们你想在[你什么时候完成]工作,并且你希望他们告诉你你应该在什么时候学到什么.


Bri*_*sen 6

就我个人而言,我认为Java不会很快消失,所以如果不是更好的话,恕我直言Java就像.NET一样好.无论如何,我会说两种选择都会为你提供大量的就业机会.

这些语言非常相似,因此您很可能很容易找到过渡,但显然您需要熟悉各种库和框架(取决于您将关注的应用程序类型).

您从Java世界中了解到的许多内容实际上都是OO,模式等等,并且在.NET世界中同样适用.

  • Java 1.4和C#1.0上的语言更相似.当您比较Java 6和C#3(或Java 7和C#4)时,它们开始看起来非常不同 - 特别是如果您考虑两种语言中的惯用代码是什么样的. (2认同)