ID2014 Internetprogrammering II 7,5 hp

Internet Programming II

OBS!

Detta är en nedlagd kurs.

Efter fullgjord kurs ska studenten kunna konstruera serversidesprogram (med olika tekniker) som kommunicerar över Internet med HTTP-protokollet.

  • Utbildningsnivå

    Avancerad nivå
  • Kursnivå (A-D)

    D
  • Huvudområde

  • Betygsskala

    A, B, C, D, E, FX, F

Det finns inget planerat kurstillfälle.

Lärandemål

Efter fullgjord kurs ska studenten kunna konstruera serversidesprogram (med olika tekniker) som kommunicerar över Internet med HTTP-protokollet.

Kursens huvudsakliga innehåll

- PHP med exempelvis Smarty Template Engine
- CGI med exempelvis Perl
- Servlets och/eller JSP med Java
- Ruby on Rails
- Django med Python
- ASP.NET med exempelvis C# eller Visual Basic
- Med flera
Handledning och stöd ges inom samtliga tekniker och språk. Oberoende av teknik och språk så tas följande upp:
- Understödjande tekniker:
-- HTTP-servrar (Apache, Tomcat, IIS)
-- HTTP-protokollet (GET, POST med mera)
- Output:
-- Text:
--- Säker filhantering
--- Omgivningsvariabler
-- Bild med dynamisk grafikgenerering
-- Omladdningar:
--- Klientstyrd
--- Serverstyrd: Tidsstyrd
--- Serverstyrd: Tidsstyrd: Olika mime-typer
--- Serverstyrd: Händelsestyrd
- Input:
-- URL och länkar
-- GET
-- Formulär:
--- GET
--- POST
--- Uppladdning av fil
- Kodseparation:
-- Statisk mängd data
-- Variabel mängd data
- Sessionshantering:
-- Omskrivning:
--- Länkar
--- Formulär
-- Lagra på klienten:
--- Kakor
-- Inbyggt stöd:
--- Sessions API
- Säkerhet:
-- HTTP:
--- Autentisering med basic
--- Autentisering med digest
-- HTTPS/SSL:
--- Konfidentialitet och serversides autentisering
--- Konfidentialitet och klientsides autentisering
--- Säkra kakor
- E-post:
-- Sändning:
--- Utan bifogade filer
--- Med bifogade filer
-- Mottagning:
--- Utan bifogade filer
--- Med bifogade filer
- Databaser:
-- Lättvikts med Database Management (DBM)
-- Relations/SQL:
--- Intro:
---- Säkerhet och förparsade uttryck (three-tier, SQL-injection, MySQL)
---- Transaktioner
--- Effektivitet:
---- Lagrade procedurer (stored procedures)
---- Connection pooling
- Innehållshantering:
-- Manuellt innehåll:
--- Publiceringssystem (Content Management System, CMS), exempelvis WIKI, forum och bloggar
--- Syndikering (RSS)
-- Automatiskt innehåll:
--- Kanaler (RSS baserad)
--- Fritextsökning (sökmotor)

Kursupplägg

Detta är en distanskurs och pedagogiken för denna kurs är uppgiftsbaserad inlärning med ett stort inslag av frihet i uppgiftslösandet. Kursen tar upp ett stort område genom att presentera en mängd uppgifter där varje uppgift:
- Fokuserar på ett delområde i taget för att öka förståelsen och minska komplexiteten
- Är generellt specificerad för att motivera till alternativa lösningar och fördjupningar
Tanken med uppgiftsbaserad inlärning är att man ska möta en uppgift innan man söker lösningen på uppgiften. Då motiveras man att själv aktivt söka efter information som kan hjälpa en att lösa en uppgift. Man går från passivt mottagande, där man ofta glömmer det mesta eftersom man har svårt att sätta in informationen i sitt rätta sammanhang, till aktivt sökande, där man ofta kommer ihåg det mesta eftersom sammanhanget finns från början.
Kursen kräver således förmåga till självständigt arbete men har ett stort inslag av interaktivitet genom kontinuerligt och direkt stöd via handledning på distans.

Behörighet

För fristående studerande gäller följande behörighetskrav:

  • Kandidatexamen/180 hp (120 gamla poäng) i informationsteknik, informationssystem, datateknik eller data- och systemvetenskap samt
  • dokumenterade kunskaper i svenska B och engelska A eller motsvarande.

Rekommenderade förkunskaper

Goda kunskaper i Java.

Litteratur

Preliminärt

Stobart, Parsons: Dynamic Web Application Development using PHP and MySQL, Cengage Learning, 2008

Utrustningskrav

PC och Internetanslutning. Distansutbildning.

Examination

  • INLA - Inlämningsuppgift, 3,0, betygsskala: P, F
  • INLB - Inlämningsuppgift, 3,0, betygsskala: P, F
  • INLC - Inlämningsuppgift, 1,5, betygsskala: A, B, C, D, E, FX, F

Ett antal praktiska uppgifter ska göras. Dessa är indelade i tre delar:
- Del 1: Introducerande bestämda/styrda uppgifter (R/P)
- Del 2: Påbyggande mindre bestämda/styrda uppgifter (R/P)
- Del 3: Sammanfattande fri uppgift (gesällprov) samt eventuellt extra uppgifter (A/B/C/D/E/Fx/F)
Notera att totalbetyget bestäms av betyget på del 3. För ett högre betyg krävs allt fler fördjupande uppgifter samt ett allt bättre avslutande gesällprov. Detta beskrivs i detalj på kursens hemsida.

Ges av

ICT/Systemvetenskap (SU)

Kontaktperson

Pierre Wijkman, pierre@dsv.su.se

Examinator

Pierre Wijkman, pierre@dsv.su.se

Övrig information

Detta är en distanskurs och pedagogiken för denna kurs är uppgiftsbaserad inlärning med ett stort inslag av frihet i uppgiftslösandet.

Kursen ingår i ett paket om fyra kurser i internetprogrammering, där var och en kan läsas oberoende av de övriga och i valfri ordning.

http://dsv.su.se/~pierre/i/

Påbyggnad

ID2013 Internetprogrammering I

ID2015 Internetprogrammering III

ID2016 Internetprogrammering IV

Versionsinformation

Kursplan giltig från och med VT2010.
Examinationsinformation giltig från och med HT2007.