Web-based applications – A practical computer science offer in term 5

The world wide web (shortly www or web) comprises of websites decentralized provided by webservers that can be interlinked by hyperlinks, activated with the help of the internet and displayed to the users in webbrowsers. In everyday life, it is often wrongly assumed that www and internet are the same thing. Still, the www is younger than the internet and only one of the services provided by the internet (another popular services is email).

From its origins in the late 1990s, the web took a rapid development. It was originally invented by Tim Berners-Lee and Robert Cailliau at the European research center CERN in Genf. The www is mainly based on HTML (HyperText Markup Language) for describing websites and HTTP (HyperText Transfer Protocol) for transferring the websites from a webserver to a webbrowser (e.g. Google Chrome or Mozilla Firefox).

Initially, websites retrieved only statistic information. At the turn of the millennium when e-commerce arose, more and more dynamic websites were used, a part of which being only generated at the time of query, for instance for presenting latest information. The further development resulted into JavaScript and AJAX that allow to implement dynamic web applications and which replace conventional desktop applications in many cases. One example for this is Microsoft Office 365 that offers functionalities similar to those of Microsoft Office and is completely operated in a webbrowser. Another relatively new trend is the development of web application for mobile devices, such as smartphones and tablets.

The lectures and related tutorials give an insight into the operating principles of www, deal with the architecture of web-based applications and consider webbrowser and webserver technologies needed for implementing dynamic websites. For instance, HTTP and HTML 5, Java Servlets, Java Server Pages and Java Server Faces, CGI and PHP as well as JavaScript, AJAX and WebSockets are an issue. The discussed content is deepened by conceptional exercises and implementation examples. After attending the course, the participants shall be able to implement simple web applications and use the individually suitable technologies.