Read Wang Yin's article, think should be the characteristics of the programming language, all programming language inside, is called "Language characteristics." Cite some examples of language features:
- Variable definition
- Arithmetic operations
- For Loop statement, while Loop statement
- function definition, function call
- Recursive
- Static type System
- Type deduction
- Lambda functions
- Object oriented
- Garbage collection
- Pointer arithmetic
- Goto statement
These language features, like when you're choosing a computer, look at what's in it. When choosing a computer, no one would say that Dell must be the best, they will only say that this model is installed in the Intel i7 processor, this is better than i5, DDR3 memory is faster than DDR2, SSD much faster than disk, ATI graphics card is garbage ... So wait.
Many beginners do not understand that if a smart programmer begins to use a new programming language, he is often not going to see a large manual or book in the language, but rather a problem that needs to be solved first. With a problem at hand, he could take a two-minute look at the language handbook and see what the language looks like. Then he picks up an example code to start tinkering with the idea of changing the code to the problem he's trying to solve. In this brief process, he quickly mastered the language and used it to express his mind.
In the process, as the need arises, he may ask questions such as:
- What is the syntax for the "variable definition" of this language, do you need a "claim type", or can you use "type deduction"?
- What is the syntax of its "type"? Do you support "generics"? How is the generic "variance" expressed?
- What is the syntax of the "function" of this language, what is the syntax of "function call", and can I use "Default parameter"?
A reasonable introductory language
So if beginners want to do more with less, they should start with a kind of "reasonable", no obvious serious problem language, grasp the most critical language characteristics, and then apply these concepts to other languages. What are the reasonable introductory languages? I personally think these languages can be used to get started:
- Scheme
- C
- Java
- Python
- Javascript
So in contrast, what languages do I not recommend to get started?
- Shell
- PowerShell
- Awk
- Perl
- Php
- Basic
- Go
In general, you should not use the so-called " scripting language " as a starting language, especially for scripting language tools that originate from early Unix systems. Although PowerShell has progressed more than the Unix Shell, it still does not get rid of the fundamental problem of scripting languages-their designers don't know what they are doing.
Learn what to learn in programming language