Advice to beginner programmer - reprint

xiaoxiao2021-03-06  47

I always believe that for an initiator, the technical trend in the IT industry cannot catch up, and it has not been able to catch up. I often see my DDMM, throw the textbook, go sell some big heads such as C #, vb.net, which makes me feel very sad.

And many cars can't make a bad BBS standby eyebrow dance discussion C # inside, you can make me feel funny. C is like the ASP of the year, "suddenly like a spring breeze, thousands of trees and pears," the result of many schools became a "Web Academy".

Many college students at 96, 97 are doing web. Of course, I don't have a sense of discrimination against a certain industry. I just think that if they take more fashionable techniques, spending more than a point in the foundation, it should be farther.

Several misunderstandings

The chasing of beginners on C trends is actually one of several misunderstandings that often encounter during learning. I will use some practical examples to illustrate these phenomena, you can take a part of the class or several of themselves:

Computer technology is considered to be programmed:

Some people have this impulse even if there is no idea. What makes me strange is that many student students have such a thought. It is believed that computer majors are programming majors, regardless of programming, or less related courses, no matter whether the extreme students don't have to be "programmed" on the book.

In fact, programming is only a complicated labor in computer technology applications, which is why IT industry's best people are programmers. Computer technology includes multimedia, computer network, artificial intelligence, pattern identification, management information system, etc.

Programming is just the process of expression algorithm in the process of theoretical research or engineering practice. Programming people do not have a high understanding of computer technology. And an interesting phenomenon is that many master-level computer technicians do not understand programming. Online hype and reality in reality puts programming this labor mystery. In fact, every programmer understands that he is not more professional when he is, it is natural to go, so it will not be high-grade.

Bite a whitewy word hole:

I have seen a girl's "computer network principle" teaching material. This female sexual student is full of horizontal lesions in the book. The notes are made full, and it is more than the textbook. I don't understand, is it necessary to do notes like a course like computer network? Our test education has heard a lot of students. When the course "principle", many students like "Marx" are written by memory.

This is the most stupid behavior I have ever seen. The so-called "principle", that is, it is necessary to master it why do this, learn why, not HOW (how to do). Extremely Serious Students Back Under the Uther Netline Maximum length, the length of the data frame, the meaning of each field, the format of the IP header, etc., but forget the principle of the route, forget the TCP / IP protocol design. In short, many people have spent a lot of time to bring the book to the buzzard, but it is equal to anything.

These students are like this when learning programming, and they remember the details of the C grammar. After reading the C tutorial, look at "Thinking In C " (really a good book), "Inside C ", "C Reference", this C , Thatc ..., then the online all kinds of anecdotes about the C grammar, Then I found some syntax for C , and finally turned back. There is a brother and said to me: "C is too difficult, learn here forget there, learn to inherit the template." My reply: "You don't learn." I didn't teach him, just tell him, the grammar of Dead C and the fencing of the hole has been showing off the anmpatity. There are several ways to write. It is meaningless. You don't need a pair of C syntax too concerned, do you have to program, and if you have any questions, you will find MSDN to get it. I have a conclusion that the understanding of the programs syntax is the most insignificant knowledge during the actual development process. This is why I was using Basic (I used to have never learned it) for half an hour to see the syntax, and then completed the program in half an hour, and an hour later I completely forgot all the keywords of Basic. Due to the foundation, blindly chase hipster technology:

