How to become a good programmer

Source: Internet
Author: User
[From: CCID]
China's information technology is developing rapidly, and the wave it brings has penetrated into every corner of people's lives. Program Members have become one of the witnesses of this wave of information technology, and are also the main participants. This is the opportunity and responsibility given to every programmer by the times.
The update speed of information technology is amazing. A programmer's career is a process that requires constant learning. How can he become a qualified programmer, what skills does a qualified programmer need to master?

Proficient in development tools

As a programmer, he is at least familiar with the use of two or three development tools, which is the foundation of the programmer. C/C ++ and Java are the key recommended development tools, c/C ++ has become a tool in development tools with high efficiency and flexibility. Many system-level software is still written in C/C. Java's good combination of cross-platform and web is the advantage of Java, and Java, its related technology set, Java One, may become one of the mainstream development tools in the future. Secondly, it is better to master a simple visual development tool, such as VB, PowerBuilder, Delphi, and C builder, which reduces the development difficulty, it can also enhance the concept of the programmer object model. In addition, you must master basic scripting languages, such as shell and Perl, to be able to understand these scripts at least.Code.

Familiar with databases

Why is database so important? As programmers, they naturally have their own reasons: Many application procedures are centered on database data, and there are also many database products, among which relational databases are still mainstream, therefore, programmers must be familiar with at least one or two types of databases, have a clear understanding of the key elements of relational databases, and master the basic syntax of SQL. Although many database products provide visual database management tools, SQL is the foundation and a common database operation method. If you do not have the opportunity to access the database system of the business, you can use free database products, such as MySQL and S.

Have a certain understanding of the Operating System

Currently, the mainstream operating systems are windows, Linux/Unix. It is necessary to use these operating systems skillfully, but these are far from enough. To become a true programmer, you need to have a deep understanding of the operating system, its memory management mechanism, process/thread scheduling, signals, kernel objects, system calls, and protocol stack implementation. Linux, as an operating system for source code development, is a good learning platform. Linux has almost all the features of modern operating systems. Although there is little information about the kernel implementation mechanism of Windows systems, there is still a lot of information available through the Internet. After you have a certain understanding of the operating system, you will find yourself taking a new step.

Understand the network protocol TCP/IP

Today, when the Internet is so popular, if you do not have a good grasp of the Internet support protocol TCP/IP protocol stack, You need to quickly complete this lesson, the network technology has changed the software operation mode, from the earliest customer/Server structure to today's web services, to the future of grid computing, all of this is inseparable from the network protocol support based on the TCP/IP protocol stack. Therefore, it is necessary to have an in-depth understanding of the TCP/IP protocol. At least, you need to understand the ISO layer-7 protocol model, the principles of common protocols such as IP, UDP, TCP, and HTTP, and the three-way handshake mechanism.

Understand the significance of DCOM/CORBA/XML/Web Services

With the development of technology, the seamless integration of software and network is an inevitable trend. The location independence of software systems is one of the important features of the future computing model, DCOM/CORBA is currently two mainstream distributed computing intermediate platforms. DCOM is an extension of Microsoft COM (Component Object Model), while CORBA is a standard supported by OMG. What programmers need to do is not just to use commercial development platforms to develop software, but to understand the original intention of these technologies, that is, why the technology is needed. If you can understand this, let's look back at the specific implementation of these technologies, just like ding Jie Niu. XML/WebServices are important. XML is hailed as a "World Language" on the Internet based on its structured representation and powerful expression capabilities. It is one of the cornerstones of distributed computing.

Do not separate software engineering from CMM

In the development of modern large-scale software systems, engineering development control replaces personal heroism and ensures the success of software systems. A programmer is not necessarily a good programmer, A good programmer combines excellent programming skills and development skills with strict software engineering ideas. Programming is only one part of the software life cycle, excellent programmers should master the basic skills in various stages of software development, such as market analysis, feasibility analysis, demand analysis, structural design, detailed design, and software testing. One sentence can summarize my opinion: "unlimited creativity, process assurance ".

Have strong curiosity

What is a programmer's NLP weapon? It is a strong curiosity and learning spirit. There is no better weapon than strong curiosity and learning spirit. It is the source and motivation for programmers to climb the peak forever.

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.