Military programmer's distress - Select VB.NET or C # (transfer)

xiaoxiao2021-03-06  37

original

In the past year, the list of discussion on the Internet or email on the Internet has explored the various superiority of Microsoft VB.NET and C #. The main problem around these discussions is, which one should I learn first, VB.NET is also C #?

The purpose of I wrote this article is to help you solve this problem. I don't want to shake you. Which language is to solve some of the doubts on the basic questions so that everyone can make their own decisions, choose a kind of language that I feel the most comfortable. I will try to avoid discussing the ambiguity of some grammar, just like "there is too much parentheses of C #," "VB.NET sentence is too long," or "I hate C # (or vb.net) because it can (or can't) Case sensitivity. " The commentary syntax is the problem of your personal taste. Instead, I will focus on discussing some discussions I have seen about the technical aspects of these two languages.

In terms of C #

As a microsoft company's latest language, and because it is a small version of the Java language, C # has caused a lot of attention.

People look like a language only depends on it. It is the latest, and the program developers always like to work with the latest tools. Some other reasons for choosing C # are more specific.

The leadership of the trend is always impeccable

"If I am preparing a new language, I should also learn C #." This may also be the speech you often hear. Those reasoning is always conducted: "VB6 transitions to VB.NET changes have been great, so that it is basically a new language. If I want to learn new languages, I think I still learn C #, Because it is designed for the library of the .NET class. "

This is also the pale argument I have heard about these two aspects. You can also say that it is true that if I want to learn a new language, I think I still learn VB.NET, after all, it is also a new language. In addition, let us think about why VB.NET is so fierce from its pioneers to the present: it is redesigned in order to adapt to the library of the .NET class.

Contrast management and not managed code

"C # allows me to write non-managed codes other than the CLS memory control, I can directly access the memory and use the pointer. Let the code are free to run, including the use of memory, you can get higher efficiency." There are 3 issues to consider: First, we should not discuss performance issues in a Beta version of the development environment. For example: there is a significant management code running speed between the .NET's beta1 and beta2 versions. Second, we can't put non-managed code than the management code, and whether it is worthy of adventure for these benefits. You can see this article on Eric Gunnerson on MSDN. Third, although VB.NET cannot establish a non-managed code, it can access and operate from non-managed memory via the use of System.Runtime.InteropServices namespace.

C # has built-in XML file manufacturer

"C # compiler includes direct embedded XML file compilars. If I use C #, I have written code and prepared a file." People who have used Javadoc know that your file is added to What is useful in your source code. Source code and file preparation can be updated at the same time, so at least in theory, your document will never have time. However, in my experience, relatively small Java developers are still using javadoc. In this way, the problem becomes "Can you use it?" If your answer to this question is "Yes", you have enough reason to try C #. What about VB.NET? In many real developers, VB is like a toy language, from a certain angle, it is indeed this. So far, VB is much more than the two weaknesses we know. However, vb.net is indeed a powerful .NET development language that is as strong as C #. Some people say it is more powerful. VB.NET has built-in (insert feature) support; and C # no

"VB.NET has a lot of things like string operations (MID, INSTR, etc.) and type conversions (such as CINT) .C # lacks these built-in support, so I need something, it is difficult to find in C #.

If you caught these you should be MID or CINT function, and finally think this is VB.NET stronger than C # evidence, you'd better look at Microsoft.visualBasic Namespace. You will find most VB.NET internal commands and application functions. These features are saved in NameSpace, any CLS-compatible language can use them, just as shown in the list A. These examples have weakened our debate, isn't it?

Better bundled support is not supported

"VB.NET and COM entities are better." I just saw a little bit, and I decided to make any reasoning again. This is not true from what I have so far. C # and VB.NET must use Runtime Callable packaging and equal amount of source code to perform an early entity. Similarly, implementation of an advanced entity also requires the same number of code.

VB.NET compiles using backgrounds in IDE

If you can't find other examples of developing environmental development environment, you have to admit that its source code editing is very characteristic. You can troubleshoot your code on one side. Trouble is that the very mentally compiled error message boxes are always playing, and if you drive your speaker, you will be scared you.

Visual Studio.net avoids this frightening until you have completed it, and handle some negative errors, the prompt system has passed Microsoft's improvement: he will put on the underline of the curved song below those wrong statements.

VB.NET background compiler / syntax checker is very complicated, and you are very polite to point out your mistakes. From some ways, it can tell you how to modify the errors in your source code. When C # has its own grammar inspector, and can detect the matching of parentheses, calculate the pop arc, display the lost semicolon, but it is not as simple as VB.NET. Continue to discuss the superiority of these two languages, it is really upset, but Microsoft is indeed a truth, that is, all .NET language is equally established. Those who advocate C # better than VB.NET (vice versa) and developers who climb wages are as wrong.

What I want to emphasize is that those who have a visionary technology will no longer look for programmers with some development language experience, but to find programmers who have .NET class library development experience. So I advise you not to worry about what you choose: Just find a language you think is interested in learning, and learn your framework.

转载请注明原文地址:https://www.9cbs.com/read-81809.html

New Post(0)