Coding languages before .NET would compile the source code and send it directly to the machine code so that the processor could execute. As a result, the processor alone could interpret the code, while the programmer had to manage resources like the allocated memory. .NET freed up the programmer’s time by taking memory management off his hands. They could also examine the compiled code from within the running code, thus allowing the programmer to create rules for examining application code and repetitive programming tasks.
Advantages of .NET
- It allows the use of multiple languages
- It has horizontal scalability
- .NET creates a unified environment that allows developers to create programs in C++, Java or Virtual Basic
- Interfaces easily with Windows or Microsoft
- All tools and IDEs have been pre-tested and are easily available in the Microsoft Developer Network.
- UI best practices are more consistent
- Language integration is seamless, as you can call methods from C# to VB.NET
Disadvantages of .NET
- Limited object-relational (OR) support as it comes only with Entity Framework
- Does not come with multi platform support from Microsoft, and is not available right after installing Visual Studio
- The managed code can be slower than native code
- Involves a vendor lock-in, and future development is solely dependent on Microsoft
- Migrating applications to .NET can be expensive