Saturday, January 6

Development of the programing method I know of

1, asp/sqlserver -> .net, ruby on rail, hibernate

2, Requirement/system design -> eXtreme Programing

3, hardware development enables this trend, object-oriented, dynamic loading, multi-task


------------------
I am proficient in using classic ASP to build dynamic websites. After retrieving data from database, every bit of data is "Response.Write" to the output. The output must be a valid and beautiful HTML file for visitors to read. So an ASP programmer must know HTML language to create a website.
XML/XSLT is one method to separate the programing part and the representation part of the website. The ASP program can create a XML file which has pure data, and when the visitor access this XML file, the attached XSLT file will decorate the data to make it readable. This "decoration process" can happen in Server side or Client side. Using this method, the graphic designer of the company can focus on making website beautiful, while the programmer can focus on retrieving the data according to business logic. The latter doesn't even need to know anything about HTML.
Now, when we use .NET technique, the .NET server will take care of the representation. The programmer can focus on deploying controls (button, input text, drop list...) and processing data. It gives more freedom to programmers, helps them to concentrate their effort on data process, which is the main purpose of a website.
Ruby on Trail is a tool which controls database and web server at the same time. By using it, the programmer can create a website by clicking and typing short codes. The according entry in the database of website can be created according to the need of the website.
Struts and Hibernate are tools in Java Servlet. I think they have the similar function with the previous two tools.

The idea is: When we encountered problem when developing classic ASP website, we work on the problem, simplify the design and development. In that way, building website is no longer difficult.

It is not that simple. We have to pay the price. The hardware have to be strong enough to support these new designs. When the programming language is changed from functional language to Object Oriented language, the application runs much slower. When we deploy multi-thread application, the CPU is shared by different threads. Some CPU time is used for overhead and communication between threads. OO and multi-thread programming can make the code readable and maintainable, and the price is that the program is slower. Thank God that we have Moore's Law which defines the pace of hardware development while cutting the cost of new hardware. 10 years ago, when we use 486, it has the same computing power as the computer which is used to send Apolo to the Moon back to 1960s. Now, the home PC is much faster than a 486, while the price is lower.

Labels: ,