. Net myth

Source: Internet
Author: User
. Net myth

Visual studio.net has been released for nearly half a year, and Windows. NET Server RC1 has also been published. the. NET heaven, which is always dedicated to building, will be fully completed. Under the promotion of M $, it seems that software development is about to "run into communism.
However, for both the old man and M $, and for the majority of developers, this heaven is not far away from the sky, and the situation cannot go anywhere. From. since the birth of net, there was no good news: the majority of J2EE camp vendors have increased publicity, right. the soap/WebService advocated by net will soon be supported. net/J2EE wait-and-see still; Gartner issued a warning to move the value. the net cost is too high and the risk is too high (which is obvious to all. before the release of Net Server RC1, M $ was also publicly recognized. net has not achieved the expected success. For developers, the situation is not good.
First, let's take a look at the so-called multi-language support of. Net:. net claims to be able to support many languages, as long as there is a corresponding compiler to compile it into Il, it can be run on the. net clr. Indeed, but in fact, syntax differences in commonly used languages such as C ++, Object Pascal, Java, VB, and Pb are not essential. As long as you are proficient in a language, it is not difficult to learn the syntax of other languages. It is not very useful to provide such cross-language capabilities.
The problem is that each language has its own development tools on the Runtime Library. These development tools provide powerful runtime libraries (class libraries), which are the key. Simple Example: C ++ builder programmers can easily switch to Delphi, but it is difficult to switch to VC, because C ++ builder and Delphi both use VCL, but VC uses MFC. Therefore, compared with language migration, library migration is the most difficult, but. Net requires that all languages running on them use the class libraries provided by CLR. On the surface,. NET is designed to provide a public runtime environment for all languages, but it is actually an American "world single polarization" hegemony that fully demonstrates in software development. Once all languages are migrated. on the Net platform, you will lose yourself. In the end, only one language is left: C #, because only it is the out-of-the-box configuration of the CLR class library. Other languages are just effective. This is the purpose of M $.
However, M $'s abacus is a little better. The dream is beautiful, and the reality is cruel. As a developer, familiarizing yourself with a type of library is a very long and painful process. The unique CLR class library is a huge class library. For every experienced developer, go. NET development, the cost and risk are very large. This is why VB programmers complained when vs.net beta1 was launched, because VB. NET, in addition to its syntax, is completely different from VB. The only benefit to. NET is the new developers who have no development experience on other class libraries. NET may be their choice. In addition, for ISVs (independent software developers), it is very unlikely that they choose to discard the current language and class library and transfer it to the. NET platform. Even if such a transfer is necessary, I believe that most ISVs will choose a more mature J2EE. After all, unlike individual companies, the risk of migration will result in a greater loss than the individual. Some ISVs are currently in use. net, but it is more out of the market. net light can save a lot of advertising fees, after all, M $ is there. net.
Let's take a look at CLR/IL: this is by no means a new concept. If you have a little analysis, you will know that its principle is exactly the same as that of Java. The M $ statement is that CLR will compile the program compiled into Il and then compile it into COM for running. However, many JVMs now support JIT compilation, and the performance will not differ much. Currently, CLR can only run on Windows platforms, and its various aspects cannot be compared with those on UNIX platforms (Java has poor performance in windows and must have good performance on UNIX. I have seen some people disagree with this. In fact, this is obvious: Windows mainly runs on IA (Intel architecture, intel's CPU Parallel capabilities are limited (it is said that its CPU only supports 2 SMP, and more than 2 are implemented by the motherboard), unless on the Alpha platform, Windows can enjoy a good multi-path SMP. However, Unix can run on dozens of machines or even more mainframes, with high load capabilities. I have also seen some people say that Windows can use cluster technology to achieve higher load and higher reliability than powerful Unix machines. Later, I learned about Windows Cluster from Microsoft's technical staff, but I still know this. Currently, Windows 2000 advance server supports dual-host cluster, windows 2000 data center only supports 4-host cluster, which is far from comparable to the stream of mainframe, not to mention the cluster of UNIX.
There is also ado.net: This is copied, and there is nothing to blow. Stateless database access has already been implemented in the desert 3 in Borland, the concept of the offline dataset of ado.net dataset is also from the clientdataset of Borland. It is only developed by ado.net, for example, multiple data tables can exist in the dataset. The worst thing is that ado.net is incompatible with the previous ADO (in this case, I have consulted Microsoft), and ado.net belongs.. NET Framework. Ado 2.7 is only. net, non-ado.net (I have consulted Microsoft's global technical center ). This means that if you use. Net to write Multi-Layer servers, the client must also install. NET Framework. Of course, compared with the previous ado, ado.net is a major improvement, but it has not brought too much benefits for developers who used it before.
Another myth about. NET is that. Net can solve the DLL hell problem. I am probably ignorant. I have never heard of DLL hell before. net. I did not notice that this problem still exists in the original DLL when the. NET message was full. But a careful investigation, the problem is still in the MS, MS by Windows is his own development, in which the use and distribution of various DLL, but not well handled its compatibility problem, check the number of different versions of msvcrt on your machine. dll will know why the program written with VC is relatively small. What's worse is that the same is true for Windows DLL. I believe that the problem of displaying exceptions caused by comctl32.dll has also been encountered. Finally to. net, MS is determined to solve this problem. But this is also the case. net, I finally met this famous DLL hell when installing visual studio.net beta 2: A previously installed HTML-related program was originally running normally, since vs.net is installed, XXX is displayed. DLL error. If the original DLL in the Windows installation disk is overwritten, vs.net reports the same error. Whining, is. Net the solution for DLL hell? I had to stop using the software.
Next let's take a look at how to install vs.net: first,. NET Framework cannot be installed. When installing this stuff, I first thought of win32s in Windows 3.x. I do not know after eight years, how many people remember this stuff, that year, MS will it as a Windows 3.x to Windows 9x between a transition, and MS is to use it to squeeze many other competitors out of the market, do not know the current. net Framework does not want to repeat it again. Fortunately, "wolf" can be said twice. And this. net Framework is not hateful enough. The hateful thing is that it has installed IE 6, and I have always been disgusted with IE 6. I have encountered two major troubles brought to me: first, exceptions are displayed when Browsing some pages made using Lotus Notes, which may even result in an attachment error when the mail system accessing the notes sends an email. Second, it modifies the directory tree in Windows Resource Manager and sets it to rowselect, that is, it can be selected as long as the row of a directory in the point, which is crazy!
Then let's take a look at. net installation. I encountered a problem when installing the official version. At that time, I forgot to disable anti-virus real-time monitoring (this was the reason I found later ), when you install the last disk (the fourth disk), the following error occurs: "register assembly component {XXXX-XXXX ...} (This is a guid) An error occurred. Error code:-21xxxx ". I do not know how many people can understand what the error is? In addition, it does not give people the opportunity to try again, there is only one confirmation, and then it is to roll back the installation (its rollback installation is still clear ). Later, I thought it might be an hresult value, so I specially wrote a program to see where-21 XXXX is. The result shows that there are four Chinese characters: "Access Denied ". That stupid installer! Directly show don't get, just an API function to deal with the matter, I was serving the MS experts.
Finally, let's take a look at Asp.net: this may be. the only thing that is most commendable in net is that Asp.net has the same performance as JSP (and Asp.net has better performance on Windows platforms ), the webform Development Technology in vs.net is currently the most productive web development technology. In addition, it completely separates page display from processing logic, which is much better than ASP or JSP. Webform also provides many serverside components, making Asp.net development and rad almost identical. It may enable. Net to open up some situations in the Web application field first. Even so, is the use of too many serverside controls likely to result in too many unnecessary network roundtrips, limiting the applications on the Internet, but only performing on the Intranet?
So many. net not, probably will be MS fans with bricks to bury it, but this cannot change the MS of this god-building movement. I am not trying to prove that. NET is useless, but it is definitely not as good as M $. If you want to select a technology, think twice.

[Mental Studio] birds aug.18, aug.25-02

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.