Finally, I was here. Most people want their own things to run immediately and become money. This idea is reasonable for a programmer or project manager that has entered the occupational field, and IT technology is so fast, and it is unemployed. But for beginners (especially those who are abundant, this idea is in other people. The biggest capital that did not enter the industry competition is that he has enough time to learn basic things, learn why rather than how. Trendy technology is often easier to master, and it is increasingly mastered, which is driven by commercial interests, in order to maximize the cost of software development. But in the field of IT is the case, the easier, the more you learn, the more people learn, the faster you eliminate. Every new technique comes out, there are many beginners to follow up, these beginners have made them a lot of time in the process of follow-up, and this technology is also eliminated. . Basic course, compute data structure, operating system principle, etc. Although you can't let you immediately realize a Linux (this is why many people laughing the theoretical courses), but they can significantly reduce your learning curve when learning new technologies. slope. Moreover, many key technologies (than the design of the Win32 SDK program, DDK programming) is even indispensable.

A living example is my classmate and my classmate, I can't find the boot button in the big one, he will have written some simple assembler. I spend all the time of the big two, computer architecture, data structure, operating system principle, etc., and he began to learn HTML and VB, and catch up with the trend of ASP. When I was three times, I started learning Windows operating system principles, learning SDK programming, time is long, then I can use VC to develop an image-like image application. I once I was annoyed because of my classmates' procedures, they were still studying how to create dialogs, but I'm going to graduate, I found my choice. The salary that I have negotiated by the company I negotiated was twice as much as he. There is an unappropriate part of the following: Assuming that learning VB programming requires 4 months, learning basic courses and VC programming require 1 year. So if you learn VB, then learn the latter, time will not decrease, or 1 year, and in turn, if you learn the latter, then learn VB, maybe you only need to learn very well. Several important basic courses

If you are a student, or if you have enough time. I suggest you grasp the knowledge below. My suggestion is for beginners who wish to achieve achievements in IT technology. At the same time, I also listed some books, these books should be available in the bookstore. To be honest, my biggest wish when I am reading other people's articles is to hope that the author will list a book.

College English - Don't feel funny. I truly recommend this course because there is no professional document reading ability. Chinese translation is often coming out in the Monkey Year of the Monkey, and many publishers are simply printing the E text directly. The way to learn is to force yourself to see the original version of the textbook, you will not understand, and use more natural skills. It is absolutely desirable to have the quality of any industry.

Computer Architecture and Assembly Language - About the architecture of the architecture is everywhere, and it is also small, and it is a very good book. "80x86 assembly language program design tutorial" (Tsinghua University Press, Black Cover, Yang Qiwen). You need to focus on learning the programming of the 386 protection mode. Otherwise, you will feel that you are watching the sky when you study some things in the bottom of the modern operating system.

Computer operating system principle - Our development is always conducted on a specific operating system, if not, there is only one possibility: You implement an operating system in yourself. In any case, the operating system principle is required. This is like a single chip to make peripherals, the basic working timing of the chip is required. There are also many books, I didn't find which book was very outstanding. Just thinking that if you have time after reading these books, you should look at "Inside Windows 2000" (Microsoft Press, I see the e-article version, Chinese book names must be the insider of Windows 2000 technology). Another article on ZDNET has been discussed on the need to learn its necessity.

Data Structure and Algorithm - This course can determine the level of a person program design level and a core course. I prefer the Tsinghua Edition (Zhu Bing Li, Liu Tianshi). Many people like to buy C , but I don't think it is necessary. C syntax makes the algorithm implementation process more complicated, and many teachers like this thing to make algorithms more complicated. It is best to browse the C version of the book after learning the C version.

Software Engineering - This course is, the more important it is, the more discovering it, although it is like watching Ma Zhe when you start watching it. My suggestion is to watch "Practical Software Engineering" (Yellow, Tsinghua). Don't spend too much time to remember the box box, don't understand, jump. After each time I have completed a software design task (whether exercises or work), I will retrieve the review every time I have gain.

Design of Windows - "Peking University Press, Petzold" I suggest that any person attempt to design the Windows program is carefully completed before studying VC. And the previous "Inside Windows 2000" is also preferred to be read behind this book.

In this book, there is no C , no GUI, no controls. Some are how to complete the Windows program design with the original C language. After learning it, you will find that VC is actually very easy. Don't learn VC before you haven't read this book, you should don't touch it. Many of the famous schools I know even have used it as a textbook. It can be seen that it is important.

I think it is an important course that must be learned (if you want to do a Windows programmer).

There is a simple choice for other courses: If you are a computer system, learn your professional base lesson. If not, please refer to the computer system's curriculum. If you can't see it when you look at a book, please turn it back to the book, look at its reference, find them and learn them, and then look at this book. If there is two words in the book name of a book, you must don't remember the details of it, you should master your essentials at least 50 pages a day. Practice a theoretical or algorithm as much as possible on your computer.

You can also read many book reviews on 9CBS. These book reviews can help you decide what books.

Three provinces

There are too many books read every day, and it is easy to lose. Be sure to think about what you have learned every night, and what you have anything else need to be mastered, you are most interested in what you spend, there is too long enough to wait for the time. At the same time, we should think about the most likely applicable applications in the future, which allows you to catch up with technology trend but lead the technology trend. At the same time, strive to use the techniques and theories that have now been mastered with a certain new thing. Adhere to this can make you truly become a software "R & D" rather than just a CODER.

Spend the most time to learn

This is the last advice to beginners. Compact the time of SC or CS each week to the least, do not play them is best. At the same time, if your ASP technology has been able to make money, even companies ask you part-time, this proves that your heavens can guarantee better income after work, you should do more complicated things. The eyes are far more, this is suitable for anyone.

I believe that you have been able to decide whether to learn C # or when you go to learn it. /// Learn to program, it is never licking. Any practice is ...

For this issue, my basic view is that any practice is the theoretical carrier or expression. The theory is also rising by practice. Both are syndrome differentiation. Today, we only pay attention to its previous part: Any practice is the theoretical carrier and performance form. I don't think so, but the appearance of the truth is often so strange, it is difficult to understand. Let me explain it to you. For example: War is the practice of military theory and its expression. The victory of the war depends on the level of the military theory of the commander (don't give me a dialect of Zhao Kuo "paper talking", they don't have the military theory, and the amount is only "back" under the military theory. " Master "and" back to the stream "this is two concepts.)

1, VC, VB, Delphi ..., which one do you have? For details, I want to tell you: any computer language is the carrier or expression of computer science theory. C is very god? Is Java cool? Does their gap are far away? Yes it is. But from the theory level, they are not distinguished, all of the "object-oriented" theory is a specific form. The current programmers are issued (usually we call the merchants called "system software") to dazzling, headache. Continuously followed in the new language, this road has not yet ran to the head, "New Road" over there, so he will follow it again ... Some people have begun to sigh: Xuehai is boundless, learn no end , Or what "programmer is youthful, over thirty don't want to do" ... I have to sigh here: China's education is a "form and go to school" education. As early as high school era, we have learned the basic theory of "identifying materialism": do things to catch the main contradictions. This article I am afraid who knows, but I see who can use this theoret from "fire pure" in practice. The use of this theory is to be programmed: theory is the main contradiction, the language is a secondary contradiction, learn theory, and then specifically learn a language, you are just a kind of recreation. Now I am universally seeing VB or learning Delphi. But if a person with Delphi, when you need to write a web program, use TCP / IP to embed it in the application; and another person with VC will only dragging one of another components. Do some "example programs". Who do you have to have two people? Who is DELPHI and VC? I really should have such a word, ask: New York is good or Shanghai? A: You have a good thing, no money is not good. Shanghai's rich people are not less superior to New York's rich, and New York is not more happy than Shanghai's 乞丐. Now you will also say that people who learn VC must be higher than those who learn Delphi, "Qian Jing" is good?

2, "Shallow" should never be the character characteristics of Chinese programmers! ! ! I want to ask: Is there so many Chinese programmers, is you really studying the basic theory? Don't use your existing programming experience to tell me: Programming does not need mathematics, no data structure, no need to compile the principle ... ...... Do you know? The reason why I published this article is because I can't see this, this kind of 歪 理 理 理 理 理 理 理 理 说! The cult is dead is a human individual. You are killed is the future of the Chinese software industry! If this theory continues to poison the idea of ​​programs, China will lose the dignity of the nation in the computer field! ! ! Excuse me, operating system, compile software, database system ... these are called "system software", China has a few products that take the product? Maybe it is my lonely, as far as I know: There is no similar thing in our country. Yes, we have some websites in the Western market. We have some people asked the high-end staff by foreign companies. We also have some people to give the Western official website ... but we use the compilation tool Who is the product? Who is installed in microcomputer? Whose chip is our program? Love is deep, hate. I love China, but I hate is not China, but in the Chinese programming world, "shallow" and "self-righteous", this is a drug tumor in our national software industry! Yes, now the book is now introduced to the sky, so that the threshold for programmers is getting lower and lower. My line of walking is benefited from this "low threshold" and ran in. But after coming, we can't make it simple as this - my brothers! Use the tools provided by other countries to do a few websites, write a few applications, make a few viruses ... It is a national software industry. By the way: I respect to Bojun, but I don't think Jinshan Company and its series of products are known as the "national software industry", which is too far away. ...... people who write Flash software will think that people who use Flash to do animations than him? Adobe really thinks that people who take the Adobe certificate are "talent"? Msce, MSCD ... People who have obtained the Microsoft Badge through this type of test, is it "talent" or "volunteer salesman" in Microsoft's eyes? People who have such certificates and other large software companies, you are still thinking that you are "the elite of the Chinese software industry" and lament "Huai Milous does not meet", is there too small? Wake up, friends. Don't use the program without the theoretical words from deception, don't use your own shallow to teach others as shallow as yourself. I would like to ask those who are known as mathematics, data structures, etc. to programming: Please make a clear concept: it is these theories "useless", or you "useless"; it is "no use" It is still your level, "I can't use it"; it is you "don't need to use", or you don't use "? For example, work schedule in the operating system, if the work priority is the same, what method is used to schedul? Of course, "first-come first" - this is the application of "queue" in the data structure. You say "I can't use it", I am afraid because I have not had the opportunity to contact this "high-end programming" so far? In this case, then it is, earn your money, but don't come here to misunderstand your child, boasting what excellent programmer does not need theory.

Who said the golden age of system software development has passed? Is LinUX nothing to do with MS operating system for many years? Isn't China not find such a chance? No, if our programmers overcome the current floating and eagerness, we can establish our own brand in the "high end" of the software industry in "System Software"! So please see the following --3, young people should have a magnificent ambition. Do your own things with others' products, you will always be a "advanced customer", can't make a real developer. No matter how much good products you develop in other system software, how much you earn, as long as people are upgraded, or a new product, the silver in your pocket will be peeled off with the last pants. You, just a senior work. I want to intend to enter the friends of the programming world, especially the very young friend, can have a relatively high ambition. More hopes that those who have entered this line can have the "revitalizing national software industry" as their own responsibility, and strive to become the "flaggers" of the Chinese software industry. I don't agree that Fang Dongxing will be a lot of things. I don't agree with the young people to learn him, I refuse to use Microsoft products, refuse to refuse VC, refuse IE ... I think Fang Dongxing is just a narrow nationalist. He saw the side of the Chinese software industry, but he did not want to recognize the side of our backward. Unregistered "self-esteem" is equal to self-extracting. At the end of the Qing Dynasty, our technology did not fall behind the Western, but we used "big country thoughts" of "self-esteem" to make us lost opportunities to learn from other countries. When we laughed at the blue eyes of Westerners, when the nose of the nose, their cargo ship, but the emperor of our "Central University", and then played the world. When the Empress Dowager Cixi was smashed, I had to say that "the material of China's material, the brother and the country is happy", at this time, what is the self-respect of her "The Royal High Guo Queen"? I have been self-respecting in front, and I will be retribution afterwards. This newspaper should continue, it is hundreds of years until now. Do we have to continue to complete the door, then go old? We now recognize that Microsoft is strong than us, learn to Microsoft, does not equal we will always run behind him! When we left, we should think that when can we raise this noble head! ! ! And it is "certain"! ! ! ! ! Self-esteem is not wrong, wrong is wrong in "too blind" - Self-respect, you have to find your teeth like Cixi. As a big country, a wise nation, we can't blame the doctor. Young people, high as high. I believe in me, when you have a national revitalization as your own responsibility, the King said that the emperor, rich and prosperous, is only a by-product of the Qianqiu Weiye. In this era of respecting knowledge, advocating scientific agents, people who want to be high, never have to worry about their "money". Don't have to be said, I admit that I was not interested in the field of programming, and there is also a "money way" consideration. But it is like the warrior who participated in the eight roads in the past, some only reported the idea of ​​eating military food or guring the family hatred, but later learned the Marx, improved, and turned to be the target for the rescue of the country. After I stepped into this line, I decided to postgraduate and slowly improve my awareness. I think there should be a higher life goals, higher Zhi and pursuit to support my actions. This goal is to make your own strength for the national software industry. I really hope that you will walk with me.

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

New Post(0)