Programmers the old driver talked about a good programmer should have 10 good habits

Source: Internet
Author: User

In this world, millions of of people are passionate about software development, they have many names, such as: Software engineer (software Engineer), programmer (Programmer), coder (coder), Developer (Developer). After a period of time, these people may be able to become a good coder, they will be very familiar with how to use computer language to complete their work. However, if you want to be a good programmer, you can also need to have a few things you need to note, if you can make the following 10 items become your habit, then you are really a good programmer.

1. Lifelong Learning. Even if you have more than 10 years of programmer experience, you have to study hard, because you in the computer is full of creative field, every day there are many many new things appear. You need to keep up with the pace of the times. You need to get to know the new programming language, as well as learn about the program languages that are being developed, as well as some programmatic frameworks. You also need to read some of the industry news and go to some of the hottest neighborhoods to participate in online discussions so you can understand and understand the whole trend of software development. At home, some famous community such as: Csdn,itpub,chinauinx, etc., in foreign countries, it is recommended that you often go to a digg.com to see the aggregation of various blogs.

2. Mastering multiple languages . The programming language always has its most suitable domain. When you are faced with a problem that needs to be solved, you need to find the most appropriate language to solve these problems. For example, if you need performance, it may be preferable if you need cross-platform, maybe Java is preferred, if you want to write a developer on the web, then php,asp,ajax,jsp may be your choice if you want to process some text and interact with other applications, maybe Perl , Python will be the best. So, take some time to explore other programming languages that you are familiar with, to broaden your horizons, because you are armed better and you think more comprehensively, which can help you and your project.

3. the rational face of different operating systems or technologies . Programmers always have their own unique technology and operating system, others like Ubuntu, others like Debian, others like Windows, FREEBSD,MACOSX or Solaris, etc. Look at my blog (http://blog.csdn.net/haoel) in the "In fact, Unix is very simple" after the reply you know that programmers in the maintenance of their loyalty to the dedication of love. Only a few good programmers understand the advantages and disadvantages of different operating systems, so that in the system selection, can be truly objective and impartial, and will not let emotions affect themselves. Similarly, the language is the same, too many programmers always like to be entangled in the language of the contrast, such as: Java and Perl. Which of the newly-emerging programmers doesn't argue about similar topics? such as VC + + and Delphi and so on. Arguing about these things can only indicate their superficial and dry. Excellent procedures do not cling to these, but can be rational analysis and careful face, so as to objectively make the right choice.

4. don't frame yourself in a single development environment. again, as mentioned above, each programmer has his own tools and techniques of love, Some like the old (I like VI editing program), and some like the new such as Gedit or Emacs. Some like to use the same as VC + + graphical interface debugger, and I prefer the GDB command line aspect of the tuning device. Wait, wait. Is there less debate among programmers about what tools to use? It's all over the place. It doesn't matter what kind of tool you use, as long as you can achieve your goal better and faster. But one thing that good programmers should know is that they should try other work environments. No comparison, you never know who is good or bad, you never know what you do not know.

5. Use the Version management tool to manage your code. do not tell me you do not know the source version management, if your team developed source code and no version management system, then I would like to tell you that your software development is still in the Stone Age. Quickly use a layout-based management tool. CVS is a seemingly mundane version of the tool, but it is the most widely used version management system, and Subversion is an upgraded version of CVS that is beginning to take over the territory of CVS. Git is also a different version management tool. There are Visual SourceSafe and so on. Depending on the size and geographic distribution of your team, you may be using the most efficient or inefficient tools to manage your source code using what version management tools you use. But a good programmer will always use a source version management tool to manage their own code. If you want me to recommend one, I recommend you use open source subversion.

6. is a good team member. unless you like solo, unless you're a lone hero. But I want to tell you that today, there may not be a mature software you can do by yourself, you may be the most danale in your team, but that doesn't mean you are a good team member. Your ability can only be put into a team. Are you polite in communicating with your team members? Do you often communicate with them, and everyone likes to discuss issues with you? Think about a football team, are you a good member of this team? When someone sees you running on the pitch, when someone sees your pass and catch and steals, can your members be inspired by your movements?

7. Turn your work into a document. This article certainly includes writing comments in the code, but that's just not enough, and you need to do more. Having a good annotated style of code is the basis of a document, and he can make it easy for you and your team to understand your intentions and ideas. Writing the document, not only afraid we forget the idea at the time, but also a team of offline communication method, is a way of knowledge transfer. It's a good habit to keep track of everything you know. Because, I believe you don't want people to always interrupt you when you're busiest, or you get a phone call from the company to ask questions when you're on vacation. And if you're always keeping your stuff, it's only possible that you're stuck in this thing for a long time, and you're not going to do more things. Includes upward promotion. You may think that "Church disciples can starve master", but I tell you that your conservatism will make you lose more and better things, please believe me, I am not here sensational.

8. pay attention to backup and security. Maybe you think it's a "crap" that you've understood the importance of backup. However, I would like to suggest here that the loss of something is part of our life and that you will always lose something that you can never avoid. For example: Your laptop has been stolen, your hard drive is damaged, your computer virus, your system was invaded, even the whole building was burned, and so on, and so on. So, do a good job of backup is very important thing, hard disk is not credible, so regular burning disc or tape may be a good way, the network is not trustworthy, so beware of viruses and hackers, not only use software security policy, you need a sound management system. Also, try to keep your data in a different place and do a regular (daily, weekly, monthly) backup strategy.

9. design should be flexible enough. Perhaps your needs will only require you to achieve a dead thing, but, as a good program, you should always be thinking about whether this dead thing can have a flexible side, such as to change some parameters can be configured, and some common things to form your library for later reuse, Do you provide plug-in functionality? Do your modules have to be assembled at random like bricks? If there is any change, will your design be able to deal with it immediately? Of course, a flexible design may not be a way to reinvent the wheel, you should use standardized things as much as possible. The design of the so-called spiritual word is to allow for the consideration of more than the needs of things, the needs of this kind of problems are taken into account, and not only to deal with the requirements of the specific thing. For example, if you need a screen resolution of 800x600, can your design be flexible to other resolutions? Programming always requires us to deal with different environments and trends in the future. We need to think about things in a dynamic way, not Kezhouqiujian. Maybe one day, the program you write today is going to be transplanted into another environment, and then you can really understand what a flexible design is.

don't foot. programmers always have a bad habit, that is, always want to quickly finish their work on the hand. But the situation is often a matter of the contrary. The more you want to do faster, the more prone to problems, the more you want to do faster, the more easily miss the problem, in the end, the program changed to change the past, press the gourd up the ladle, the last time and energy instead of more. To speed and not to reach. The habit of good programmers is to spend more time in front of a few more surveys, experimenting with different solutions, if time permits, a good habit is, every 4 hours of programming, takes one hours of rest, and then another 4 hours of coding. Of course, this is different, but the goal is to let you look back and let you think about this three questions: 1) Is it right to do so? 2) Does this take into account all the circumstances? 3) Is there a better way? Think well again, often look back to walk through the road, often summed up the past, will be a great help to you.

The above is the habit or code of conduct of 10 excellent programmers, I hope it can help you.

This article originates from online Phil's blog, but I used my own language and methods in the writing process to re-describe the 10, so I hope you can mention the author and source in the reprint to show respect for me. Thank you!

SOURCE Cool Shell –coolshell

Chen Hao

Related reading:SUN's BLOG

Programmers the old driver talked about a good programmer should have 10 good habits

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.