Presentation is loading. Please wait.

Presentation is loading. Please wait.

/ department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems.

Similar presentations


Presentation on theme: "/ department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems."— Presentation transcript:

1 http://wwwis.win.tue.nl/ / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e webserver programming ICT voor O&O cursus 515 2,3,9 mar 2005

2 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e day 1 general introduction what is the web? what do we mean by webserver programming? when to use it? what does it look like? first introduction to Java servlets

3 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e the course is only a first introduction! “you know Java” “you know HTML” we assume limited experience with them

4 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e we will not teach you: Frontpage, Dreamweaver, etc. website layout management (off-topic) website content management computer programming Java ASP,.NET, PHP, etc. (not used with Java) specific Java technology such as JINI, JAXL, JDBC, J… (too advanced)

5 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e web technology What is the web made of? What does web interaction do? What do we need server-side programming for? What does a webserver do? How does it fit into the webserver?

6 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is the web made of? consider a user interacting with a webpagea webpage what technology does it take?

7 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is the web made of?

8 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is the web made of?

9 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what does web interaction do?

10 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e quiz time! what does http://www.win.tue.nl/ictoo/ mean?http://www.win.tue.nl/ictoo/ what happens when a user clicks on a link to it? what does http://wwwis.win.tue.nl/~rpost/webprog/cgi/tictactoe.cgi?move=5 http://wwwis.win.tue.nl/~rpost/webprog/cgi/tictactoe.cgi?move=5 mean? why are URLs a good idea?

11 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e web technology x What is the web made of? x What does web interaction do? What do we need server-side programming for? What does a webserver do? How does it fit into the webserver?

12 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? to create applications! example: http://wwwis.win.tue.nl/~rpost/webprog/cgi/tictactoe.cgi

13 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? example: tic-tac-toe (2) We can play tic-tac-toe with HTML files. Limitations?

14 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? example: tic-tac-toe (3) We can play tic-tac-toe with HTML files. Limitations: every response is fixed we can’t save the score on the server too many HTML files changing the layout is a tedious job changing the machine’s strategy is hard communication between players: ?

15 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? example: tic-tac-toe (4) With a server-side program to generate the pages, all limitations disappear: a response can depend on anything we can save the score on the server and show it no more duplication of HTML changing the layout is a one-time operation changing the machine’s strategy is easy users can play/chat/… via the application

16 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? conclusion: server-side programming supports generic layout generic functionality (“generic”: for all webpages at once)

17 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? do people create tic-tac-toe games in HTML? yes, many websites are! e.g. http://www.win.tue.nl/index.html http://www.win.tue.nl/index.html we will return to this examplereturn to this example

18 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e server-side web applications vs … client-side web applications example: the Pacman applet by Benny ChowPacman written in Java (source code is available) this is a Java applet (client-side web app), not a Java servlet (server-side web app) (this course is about server-side web apps)

19 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e server-side web applications vs. … client-side web applications: (e.g. Pacman):Pacman can have a much more powerful user interface require special web browser capabilities (plugins) must be written to run in user’s web browser standalone (non-web) applications: even more powerful must be downloaded and installed on the user’s OS must be written to run on the user’s OS

20 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e server-side web applications limited interaction in user interface software + content + gathered data reside on server factors determining whether to use server-side web application: security, availability, reliability, portability, maintainability, manageability, UI flexibility, …

21 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e web technology x What is the web made of? x What does web interaction do? / What do we need server-side programming for? What does a webserver do? How does it fit into the webserver?

22 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? example: www.win.tue.nl (2)www.win.tue.nl http://www.win.tue.nl/index.html consists of HTML pages + imageshttp://www.win.tue.nl/index.html layout, images, buttons designed in Photoshop Photoshop first prototype made in FrontPageFrontPage alternative with server-side programming: http://www.win.tue.nl/ http://www.win.tue.nl/

23 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? example: www.win.tue.nl (3)www.win.tue.nl problems: maintaining consistency in look & feel (not all Photoshop layouts and images can be used on the web) not everybody uses FrontPage some parts of the site are already generated with software; FrontPage doesn’t support that how to convert existing pages? virtually impossible to change the look and feel while the site is up and running

24 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? example: www.win.tue.nl (4)www.win.tue.nl answer: server-side programming the TU/e “webfilter” generates a common look & feel for arbitrary webpages on the fly example: http://wwwstijl.tue.nl/filter43/http://wwwis.win.tue.nl/~rpost/webp rog/cgi/tictactoe.cgi http://wwwstijl.tue.nl/filter43/http://wwwis.win.tue.nl/~rpost/webp rog/cgi/tictactoe.cgi

25 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? example: www.win.tue.nl (5)www.win.tue.nl “webfilter” vs. FrontPage solves all of the problems mentioned must be tuned (by a programmer) to work on specific ranges of pages requires an uncommon way of authoring hard to sell (users don’t trust it, techs don’t trust it)

26 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is server-side programming for? example: www.win.tue.nl (6)www.win.tue.nl more viable: a Content Management System (CMS) CMS = server-side web application for website authoring and management solves most of the problems mentioned limits author to range of options supported by CMS very popular example: www.win.tue.nl (uses the Typo3 CMS)www.win.tue.nlTypo3

27 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e ready-to-use server-side programming software packages you can freely install, configure, and use; examples: CMS software wiki software blogging software database managers (e.g. http://www.petriweb.org/phpMyAdmin http://www.petriweb.org/phpMyAdmin much much more

28 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e web technology x What is the web made of? x What does web interaction do? x What do we need server-side programming for? What does a webserver do? How does it fit into the webserver?

29 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e where does server-side scripting fit in?

30 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e what is a webserver made of? core functionality e.g. serving files from the filesystemserving files from the filesystem built-in document generation e.g. error messages, status messageserror messages status messages getting a document from an executable (CGI) special webserver modules for scripting / programming (SSI; PHP; Java servlets; ASP; etc)

31 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e CGI: Common Gateway Interface a standard waya standard way to call external programs from a webserver and let them return a document

32 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e CGI: example tic tac toe of course: http://wwwis.win.tue.nl/~rpost/webprog/cgi/tictactoe.cgi source code will be made available

33 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e web technology x What is the web made of? x What does web interaction do? x What do we need server-side programming for? x What does a webserver do? x How does it fit into the webserver?

34 / department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems architecture of information systems technische universiteit eindhoven TU/e servlets difference with CGI scripts: scripting engine is integrated with webserver more efficient requires special webserver support


Download ppt "/ department of mathematics and computer sciencedepartment of mathematics and computer science / architecture of information systems."

Similar presentations


Ads by Google