Entering the programmer Field

Source: Internet
Author: User
Enter the programmer field-general Linux technology-Linux programming and kernel information. The following is a detailed description. For a while, many people are interested in programming. I have received some emails from readers of Sleepless in Java columns. Many readers share the following issues: how to enter the field of programming? So I chose this topic as the first article in The Sleepless in Java column "journal.

Writing a program is very interesting. You can put your own ideas into practice. The tool for writing a program is very simple. As long as there is a PC and an appropriate development environment, you can get started. Such limited tools can create infinite possibilities, which is also a fascinating place in programming. As long as you are competent, you can write your ideas into a program and turn them into a set of software.

It is not a good idea to develop program capabilities. I would like to provide some of my suggestions below. I hope you will be helpful in the field of programming.

Cultivate interest
Taking program design as an interest can make you learn more happily, and the learning effect will naturally be better. When I went to an enterprise interview, the supervisor read my resume and asked me, "How have you had so much time to learn so many things and do so many things ?」 My answer is: "by combining work, study, and entertainment, the time will be three times that of others .」

I admit that I am lucky to regard program design as a profitable job, a subject matter of study, and leisure activities after meals. Not everyone is as lucky as I am, but I believe at least everyone can take it as an interest. Believe me, adjust your mood, and treat it as interest, rather than a chore. You do not discover that your "program skill" is growing.

Select the language with caution
It is important to select a language with caution. It is easy to give up a language that is too difficult to learn at the beginning. You can start with an easy and interesting language. We recommend that you select one of the following languages:

VB: simple, easy to use, and many books.
Java: A little harder than VB, simpler than C/C ++, more books, a wide range of uses, and a promising future. It can be used as a stepping stone for learning C ++. Python: simple and easy to use. Supported by various platforms (including Windows, Linux, MacOS, BeOS ,...). It is very popular outside China, and few people use it in China. There are quite a few original books, but there is only one Chinese book (published by OLE ). I expect Python to be the next popular programming language.

These three languages are just my suggestions. You can also listen to others' opinions. After selecting a program language, you must stick to it. You cannot give up quickly, but you can change to another program language. Otherwise, you will always be familiar with it. The saying goes: "A jack of all trades is master of none 」. If you call it C ++, Java ,... Ten programming languages, but each language stays at the Say Hello stage. I believe the interview supervisor will soon Say Goodbye to you.

When you want to learn another language, you will find that you have a solid foundation of the previous language and can learn any new language quickly.

Use appropriate development tools
Nowadays, RAD tool software is prevalent. Visual Basic, Delphi, JBuilder, VisualAge, and Visual cafe are all popular. With the RAD tool, you only need to "pull one, select one" and the program will be half done. Many programmers disagree with each other and think that it is not a good habit for beginners to use RAD tools, but I do not think so. In my opinion, RAD can lower the learning threshold for beginners and increase their interest. However, after you learn the simple steps of "pull one, select one", you should find opportunities to concentrate on yourself and understand internal mechanisms, otherwise, not only will there be a sense of sureness, but many programs may not be written. I stress again: RAD can be a beginner's entry tool, but be careful not to make it an excuse for your stagnation.

You must also learn to use the functions attached to the development tool (especially the debugging function ). Many people buy expensive Enterprise development tools, but only use the copy-paste function, so this development tool is no different from the notepad attached to Windows. It is recommended that you take some time to flip the User Guide before using a new development tool.

Currently, many development tools are available in the free version, which can be used by beginners.

Read more books and take less lessons
Reading a large number of good books is a best practice. In this fast-food age, many people prefer to go to class everywhere instead of having no patience in reading books. Therefore, computer classes are everywhere. If you encounter a very good teacher, of course you will gain a lot from his or her lessons, but at present, the ratio of good teachers is really not high (although I am also teaching Java/Enterprise Java/Java Swing, I still have to say so ). I once saw someone on the internet saying, "I have never heard of any program experts in cram schools." This is also true. However, on the one hand, the teacher should be blamed, and on the other hand, the students should be blamed, because I found that the percentage of students who normally attend classes at home reading and writing program exercises is not high.

Compared with the high cost of tens of thousands of yuan in class, it is much more cost-effective to buy books only by hundreds of thousands. What's more, the content in the book is much more detailed than that in class. However, "It is easy to buy books and difficult to read books 」. If you are afraid of being lazy, you can join a like-minded friend to organize a "Reading Club" to encourage each other and learn from each other. It is best to turn it into interest, as I mentioned earlier.

Enhance English Reading Ability
Strengthening English has nothing to do with Chongyang, but has practical value. Many of the information is to be viewed in English, because there is no Chinese version.

「 My English is terrible !」

This is not a reason. You can read English without having to get down, and you will be able to read. Give yourself a chance to find a book with simple single-word grammar and few pages. Soon, you will find out which of the following are repeated technical books, reading such a book is not difficult at all.

Note: The Writing Style of the original book is quite different. Some books are really hard to read. Therefore, if you are trying to read The original book at The beginning, do not pick difficult books such as The C ++ Programming Language written by Bjarne Stroustrup ...... Although it is classic.

Ask yourself before asking
If you have any questions, you can go to the Program Design Discussion area at home and abroad to consult with others. If you are humble and have a clear description of the questions, I believe many experienced Predecessors will be happy to participate in the discussion. However, it is not a good thing to ask questions when you encounter problems, because you will become more and more dependent on others and lose the ability to solve problems on your own. You should try to check books, Write Program tests, or even read the original code to find out the answer. In this way, we can discuss it in depth only when we have no way to consult other people.

Multi-Write Program
Learning Program design can not only read books, will be followed by the book CD program once, think you have learned. You should start to write some programs from small to large, from simple to complex. Finding interesting questions (for example, calculators, mines, painters, and Tetris) can improve the motivation for writing programs.

I have seen that many of my freshman students copy their homework and have lost the opportunity to practice. After the second year, I can't write the program. In the preliminary programming stage, you should give yourself more opportunities to write programs.

Up, down, and down
After you find that you have mastered the language, you can choose:

Upward extension: Learning Object Oriented Analysis Design, Design Patterns, and software engineering. Give yourself the ability to make large plans.

Deep Dive: provides an in-depth understanding of the underlying internal mechanisms, such as the operating system (or even hardware.

Extend to: Learn different APIs, such as multimedia, databases, and enterprise computing ....

In addition, data structures, algorithms, and other foundations are also important.

Conclusion
One point of work, one point of harvest, the use of the method, perseverance. Review your progress over this period every six months. I believe you are happy to say "I have done it 」!
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.