Reminds me of the C # trend-advice to beginners

Source: Internet
Author: User
I always believe that for a beginner, the technical trend in the IT field cannot catch up with and cannot catch up with it. I often see my ddmm throwing away textbooks and selling expensive big numbers such as C # and VB. NET, which makes me very sad. However, I think it is funny to have a lot of discussions about the usage of pointers in C. C # Just like ASP in the past, "suddenly like a spring breeze, a thousand trees and a thousand trees bloom". As a result, the information colleges of many schools have become "web colleges ". Many college students at the 9th and 97 levels are engaged in the web. Of course, I have no awareness of discrimination against a certain industry. I just think that if they spend more time catching up with these trendy technologies on basic courses, they will be able to go further.
Several misunderstandings

A beginner's pursuit of the C # trend is actually only one of the several misunderstandings that often occur during the learning process. I will use some practical examples to illustrate these phenomena. You can step by step to see if you belong to one or more of them:

Computer technology equals Programming Technology:

Some people have this impulse in their subconscious even if they do not have this idea. It is strange to me that many students in the Information School also think like this. I think that computer majors are programming majors, and they do not care about programming or irrelevant courses. Extreme students will not read it if there is no "programming" in the book.

In fact, programming is only a kind of labor with the lowest complexity in the application process of computer technology. This is why the people at the bottom of the IT industry areProgramCoder ). Computer technology includes multimedia, computer networks, artificial intelligence, pattern recognition, and management information systems. Programming work is expressed only in the process of these specific technologies in theoretical research or engineering practice.Algorithm. Programmers do not necessarily know much about computer technology. An interesting phenomenon is that many masters of computer technology researchers do not understand programming. The hype on the Internet and the good working conditions in the real world make programming the work mysterious. In fact, every programmer understands that they are not difficult to learn these things than other majors, so naturally they will not go anywhere.

You have learned the following:

I have met a girl's "Computer Network Principles" teaching material. This girl is full of books like a primary school student, and her notes are full. It must be thicker than the teaching material. What I don't understand is that it is necessary to take notes for courses like computer network principles? Our exam-oriented education has indeed affected many students. During the course "principles", many students recite their memories as if they had learned the principle of the column. This is the most stupid behavior I have ever seen. The so-called principle is the need to know why it is doing this, learn why, rather than how ). The maximum length of the Ethernet network cable, the length of the data frame, the meaning of each field, and the format of the IP header are ignored, I forgot the purpose of the TCP/IP protocol design. In short, many people spend a lot of time learning their books.

