Web application: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
Line 4: Line 4:
== Definition ==
== Definition ==


{{quotation|In software engineering, a Web application or webapp is an application that is accessed via web over a network such as the Internet or an intranet. ([http://en.wikipedia.org/wiki/Web_application Wikipedia], retrieved 15:44, 15 September 2007 (MEST))}}.
{{quotation|In software engineering, a Web application or webapp is an application that is accessed via web over a network such as the Internet or an intranet. ([http://en.wikipedia.org/wiki/Web_application Wikipedia], retrieved 15:45, 15 September 2007 (MEST))}}.


Web applications are popular due to the ubiquity of web browsers. One can update and maintain Web applications without distributing and installing software on potentially thousands of client computers. Web applications are used to implement [[portalware]] (e.g. [[learning management system]]s), [[rich internet application]]s, [[wiki]]s, Webmail, online retail sales, online auctions, [[Forum]]s, [[Weblog]]s, [[MMORPG]]s and many other.
Web applications are popular due to the ubiquity of web browsers. One can update and maintain Web applications without distributing and installing software on potentially thousands of client computers. Web applications are used to implement [[portalware]] (e.g. [[learning management system]]s), [[rich internet application]]s, [[wiki]]s, Webmail, online retail sales, online auctions, [[Forum]]s, [[Weblog]]s, [[MMORPG]]s and many other.
Line 12: Line 12:
== Software ==
== Software ==


{{quotation|Though many variations are possible, a Web application is commonly structured as a three-tiered application. In its most common form, a Web browser is the first tier, an engine using some dynamic Web content technology (such as ASP, ASP.NET, CGI, ColdFusion, JSP/Java, [[PHP]], Python, or Ruby On Rails) is the middle tier, and a database is the third tier. The Web browser sends requests to the middle tier, which services them by making queries and updates against the database and generates a user interface.}} ([http://en.wikipedia.org/wiki/Web_application Wikipedia], retrieved 15:44, 15 September 2007 (MEST).
{{quotation|Though many variations are possible, a Web application is commonly structured as a three-tiered application. In its most common form, a Web browser is the first tier, an engine using some dynamic Web content technology (such as ASP, ASP.NET, CGI, ColdFusion, JSP/Java, [[PHP]], Python, or Ruby On Rails) is the middle tier, and a database is the third tier. The Web browser sends requests to the middle tier, which services them by making queries and updates against the database and generates a user interface.}} ([http://en.wikipedia.org/wiki/Web_application Wikipedia], retrieved 15:45, 15 September 2007 (MEST).
 
  web client - engine - database


  web client      -    engine      -      database
(user interface)        (logic)          (data storage)
=== Web clients ===
=== Web clients ===



Revision as of 15:45, 15 September 2007

<pageby nominor="false" comments="false"/>

Definition

“In software engineering, a Web application or webapp is an application that is accessed via web over a network such as the Internet or an intranet. (Wikipedia, retrieved 15:45, 15 September 2007 (MEST))”.

Web applications are popular due to the ubiquity of web browsers. One can update and maintain Web applications without distributing and installing software on potentially thousands of client computers. Web applications are used to implement portalware (e.g. learning management systems), rich internet applications, wikis, Webmail, online retail sales, online auctions, Forums, Weblogs, MMORPGs and many other.

See also: web application framework

Software

“Though many variations are possible, a Web application is commonly structured as a three-tiered application. In its most common form, a Web browser is the first tier, an engine using some dynamic Web content technology (such as ASP, ASP.NET, CGI, ColdFusion, JSP/Java, PHP, Python, or Ruby On Rails) is the middle tier, and a database is the third tier. The Web browser sends requests to the middle tier, which services them by making queries and updates against the database and generates a user interface.” (Wikipedia, retrieved 15:45, 15 September 2007 (MEST).

 web client       -     engine      -       database
(user interface)        (logic)           (data storage)

Web clients

There exist different kinds of web clients:

  • Most often, web clients are web browsers and contents are displayed with HTML or XHTML and styled with [[CSS]. Dynamic elements are added trough the use of HTML forms and Javascript.
  • Web browsers support many plugins who often also can directly communicate with a server, e.g. Flash or Java Applets

More recent software evolution allows to create web applications that have a look and feel that is almost indistinguishable from traditional applications. They are known as rich internet applications or web 2.0 applications.

Note: Other software also can connect to the Internet, e.g. Mail clients or computer games, but we wouldn't call these web applications.

Engines, software bundles and web application frameworks

Engines are programmed either directly with scripting languages such as PHP, Python or ASP or by using web application framework that facilitate development and integrate tools (e.g. high-level description languages) for all tiers involved.

In the open source community, the most popular low-level software bundle for the engine and database tier is LAMP / WAMP / MAMP, i.e. an operating system like Linux or Windows, the Apache web server and it integrated scripting engine PHP and finally the MySQL database.

Databases

See database

In education

Web applications are hugely popular in education, in particular to support e-learning through various kinds of portalware, e.g. learning management systems.

Web applications are also used in classroom teaching, e.g. trough wikis, weblogs or web-based microworlds such as WISE. See Technology-enhanced classroom.