将项目从C#迁移到Java

The*_*TXI 10 c# java porting code-migration

随着办公室人员配备的一些变化,C#专业知识的水平急剧下降,现在有更多的Java开发人员.它已经达到了高层正在考虑将用C#编写的现有.NET项目移植到Java世界的程度.

除了完全从头开始的明显问题之外,该公司可以通过.NET C#成功实现项目开发的可能方式到Java?

isn*_*ntn 19

以下是需要考虑的事项:

  • 这是一个大项目吗?如果是,请尽量坚持使用C#
  • 这个中型项目是否包含组件?如果是,请尽量坚持使用C#
  • 这个小项目是否只在Windows上部署?如果是的话,试着坚持使用C#
  • 这是旧的源代码吗?如果是,请尽量坚持使用C#
  • 您是否使用Windows操作系统特定的API?如果是,请尽量坚持使用C#
  • 您是否使用没有Java对应的任何第三方API?如果是,请尽量坚持使用C#
  • 你在"深度"(数据绑定,用户控件等)中使用.Net吗?如果是的话,试着坚持使用C#
  • 迁移时间比获得新的/转换的C#人更容易接受?如果不是,请尽量坚持使用C#
  • 如果您要使用会改变演示文稿的Java框架,您认为最终用户不会接受更改吗?如果是的话,试着坚持使用C#
  • 检查商业广告

如果您决定转换:

  • 去每个组件
  • 去每层
  • 有很多测试
  • 检查是否有工具可以帮助(无论有多少帮助)迁移


Pab*_*ruz 15

为了补充Brian和Eric的意见,我想说在我看来,为Java开发人员选择C#应该是直截了当的.它们在概念上非常相似,我建议培训Java开发人员以获得一些C#技能,这样您就不会被迫去处理迁移过程中的麻烦.


cle*_*tus 5

我赞同Joel的观点,即完全重写几乎总是一个错误.其他海报是正确的:C#和Java足够相似,任何有能力的Java开发人员都应该能够在几周或几个月内成为C#的主管.这并不是说他们会成为专家.这需要更长的时间,但只要你有一些C#开发人员可以指导这个过程那么你应该没问题.

如果不了解您的应用程序的具体情况,很难评论这种转换是好是坏也是:规模,应用类型,行业等等.

我对这样的转换非常保持沉默,因为在我看来,C#现在是一种比Java更现代的语言,我说这是一个十多年来一直是Java开发人员的人(自1.0.2以来) /1.1天).

这并不是说Java很糟糕.不是.Sun确实有一个悬在它上面的云,并表明近年来不愿意或无法推动平台发展.