7. Some people think that "Chinese programming" is a secret weapon to solve the efficiency of Chinese programmer programming, is it a "silver bullet"?

Source: Internet
Author: User

The word "silver bullet", still not very sure of its meaning, through the search, learned that the word silver bomb is often used as a lethal weapon of the generation of words, is likened to an extremely effective solution, as a killer, the strongest kill strokes, Ace, etc. McCartney.

Then to answer whether "Chinese programming" is a "silver bullet" to solve the efficiency of Chinese programmer programming, first of all to understand the current constraints on the efficiency of Chinese programmers to improve the shackles of what, and then according to "Chinese programming" can break the shackles to determine whether it is a "silver bullet."

Let me talk about the three barriers that I think are currently impeding the efficiency of programming, or the three abilities that are extremely important for improving programming efficiency.

1. Programmers want to determine to what extent the problem can be solved by the machine, and then the machine can be more efficient to solve the problem, such as the same problem may have a large efficiency difference algorithm, so the machine to solve the problem of the degree of control and the use of the algorithm is the two key programming efficiency, if a programmer does not understand these two points, The efficiency of his programming will be greatly reduced.

2. Programmers have the ability to abstract problems, today any programmer will use a lot of wheels (representing various types of auxiliary knowledge or tools for programming), such as the operating system compiler database, algorithm data structure, etc. Good programmers know how to abstract and decompose problems so that they can be combined with the right wheels to improve programming efficiency, while novice programmers often lack the knowledge of the wheels, and the abstraction of the problem is not enough to solve the problem. So the ability of programmers to abstract problems and the understanding and proficiency of system design are also the main factors that affect programming efficiency.

3. Programmers need to have the ability to consider extensibility. Many algorithms in the algorithm competition consider the single-machine memory algorithm, the computational model is highly abstracted, in practice the model of the machine is more complex. such as single-machine multi-level structure brings a variety of time and space complexity of the trade-off balance, how to improve the performance of the multi-machine network in the further optimization of the overall performance. In addition to extensions on the machine side, extensions at one end of the programmer are also important. Complex problems and engineering often mean teamwork and longer development and maintenance, teamwork and design communication here for the time being. Give an example that is easy to overlook, a comment in the program. The expert will be more concerned with the complete and clear comments, because this is for the present and future teams (including themselves and other members) to see, directly affect the long-term overall development and maintenance efficiency.

      Obviously, none of these three core shackles is related to "Chinese programming", so "Chinese programming" is not a "silver bullet" to solve the efficiency of Chinese programmer programming.      

And for the "Chinese language Programming" view, I give the teacher gave the second reference in some of the notes are more agreeable. The article explains why Python does the following: " a large part of the reason is to promote computer education." Python is intended for beginners in computer programming, for people who do not understand programming concepts, and for those who do not intend to be a programmer. for these people, it's not a bad thing to be able to learn in Chinese and do simple programming work. You may think that English is the standard computer language, to learn the computer must learn English, so do not want to learn programming but do not want to learn English lazy ghost worry. But I would like to point out that learning English is a must, but it is better not to learn from the computer program, because the programming language and English natural language is very different. for beginners with poor English fundamentals, learning in Chinese can focus on programming concepts, common algorithms, and the logic of the program. even if he never touches the computer program again, at least he learns some difficult ways to think, instead of just learning a bunch of @var fscanf () public virtual friend (double) * * struct $v->cast[[ $ $key]] and such inexplicable things. In other words, Chinese programming is simply a language that makes beginners easier to get started with, and focuses more on programming logic, algorithms, and more than English. But for the long-term programming staff, Chinese or English is only a symbol, proficiency after the same, so it can not improve the efficiency of how to help, and can not be said to be "silver bullet."

Reference: http://blog.csdn.net/dickyqie/article/details/52329124

Answer: Especially heart

7. Some people think that "Chinese programming" is a secret weapon to solve the efficiency of Chinese programmer programming, is it a "silver bullet"?

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.