ASP, PHP, ASP, JSP Introduction and comparison of advantages and disadvantages

Source: Internet
Author: User

now the mainstream web development language has no outside of ASP, PHP, ASP, JSP and so on.

Web page from the beginning of simple HMTL to complex service language, through more than 10 years, a variety of technologies, a single mainstream technology is also in the constantly refurbished version, now analysis of the differences in various languages, advantages, disadvantages, development considerations!

HTML: Of course, this is the most basic language of the Web, each server language needs its support, to learn, this is definitely the beginning, do not say.

The asp:asp of the mainstream website development language is a background scripting language developed by Microsoft (Microsoft), which is similar in syntax to Visual Basic, and can embed background scripting code into HTML pages like SSI (Server Side Include). Although the ASP is easy to use, but it has many flaws in itself, the most important is security issues. Currently in Microsoft's. NET strategy, the newly launched ASP, using the advantages of Java technology, uses the C sharp (C #) language as the recommended language for ASP, while improving the security of the previous ASP disadvantages. However, the use of asp/ still has some limitations, because in some ways they can only run well on Microsoft's Windows NT/2000/XP + IIS server platform (although like Chillisoft provides the unix/ Linux running ASP solution, but the current ASP on the Unix/linux application can be said to almost 0). So the limitation of the Platform and the security of ASP itself restrict the wide application of ASP.
When ASP executes, it is called by IIS to execute the ASP code embedded in HTML, and the result is sent to the client together with the original HTML.

The full name of the php:php of the mainstream website development language is very interesting, it is a nested abbreviated name-"Php:hypertext preprocessor", open abbreviation or abbreviation. PHP is an HTML-embedded language (as in the above-mentioned ASP). PHP's unique syntax mixes the new syntax of C,java,perl and PHP. It can execute Dynamic Web pages more quickly than CGI or Perl. The source code of the
PHP is completely public, and it is the mainstay of the open source consciousness today. New libraries are constantly being added, and they are constantly being updated, allowing PHP to have more functionality on UNIX or WIN32 platforms. It provides a wealth of functions that make programming more resource-rich. Currently the latest version of PHP is 4.1.1, which works well on almost all platforms such as Win32 and Unix/linux. PHP used the new Zend engine after the 4.0 release, and its efficiency after the optimization, compared to traditional CGI or ASP and other technologies have a better performance.
Platform independence is the biggest advantage of PHP, but behind the advantages, there are some small shortcomings. If you do not use ODBC in PHP, and use its own database functions (this is more efficient than using ODBC) to connect to the database, using a different database, PHP function name can not be unified. This makes porting the program a bit cumbersome. However, as one of the most widely used background languages, PHP has the advantage of being unusually obvious. is a part of Microsoft.NET as a strategic product, not just the next version of Active Server Page (ASP); It also provides a unified Web development model that includes developers who build enterprise-class web The various services required by the application. The syntax of ASP is largely compatible with ASP, and it also provides a new programming model and structure to generate more scalable and stable applications, and provides better security protection. You can enhance the functionality of your ASP application at any time by gradually adding ASP. NET functionality to existing ASP applications. The ASP. NET is a compiled,. C-based environment that can be used in any. NET-compatible language, including Visual Basic. NET, # #, and JScript. NET.) Authoring applications. In addition, the entire. NET Framework can be used by any ASP. Developers can easily get the benefits of these technologies, including managed common language runtime environments, type safety, inheritance, and so on. ASP. NET can be seamlessly associated with WYSIWYG HTML editors and other programming tools, including Microsoft Visual Studio. NET) to work together. This not only makes WEB development more convenient, but it also provides all the benefits that these tools must provide, including the GUI and fully integrated debugging support that developers can use to drag and drop server controls onto Web pages. Microsoft has designed these strategies for asp: Easy to write code with clear structure, easy reuse and sharing of code, compile-language authoring, and so on, to make it easier for programmers to develop Web applications that meet the strategic need for computing to Web transfer.

