Why .NET is a Framework and Java is a Language

Jonathan dos Santos picture Jonathan dos Santos · Nov 17, 2011 · Viewed 12.7k times · Source

Ok. It's not a battle. I'm curious about the concept of framework, I worked with some frameworks like django, zend, rails and cakephp in various levels.

Today a friend of mine sent me a presentation where he listed .NET as a framework, no big surprise I've discussed about .NET framework and I know the basic concept behind it, and from my limit point of view in the .NET technology it seems fair to say it's a framework.

But then it hit me? Why is Java a Language and .NET is a Framework, the more I read the more I get confused, Both Java and .NET have SDKs, is it because java runs on a VM? Is it because .NET supports multiple programming languages? What is the big difference I'm missing here?

Answer

Oded picture Oded · Nov 17, 2011

Java is both a language and a framework, both tied together and given one name.

.NET is a platform that has many languages that use it - C#, VB.NET, F# and many more.

The difference is one of naming and semantics, no more.