IT-Universitetet i København
  Tilbage Kursusoversigt
Kursusnavn (dansk):Webprogrammering (kl. 12.30-18.30) 
Kursusnavn (engelsk):Web Programming (12:30-18:30) 
Semester:Forår 2003 
Udbydes, internet- og softwareteknologi (int) 
Omfang i ECTS:7,50 
Min. antal deltagere:
Forventet antal deltagere:81 
Maks. antal deltagere:121 
Formelle forudsætninger:be able to
  • use a browser
  • write basic HTML (headers, tables, lists) in a text editor and test it

  • use a unix/linux/dos-prompt
  • and write small languages in a programming language (TCL, PHP, ASP, C, Java or similar) using branches, procedures, variables, loops, strings, arrays, arithmetic and logical operators, file I/O as tought at an introductionary programming course at IT-C
  • Læringsmål:The goal of the course is to provide an introduction to the concepts behind dynamic, database based webservices, and a first hand-on experience with the broad spectrum of technologies used in such.
    The conceptual part of the course will focus on concurrency control and separation of content and structure from layout and client-platform details. The practical part will focus on bringing all the technologies into play together, as opposed to going in depth with a single technology.

    More specific, the student will after the course be able to

    • tell the difference between logical structure and physical structure in HTML and use Cascading Style Sheets (CSS) to separate logical and physical structure in HTML
    • use the HTML GUI components (checkboxes, textareas, ...)
    • validate and write validating XML and HTML 4.01
    • use JavaScript to make dynamic webpages at the client-side, in particular validate user-input and accessing the document through the DOM
    • use the server script language PHP to

      • make dynamic webpages at the server side
      • read files from and upload files to the server
      • interpret and react to inputs from HTML forms
      • connect to a database and construct web pages from data in the database extraced using SQL
      • perform user-authentication
      • save state at the client (using sessions)
      • parse and transform XML data

    • design an appropriate XML language for representing a given data set, and in particular transform data from a relational database to XML
    • know how to separate the content from layout and client-platform details using XML and XSL
    • perform transformations of XML using XSLT at client side and at server-side, and know when to do what
    • identify when concurrency control is needed, and how to permit concurrency but avoid deadlocks using locks
    • use all the above techniques together to make a dynamic webservice, having a proper login, concurrency control, and modular support for several different clients, including WAP, XHTML and XML clients.

    Fagligt indhold:The course covers the following 12 topics divided on 12 weeks:

    1. HTML, logical and physical structure, CSS and validation

    2. JavaScript

    3. PHP

    4. Accessing MySQL from PHP

    5. User authentification and session control

    6. Concurrency Control

    7. Mini-project I: An on-line News Database

    8. XML I: Introduction

    9. XML II: DTD, XLink, XPointer, XPath

    10. XML III: DOM and XSLT

    11. Mini-project II: Multiple Views

    12. XML conclusion, course conclusion

    More details will be available at the course homepage.
    <!-- at
    <a href=\"\">> 

    • Lectures every week (except during the two project periods, in which the lectures are replaced by project question hours) from 16:00 to 18:30

    • 3 hours of exercise classes from 12:30 to 15:30 (with instructors) every week

    • 2 mandatory group projects, in which the theory is used to construct a working system. During the two project periods, the lectures are replaced by question hours. The students are not expected to use more hours during these periods than during the normal lecture period. 
    Eksamensform og -beskrivelse:X. experimental examination form (7-scale; external exam), 13-skala, Ekstern censur

    4-hours written exam graded by the danish 13-scale, external censor.

    Approval of the two mandatory group projects is a prerequisite for participating in the exam. The grade wil not however depend on the projects.
    All usual aids, except computers, are allowed at the exam.  

    Litteratur udover forskningsartikler:A large part of the material will be available electronically. The following books cover the curriculum:

    1. PHP and MySQL Web Development, SAMS, Luke Welling and Laura Thomson,
      ISBN 0-672-31784-2, Pris: ca 679 Kr (f.eks. Arnold Busck)

    2. Neil Bradley, The XSL companion, Addison-Wesley ISBN 0 201 67487 4

    3. Neil Bradley, The XML companion, Addison-Wesley ISBN 0 201 34285 5

    But you are not expected to buy them!