. NET is not yet mature, and there will be variables within two or three years. This article is evidence

Source: Internet
Author: User

It is intended for children's shoes who have chosen to upgrade from the old platform or who have just come in.

I personally think that the integration idea of ms.net is a bold innovation. After integration, the same platform can achieve cross-language compilation, and the SDK is rich in content, it can be used to make up for some problems in Windows APIs and class libraries. However, starting from 1.1, it was a semi-finished product that led to great changes in the internal implementation of later versions of 3.5 and later versions. However, it was just to fix the previous shortcomings and it was difficult to maintain continuity. Let's enumerate several design questions:

1. VB.net has nothing to do with VB. Do not think that the VB6 project can be upgraded smoothly. To be precise, this VB should be called. net Framework for basic is described in the basic language.. NET Framework. Currently, many old VB engineers have upgraded to Java, but it is not obvious.

2. C #. net is a version of Java, and the design of window controls in IDE is clearly the idea of Delphi. The reason is not hard to imagine. When Microsoft started C #, it was the person who dug from these two camps, because VJ was not integrated with the patent issue, the project team was integrated into C #, so many unfinished VJ missions were introduced, but the C # positioning was vague, for Java developers, C # is slightly complex and supports more features than Java, but the SDK and code library are not as rich as Java. Delphi developers certainly cannot tolerate it. net
Lengthy class libraries and environments, and inefficient execution

3. c ++ from vs6.0. After, vs2008 to vs2010, I personally felt that the C ++ compiler had no progress, similar to the compilation in the vc6 era. The upgrade mainly aims to update some OS header files, probably, CRT has better support for multithreading. That MFC has never liked it, and the more difficult it is to use it. Soon the GDI programming will die, and this MFC will not be long, we recommend that you use the STD library and open-source third-party library. I personally recommend boost and use some built-in libraries of MFC. You will understand that performance is poor ~~

To sum up ,. the main problem with the net framework is that the process is too rough. In the first version of 1.1, there were many bugs and it was not reliable, running is slower than the execution of VB6 explanation, basically at vb5 level, maybe JIT is not mature at that time;

After VJ is erased, the MS path is messy. C # Too many features of VB are not good. The task of advanced languages is to simplify the problem and quickly implement functions, this makes C # and VB fancy and cannot replace C ++. It supports multithreading, inheritance, overloading, and proxy... Encapsulate all the things that require pointers. Even so, C ++ programmers will not switch to C #, but C # and VB programmers are very confused, too many features make JIT optimization more difficult and effort-consuming.

  • . Net Framework 1.1 and 2.0 are both semi-finished products. 3.5 was reliable at the beginning, but it was too late. If 1.1 was 3.5. net should have been very good, maybe it was dragged down by Vista... When you are not satisfied;
  • . NET Framework should be divided into core library and extension package, which is better, but MS has made great efforts in namespace and version collaboration, which is confusing;
  • There are too many outdated features and technologies integrated on the. NET Framework. I believe that with the transformation of technical applications, these needs to be adjusted to meet the development requirements.

By the way, if Java continues to integrate features and adds a generic feature today, it will support closures tomorrow, so it will not be necessary for jre, GC, or SDK to Step C # later.


My ideal. NET Framework includes

C ++ (this is irreplaceable). We hope to consider more cross-platform (Windows, Linux, and mobile OS) CPU x86 x64 arm.

C # (Integrated vb vj vf) is dedicated to medium-sized Application Development: simple layout, efficient code, and clear structure. It is easy to integrate with other languages, not the current unmanaged code mode

?? The agile mode is used for small applications, web development, and mobile development. It requires a popular, simple, and Agile programming language, which is closer to natural language and natural logic, apparently, both go and ror are in this direction currently.

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.