Previously recorded in the "C language, good cool" video is written in the C language on windows, yesterday suddenly wrote a C and C + + program on Linux, unexpectedly received a lot of confused friends asked "what is the meaning of", "directly on Windows with the IDE much more" and so on, At that time I can only say: Waiting for you will know. This may be after 5 years, perhaps 10 years later, before it can be confirmed. But the time has passed, the opportunity has passed, understand what meaning? Idle White A young head, empty mournful.
Now I summarize the reason according to my feeling, understand the best.
The significance of C is not so much what it can develop in itself, nor how popular it is to find a job, but how much it pays. A lot of people are confused by these superficial things. is to draw the conclusion directly: C language is useless. However, can tell you, any university science and engineering, if not open C language, is irresponsible.
Why do you say that?
C language is the most appropriate from the efficiency, performance, friendliness of the underlying programming language (in addition to the Assembly, but the assembly is not friendly), training is the foundation of the programming of internal skills, to recognize the intelligent world!
1: Learning about programming Ideas
Although the C language is only in the elaboration of process-oriented, but if not the process-oriented thinking programming, not through a lot of code practice, not to the C language, you can not understand the advantages and disadvantages of modular programming, then you learn to object almost also do not realize its advantages, because there is no contrast. You learn C + + or PHP directly, you may have memorized the object-oriented syntax within a few days. But you can hardly understand the advantages of object-oriented, and naturally do not know when to use object-oriented development (often can only listen to other people say well, others to use object-oriented development you use). Then for the higher-level programming ideas, such as: Facing the plane, it is more to touch the wind.
Knowing it doesn't know why, the programming realm is not enough to sustain your long career.
2: Rapid learning instruction for the upper language
C Language Proficiency, you learn C + + faster, with the support of C + +, you learn such as JAVA,PHP,.NET,C#,MFC,QT, you can speed up, if you are proficient enough, one weeks to fix a door is not impossible. Just like practicing the nine-Yang Martial, and then practice the big moved as long as 3 hours, and the average person to practice 3 years, not necessarily learn.
More things like the MVC design pattern, based on object-oriented thinking, you can also get it done quickly. Template parsing engine (such as Smarty), you can also quickly fix, two times the development of open source system, you can also quickly fix ...
3: The meaning of single chip microcomputer and embedded
C language derived from such as C51 programming, AVR Programming, PIC Programming and other microcontroller series, with a good C language, these areas can be quickly understood. At the same time, C language in the embedded (such as: ARM) is a very powerful application. This is the direction you can develop later, that is, learning C can be embedded in order to learn. The combination of embedded and Internet, is the era of intelligent IoT, is the future trend of development.
4: The learning of Linux is very instructive
Many of the commands in Linux, as well as the file system, as well as the source code compilation, as well as the driver, can see the C language shadow everywhere. It's hard to imagine a person who didn't learn C would be proficient in Linux.
There are a few trends in the future: Mobile Internet, IoT, big data, cloud computing, these in-depth, high pay basically coincide with the focus on Linux, Unix ...
5: Let you understand the nature of programming, the intelligent world more deeply!
Because the C language is close to the bottom, a lot of things are writing primitive things, such as strings, such as pointer manipulation, such as heap memory manually freeing space. Because it is for you to write yourself, you also have something that you want to understand about hardware (don't compare it to writing hardware IO ports and assembler code, because this is in the context of programming, not hardware development).
Hardware, but the connection between hardware and software is through their IO ports. The bit manipulation in C language has a good analogy with the programming of IO port of hardware. Do not take the high-level language of the IO port analogy, in the real sense if the speed is fast, the driver is basically only C and C + + and assembly, will not be written in high-level language driver. Just like if you use C # to develop a large desktop software card you want to go to the wall, you have to change the plan, instead of changing the syntax. Change the plan is to change to C/S.
through write drive, you will further understand the combination of hardware and software, you will be the programming language and the bottom of the PCB circuit board combined, the whole intelligent system in your eyes is clear, when the intelligence becomes not intelligent, you learn to understand the intelligent world.
Finally: Do not measure the value of C in terms of salary, many of the upper-level languages may collapse, only grasp the underlying language to keep you invincible. And when you have a good understanding of the bottom layer, the deep application of the upper language, you can easily take care of it. Otherwise, only look at anxious. Just like the day before yesterday I in hook net and boss directly hired online random search PHP, the result is actually more than six months ago demand much, and need are "master" (Changsha salary 12-20k, Changsha housing price I was 7k/square meters OH), in addition, I did not deliver any company, but has received 2 "offer", Company boss personally find, can see the company also in need of looking for someone, look for is down the road, I am not a master, but I can walk, step by step, even a small error will be tangled half a day of the kind, may be this somewhat attractive. At the same time, this means that the trend in the future will pull more and more, novice or beginner more difficult to find work, the company to seek a master is also harder. The future needs are compound talents. If everyone is impetuous is your impetuous reason, then everyone is hard to find work is your future outcome. Would you like that ending?
So: eyes peeled, abandon childish, go mature, win the future.
In order to summarize the better C language, is planning to prepare the "C language, good cool" 2017 new edition, hoping to use the latest experience and work experience to explain some things that have not been elaborated before ...
This article is from the "C Language good cool" blog, please be sure to keep this source http://ningcaichen66.blog.51cto.com/2902291/1963489
After years of looking back on the significance of C language for future career