Can programming efficiency in C # compare to Python and Ruby in the case of Visual Studio development?

Source: Internet
Author: User

Reply content:

C # Most things can be written in LINQ, which is about the same time as Python
But some things such as the definition of a class can not run, this is the innate characteristics. Sometimes it's a good thing, sometimes it's a bad thing to see what you do.

The last thing you do is to be proficient with something yourself. With the skilled never more comfortable than the unskilled.

No best, only applicable. Comments, all with serious personal emotional color. In other words, if you are developing a large system, you don't have to compare it with the development script. Understand, will not mention this question. This question asks, from the question can see the conclusion,
C # is a programming language, it is not very efficient to run! (Can say no worse than any language).

So why do we usually think that C # is inefficient, that is, the platform, the start-up phase, memory management, together said. Of course, overall, this is because of the drag of the. NET Framework platform.

C # is not compiled into the target language, but is compiled into an intermediate language that is immediately compiled into the target language when executed on a specific environment. This causes the C # program to start at a strenuous time. It also has to be installed in the operating environment. NET Framework.

. NET memory management, is entrusted to the platform responsible. This leads to. NET programmers, basically no intervention in memory management, basically. NET programs consume more resources, and memory consumption is greater. Depending on GC discovery and recycling, GC operations are also sacrificing runtime efficiency.

The reason why C # has been said to be bad is that its platform is the main drag. The platform, for example, is a C # that is placed on a diesel locomotive train. The mass and inertia are too large to start up quite laboriously. Need chi do not gamble for a long time, but once the train ran up (at this time the compilation is done, the memory is enough, and does not need to be released voluntarily, put it casually), the rest of no one can hinder its speed, and the car is just as fast.

C + + is like a Ferrari sports car, quality small, inertia small, horsepower big, nothing platform drag, run stop that is relaxed. In the same program, C # is only about 1/4 more than the number of lines in Python and Ruby, which is basically the number of rows that curly braces occupy. Practical experience shows that C # productivity is comparable to Python/ruby. Of course, the exception is if there are programs that are particularly well suited to exploiting the advantages of dynamic language features.

If you are a Vim love user, then Visual Studio installed VsVim plug-in will greatly improve the efficiency of editing, VsVim is a relatively perfect plug-in, even the CIW of this high-level command support.

Finally, a question about Linux, the. NET program can run well on Linux with Mono. Although Mono's support for WCF is not very good, but WCF is not necessarily a great thing, ServiceStack I think is a better solution. Programming efficiency is the language can affect it?
It is a part of the language that requires a long time code to write the target program.
But most of the time, the programming efficiency is not determined by the language type, but by the architecture design, algorithm and data structure construction.
I don't believe in big programs. Can you think more quickly than you write?

So the bottleneck of programming efficiency is not the language or IDE, but the level of their posture Ah pro! If I don't count the cost of learning, I'd like to say that people who are familiar with functional programming and. NET use vs write F # are much better than Python and Ruby. The IDE is so powerful in Visual Studio that it's highly efficient to write languages.
C # Such a powerful language, with what to write, the efficiency is not low C # every aspect is better than Python, Ruby I personally believe that efficiency is relative, it depends on the use of tools and language proficiency and familiarity, but also to see the characteristics of the selected language to solve the problem is appropriate. A lot of variables ... Use the right tools to do the right thing.
Perhaps there are some languages that can do anything efficiently without relying on any tool, such as Python Ruby and so on. But for statically precompiled languages such as C # or Java, in the case of Ides, it is much more efficient to use a text editor than to abandon the IDE. The IDE is not just an editor, it is an integration of a variety of development processes, one-stop service, not a text editor, including Vim and other highly extended text editors.
  • Related Article

    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.