.Net is now very popular, becoming the first choice for fashionable programmers. However, a large number of programmers who have just come into contact with .NET do have certain understanding of misunderstandings.
First, .NET program will be faster again
Many people explain this: .NET program will be compiled into the local code for the first time, so running faster again. But unfortunately, in fact, each of the IL will be translated once and will not keep it. So don't get fast. But why sometimes I really feel fast? In fact, all procedures are like this, this is the components used for you to cache you. The programs that truly need CPU time will not speed up.
Second, .NET program is always very slow
Since there is a process of existing IL translated into a local code, the .NET program does consume some time. But the .NET program still has high efficiency, which many Java virtual machines are more than, why? Because most .NET programs are rare, almost all class libraries in the .NET Framework, and these class libraries are all compiled into local optimized local codes when .NET Framework installation, and saved in the assembly Inside the cache. With this assembly cache, most of your programs have actually be efficient local code, so of course fast. However, if you calculate the operation of a large number of numerical calculations, it is still possible to feel the speed of the first operation. Therefore, it is recommended that you separate the calculated intensive procedures, compile costs, and save them in the program set cache, so it is very fast.
Third, C # is fast than VB.Net, more powerful
It must be acknowledged that the C # compiler and the VB.NET compiler are dealing with some details, resulting in similar compilation functions similar to program efficiency. But for a complete project, there will be no differences. The reason is that the VB.NET compiler does not have a substantial defect than the C #, and the number of code in the .NET Framework class library is not different. There is no difference in call. As for C #, it is powerful than VB.NET, which involves psychological problems. VB is not better than C #, and there is no "syntax chaotic", "designed to be compatible", and the like. Like VB.NET, you can write outstanding, structure perfect applications. And VB.NET is also the only macro language of Visual Studio.net.
There is also a problem in this, and whether C # is supported in .NET - Mono under the famous Linux? Of course, it can be run correctly in Mono using programs developed by VB.NET. And the latest MONO will include Mono Basic language, so that people who master VB.NET syntax can be developed under Linux and other systems.
Fourth, Microsoft just want to promote C #, he wants to give up VB.NET
Don't listen to people who are worried about. Microsoft is not in the moment of promoting VB.NET. MSDN's article about .NET development, use VB.NET to do more than C #. Microsoft also launches VB technology program -vbtv to help developers better understand VB.NET. Microsoft is in the first of the Visaual Studio, Visual Basic is always in the first - this is the tradition of Microsoft for 5 years. So worry that VB.NET will be eliminated, and now the pine mouth is angry.
5. Microsoft uses .NET to fight Java, so I have to support .NET, against Java
Don't have this idea, MS Of course, I want to occupy the Java market, Sun is of course unwilling, but this is not your business. Which party wins you will not have substantive benefits. Still two things.