Web| Program | programmers | Programmers can be divided into many types, such as UNIX programmers, Windows programmers, or C + + programmers, Delphi programmers, and so on. Today I want to talk about is the web programmer, I feel the current situation is like this, in general, do not look down on UNIX to do Windows, do C + + look down on VB or Delphi (and the two have some mutual contempt), as if the web is the most miserable, at the bottom of the food chain Of course, this situation to 2001 years and a little change, that is to understand the Java cow, a talk about XXX understand Java, JSP, we can not help but some admiration.
I think this is not a normal situation, of course, I admit that the UNIX and C + + people because of long-term exposure to the underlying programming, the operating system is more clear than other people. However, to do the bottom of the development of the company is a minority, most Chinese companies are doing application development, need to be familiar with all aspects of technology comprehensive talent. Technology, the key is to solve the problem, is to be practical, not to show off, after all, a technology Pauta make impossible.
For example, Microsoft Consultants, do not know Unix, Java, but they must be experts in the field of Windows, Microsoft's product line is very long, there are operating systems, databases, various enterprise-Class Server and so on, need to develop these things, coupled with in-depth research to be able to do; IBM experts, not necessarily familiar with VB, VC.
It's a little far away, I'm very uneven about the status of web developers, and I think the first thing to figure out is: What is Web development? Perhaps some friends will say, I know ASP, JSP, will do the website, will do BBS, this should be called a Web programmer. Indeed, I admit that these technologies are what a Web programmer should have, but if you only know these things, you can only be called ASP programmers, JSP programmers, not really web programmers. Now the world is the Internet, most of the application based on the Internet, you can think, like Yahoo, Microsoft, Amazon, such as the site, its access volume, the application of complex, what kind of technology can be supported, is it just hardware credit?
I want to come down to the Windows platform and talk about the technologies that Web programmers should master
1. First of all, the above mentioned a variety of scripts, ASP, JSP, PHP and so on, these things are similar, basic can extrapolate.
2. The database,
People who believe in the web must have used it, like access, SQL Server, Oracle. Many people will use a variety of databases, but only to write some sql,select, update, insert, with ADO to operate, if so, even if the use of 100 kinds of database what is the use?
You should consider user volume, access speed, memory consumption, these things are closely related to your SQL, I often see many paging program does not consider how many data in the database, all select out, it is obvious that when you find 10,000 data from the database and 100 data, the memory is different.
In addition, database connection pool and transaction mechanism is very important, you should know what the database to ensure the transaction, connection pool implementation, these are the key to business applications. For example, many of the current application services, such as WebLogic, MTS, all contain transactions, can be agreed to deal with the transaction determines their competitiveness.
3. Component Technology
I think the current Web application is driving the development of component technology. Previously, from old-fashioned static libraries, dynamic libraries (DLLs), to current com/dcom, to the emerging web Service, from stand-alone calls to distributed calls based on intranets, to now distributed computing based on the Internet. Today's applications are based on the N-tier structure of components, most notably COM and javabean.
These things reflect the development of software architecture, formerly based on stand-alone applications, and then the C/s structure, to the current B/s structure. I remember Levi once said that programmers must pay attention to the development trend of software technology, only in this way, can not be submerged in the torrent of technology. I think as a web programmer, it is important to understand the principle of COM, how to implement this call, how to make a distributed call. To tell you the truth, I think that COM is still more complex, or why Microsoft to provide ATL and VB, to understand, should learn C + +, because VC provided in the ATL library can be very clear description of the internal operating mechanism of COM.
4. Network Technology
This can be said to be the most web programmer should understand things. At the very least, you should know the web's mechanism, especially the HTTP protocol, the characteristics of the protocol, the commands it contains, how the client sends the command, how the server receives it, and how it communicates in the middle. Take IIS to understand the role of ISAPI in understanding the process security of Web applications running and the relationship between IIS.
If you have time, look at the TCP/IP, look at the Winsock, these are the bottom of the network things.
I said these are based on Microsoft technology, other things like Java can be compared to the reference, it is not much to say, this is my several years of experience. In short, art is boundless, whenever you touch something new, you will find your shortcomings, but also feel the importance of basic knowledge. To tell the truth, as we do application development, with other people's things, in this case, new technology in endlessly, a little attention will be abandoned, this is also no way of things.