Migrating a project from C# to Java

TheTXI picture TheTXI · Apr 11, 2009 · Viewed 10.5k times · Source

With some changes in the staffing at the office, the levels of C# expertise has dropped off precipitously and there are now more Java developers. It has gotten to the point where the higher-ups are considering moving an existing .NET project written in C# into the Java world.

Aside from the obvious problem of starting completely from scratch what are the possible ways that this company can accomplish a successful move of development on a project from .NET C# into Java?

Answer

isntn picture isntn · Apr 11, 2009

Here are things to consider:

  • Is this big project? If Yes, try to stick with C#
  • Is this medium sized project with components? If No, try to stick with C#
  • Is this small project meant to be deployed on windows only? If yes, try to stick with C#
  • Is this old source code? If Yes, try to stick with C#
  • Do you use windows OS specific APIs? If Yes, try to stick with C#
  • Do you use any third party APIs without Java counterpart? If Yes, try to stick with C#
  • Do you use .Net in "deep"(data binding, User controls etc.)? If yes, try to stick with C#
  • Migration time is more acceptable than getting new/converted C# guys? If no, try to stick with C#
  • Do you think end users will not be receptive of changes, if you are to use Java framework which will change presentation? If yes, try to stick with C#
  • Check commercials

If you decide to convert:

  • Go per component
  • Go per layer
  • Have lots of tests
  • Check if there are tools to help (however small help may be) with migration