Mainstream website development language jsp:jsp and Servlets are to be put together because they are part of Sun's EE (Java 2 platform Enterprise Edition) application system.
The servlet has the same form as the previous CGI, which is separate from the HTML code and the background program. They also have the same starting principle, which is when the server receives a request from the client and responds. The difference is that CGI opens a process for each client request, while the servlet is loaded in response to the first request, and once the servlet is loaded, it is in the executed state. For subsequent requests from other users, it does not open the process, but instead opens a thread that sends the results to the customer. Because the resources can be shared between threads and threads by generating their own parent thread, this reduces the burden on the server, so the Java servlet can be used for large-scale application services.
Although the formal JSP and ASP or PHP look very similar-can be embedded in the HTML code. However, it is executed in a completely different way from ASP or PHP. When the JSP is executed, the JSP file is converted to the servlet code by the JSP interpreter (JSP Parser), and the servlet code is compiled by the Java compiler into a. Class byte file, which is answered by the generated servlet to the client. Therefore, JSP can be seen as a servlet scripting language (script Language) version.
Since Jsp/servlet are all Java-based, they also have the greatest advantage of the Java language-platform-agnostic, called "Write once, run Anywhere" (Wora–write Once, run anywhere). In addition to this advantage, the efficiency and safety of Jsp/servlet are also quite alarming. Therefore, although the current application of Jsp/servlet in China is not extensive, but its future is limitless.
When debugging JSP code, if the program fails, the JSP server returns an error message and displays it in the browser. At this point, since the JSP is converted into a servlet before running, so the code displayed in the browser error line number is not the JSP source code line number, but refers to the converted Servlet program code line number. This poses some difficulties for debugging code. Therefore, when you troubleshoot errors, you can take a segmented exclusion method (some strings are printed before and after the code that might be faulted, the string is output to determine where the snippet begins to go wrong), and the range of the error snippet is narrowed down to determine the location of the error code.

The cgi:cgi of the mainstream web development language is the abbreviation for the Public Gateway Interface (Common Gateway Interface). It is the first background technology used to build dynamic websites. This technology can be used in a variety of languages to write background programs, such as C,c++,java,pascal, but the most widely used in CGI is the Perl language. Therefore, the narrow sense of the CGI program generally refers to the Perl program, the general CGI program suffix is. pl or. cgi.
When the CGI program is running, the client first sends a request to the CGI program on the server, and when the server receives the client's request, a new process is opened to execute the CGI program to process the client's request. The CGI program finally passes the results of the Execution (HTML page code) back to the customer.
Because the CGI program will open a new process every time a client responds, the server will open multiple processes when multiple users are simultaneously making CGI requests, thus increasing the burden on the server and making the server more inefficient. This is the reason why CGI applications are becoming less popular on the internet in recent years, with the advent of new background technologies. CGI mode is not suitable for applications with large traffic.

Today, the mainstream Web server software is primarily made up of IIS or Apache. IIS supports ASP and only runs under the Windows platform, Apache supports php,cgi,jsp and can run on many platforms, although Apache is the world's top-ranked Web server platform, but it is well known that Windows is famous for its ease of use. And therefore occupy a lot of server market.

Our common development portfolio:

In the IIS environment
Apache Environment

It can be said that ASP is really out of date, in the future JSP and ASP will have great potential, but PHP with its open source features will also occupy a certain share.

VB generally refers to vb6.0, is the traditional Win32 programming. and ASP. NET are language based on the Microsoft. Say Java is good mainly because Java EE part do enterprise-level development is very strong, and cross-platform. C # is the best language on the. NET platform and can now only run on Windows systems. The competition for web development. NET and Java EE is fierce and hard to winner. Now do most of the site is ASP. NET or JSP, ASP. Easy to get started, more popular, but a single platform, JSP although difficult to get started, but cross-platform, high security.

Here's a comparison of the advantages and disadvantages of ASP, ASP, JSP, and PHP:

ASP Advantages:
1. No compilation required
2. Easy to build
3. Browser-Independent
4. Object-oriented
5. Compatible with any ActiveX scripting language
6. Source code does not leak out

1, all the problems of Windows itself will be added to its body. Security, stability, and cross-platform are all manifested by the bundle with NT.
2, ASP because of the use of COM components so it will become very powerful, but such a strong due to the initial design problems of Windows NT system can cause a lot of security problems. As long as there is no notice in such a component or operation, the external attack can achieve a fairly high level of access to the site or data loss.
3, because ASP or a script language is not in addition to a large number of use of components, there is no way to improve its efficiency. It has to face the time test of Instant Yi, and we don't know what the components behind it are going to be.
4. It is not possible to implement cross-OS applications. Of course, this is one of Microsoft's reasons, only in this way to play the best of ASP's ability. But I think it is windows that restricts the concept of asp,asp. This is designed for a system that can operate in a large and diverse environment.
5, still can not fully realize some enterprise-level functions: Complete cluster, load is horizontal.

Asp. NET Benefits:
1. Simplicity of design and implementation.
2. The language is flexible and supports complex object-oriented features.
3. Development environment.

1. The connection to the database is complex.

JSP Advantages:
1, one place to write anywhere running.
2, the system of multiple flat support.
3, the strong scalability.
4, diversified and powerful development tools support.

1, as with ASP, Java has some of the advantages of its deadly problem lies.
2, lack of systematic information.
3. Ultra-Slow speed

PHP Benefits:
1. A development language capable of fast learning, cross-platform and good database interaction.
2, simple and light, easy to learn and easy to use.
3. Integrate with Apache and other extension libraries.
4, good security.

1, the database support a great change.
2, not suitable for large-scale e-commerce sites
3, installation complex.
4, lack of formal business support.
5, can not realize the development of commercialization applications.

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: 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.