DEV Community

Discussion on: Why not Java

Collapse
 
vmrocha profile image
Vinicius Rocha

Hi David, you are bringing in good points.

I am, like you, a long-time .NET developer. And long ago, when there was a religious war between Java and .NET, there weren't many ecosystems like we have today. JavaScript was not that strong, Python was not as much used as today, functional programming was only used academic, and so on. And, .NET was not always open-source, not multi-platform, and the community was not so strong as it is today. That said, most of the design principles that we use today in Object-Oriented programming, came from the Java community. Most of the great Object-Oriented names we know today came from there.

I am sure that there are still a lot of knowledgeable people doing great software using Java, and there is also a lot of legacy code in Java out there. I believe that they brought a lot of knowledge and experience to the table, that the .NET team and community was able to benefit from. Microsoft was very smart to take the good bits and, for me, the decline of Java became when Sun was acquired by Oracle.

Choosing one over the other, most of the time is a business decision that depends on the software/tools and expertise that you already have inhouse. You might not want to start a new .NET team that is not able or will not be happy to maintain your huge legacy Java code. And I see nothing wrong starting a new software using Java if you know what you are doing and will be happy with it.

I am not confronting your opinion, just expressing my own.

Collapse
 
davidsackstein profile image
david-sackstein • Edited

Hi Vinicius Rocha,
You raise good points. I think that Java created a revolution in the 90's and introduced many important ideas that we still benefit from today. And indeed, I think Microsoft leveraged that knowledge to build an even better system.
In fact, the only difference of opinion we have is what the considerations for choosing Java over .Net for new projects might be.
You say that it is a fair decision if you know what you are doing. Unfortunately I think that this is not enough, because you need to know too much to make your development as smooth as with .Net.
I would say that it is a fair decision to choose Java over .Net for a new project if you know what you are losing :)

Collapse
 
vmrocha profile image
Vinicius Rocha

"if you know what you are losing" I like that! :)