This is also true for these students when learning programming. They exactly remember the details of C ++ syntax. After reading the C ++ tutorial, read thinking in C ++ (indeed a good book), inside C ++, C ++ reference, this c ++, that C ++ ......, Then there were all sorts of anecdotes about the C ++ syntax on the internet, and I found myself forgetting some of the C ++ syntax, and finally I went back to the negative complement .... A younger brother told me, "C ++ is too difficult. I forgot to learn it here, and I forgot to inherit the template ." I replied, "It's easy if you don't study ". I didn't teach him anything, but I told him that the syntax of dead C ++ is just as meaningless as there are several methods of writing the word kong has shown off. You don't need to worry too much about the C ++ syntax at all. It's just a matter of hands-on programming. If you don't remember something, check msdn immediately. I have concluded that the understanding of program syntax in the actual development process is the most insignificant. This is why I spent only half an hour reading the syntax when I wrote a small program for my classmates using basic (I have never learned it before, then I completed the program in half an hour, and an hour later I completely forgot all the keywords of basic.

Blindly catch up with fashionable technologies despite the Foundation:

Finally, I came up with the question. Most people want their stuff to run right away and turn into money. This idea is reasonable for a programmer or project manager who has already entered the professional field, and IT technology advances so fast. If it is not followed up, it means unemployment. However, this idea is confusing for beginners (especially those with ample time. The biggest capital for a beginner who has not entered the competition in the industry is that he has enough time to learn basic things and learn why instead of how. Fashionable technologies are often easy to master and more easy to master. This is driven by commercial interests, in order to maximize the cost of software development. But the reality in the IT field is that the more things that are easy to grasp, the more people learn, and the faster the elimination. Every time new technology comes out, many beginners follow up. These beginners spend a lot of time in the follow-up process because they lack the necessary foundation, this technology is almost eliminated. Basic courses, such as data structures and operating system principles, cannot immediately implement a Linux (this is why many people laugh at the useless theoretical courses ), however, they can significantly reduce the learning curve slope when you are learning new technologies. Moreover, many key technologies (such as Win32 SDK program design and DDK programming) are even indispensable.

A living example is that one of my colleagues and I can't find the power-on button when I was a freshman. He has already written some simple assembler programs. I spent all my time on the course of assembly, computer architecture, data structure, operating system principles, and so on. He started to learn HTML and VB, and catch up with ASP. In my junior year, I started to learn about the operating system principles of windows and how to program using sdks. It took a long time to develop visual applications with VC. Once upon graduation, I was annoyed that my program was able to run and I was still learning how to create a dialog box. The company I negotiated with offered more than twice his salary. The following is an inappropriate example: Suppose it takes four months to study vbprogramming, and it takes one year to study basic courses and VC programming. So if you want to learn VB first and then learn the latter, the time will not be reduced, or one year. In turn, if you want to learn the latter first, then you will learn VB, maybe you only need one week to learn very well.

Several important basic courses:

If you are a student or if you have enough time. I suggest you carefully master the following knowledge. My suggestion is:

For beginners who want to make achievements in IT technology. At the same time, I also listed some bibliography which should be

You can buy it in a bookstore. To be honest, I'm reading other people'sArticleThe biggest wish is to let the author list a book.

Single.

College English-don't be funny. I strongly recommend this course because I cannot read professional documents.

. The Chinese translation is often only available in the Year of the Monkey, and many publishers now simply print e-text directly.

Go. The learning method is to force yourself to read the original teaching materials. At first, you will not be able to understand them. Have a hard time

It is absolutely the quality required by any industry.

Computer Architecture and assembly language-books on the architecture are everywhere, and they are similar.

A very good book. 80x86 Assembly Language Programming Tutorial (Tsinghua University Press, black cover, Yang Ji-Wen

). You need to focus on the programming of the 386 post protection mode. Otherwise, you are learning some of the underlying features of the modern operating system.

When reading things, you may think you are reading tianshu.

Computer Operating System Principle-our development is always performed on a specific operating system. If not, there is only one

Yes: You can implement an operating system on your own. In any case, the operating system principle must be read. This is like

The basic operating sequence of the chip must be understood when the chip is used to create peripheral devices. There are also a lot of books in this category, I have not found

Which book is outstanding. I just thought that if I have read these books, I should check "Inside windows 2" if I have time.

000 (Microsoft press, I am reading the e-version. The Chinese name must be the inside story of Windows 2000 technology.

). Another article on zdnet has discussed the necessity of learning it.

Data structures and algorithms-this course determines the level of a person's program design and is a core course. My first

I chose the Tsinghua edition (Zhu zhanli, Liu Tianshi ). Many people like to buy C ++, but I don't think it is necessary. C ++

The syntax makes the algorithm implementation process much more complicated, and many teachers prefer to use modules to make the algorithm more complex.

. It is best to browse the C ++ version after learning the C version.

Software Engineering-the more important this course will become, the more important it will be. Although it was just like watching Ma Zhe at the beginning

Cloud. My suggestion is to read "Practical Software Engineering" (yellow, Tsinghua ). Don't take too much time to remember

, Jump over if you don't understand it. After you complete a software design task (whether it is practice or work ),

To review and review.

Windows Programming-by Petzold, Peking University Press I suggest any attempt to design Windows programs

People carefully finish learning VC before learning it. In addition, it is best to put the previous "Inside Windows 2000" here.

The end of the book. In this book, there is no C ++, no GUI, and no controls. Some are how to use the original C Language

Complete the windows program design. After learning it, you will find that VC is easy to learn. Never

If you haven't read this book before, learn Vc in advance. You 'd better not touch it. Many famous schools I know have even used it.

As teaching materials. It is important.

I think the above courses are essential (if you want to be a Windows programmer ).

There is a simple way to choose other courses: if you are in the computer department, please learn all your professional Basics

Course. If not, refer to the curriculum of the computer system. If you find that you cannot read a book, please

Go to the end of the book, read its references, find them, learn them, and then look back at the book. If a book

The title contains the word "principle". You must not remember its details. You should take at least 50 pages a day.

Speed to master the essentials. Practice a theory or algorithm on a computer as much as possible.

You can also read many book reviews on csdn. These book reviews help you decide what kind of books to read.

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.