Hoppa till huvudinnehållet
Till KTH:s startsida Till KTH:s startsida

ID2013 Internetprogrammering I 7,5 hp

Kursomgångar saknas för aktuella eller kommande terminer.
Rubriker med innehåll från kursplan ID2013 (VT 2010–) är markerade med en asterisk ( )

Innehåll och lärandemål

Kursinnehåll

- Understödjande tekniker:
-- Multitrådning
-- Java arkivfiler (JAR)
-- Reguljära uttryck (REGEXP)
-- Javadoc
- Start från HTML:
-- Äpplen
-- Web Start
- Högnivåkopplingar till specifika servrar (HTTP, FTP med mera) med URL och besläktade klasser
- Lågnivåkopplingar godtyckliga servrar:
-- Stream sockets (TCP):
--- Klient-sidan
--- Server-sidan
-- Datagram sockets (UDP):
--- Unicast
--- Multicast
-- Raw sockets (ICMP med mera) via Java Native Interface (JNI)
- Databaskopplingar med Java Database Connectivity (JDBC)
- E-post med Javamail:
-- Sändning
-- Mottagning
- Mediaöverföring:
-- Talsyntes med Java Speech
-- Ljud med Java Sound över stream sockets
-- Ljud med Java Sound över datagram sockets
-- Video med med Java Media Framework (JMF) över RTP
- Mobila enheter med Java Micro Edition (JME) med Connected Limited Device Configuration (CLDC) 1.1 och Mobile Information Device Profile (MIDP) 2.0:
-- Högnivåkopplingar:
--- HttpConnection-klassen
--- HttpsConnection-klassen
-- Lågnivåkopplingar:
--- Stream sockets:
---- Klient-sidan
---- Server-sidan
--- Datagram sockets:
---- Unicast
-- SMS och MMS:
--- Sändning
--- Mottagning
- Säkerhet:
-- Säkra program (säkerhetspolicy, integritet och oavvislighet):
--- Funktionella restriktioner
--- Avsändar-restriktioner för äpplen
--- Avsändar-restriktioner för Web Start
-- Kryptering/dekryptering (konfidentialitet):
--- Symmetriska algoritmer
-- Signering/verifiering (autentisering och nyckeldistribution i publika nät):
--- Asymmetriska algoritmer och nyckelpar
--- Asymmetriska algoritmer och certifikat
-- Sammansatta tekniker:
--- Högnivåkopplingar med SSL
--- Lågnivåkopplingar med SSL
--- Kryptering och/eller signering med S-MIME
--- Dekryptering och/eller verifiering med S-MIME
-- Anfall:
--- Portscanning
--- Trojanska hästar
--- Virus och maskar

Lärandemål

Efter fullgjord kurs ska studenten kunna konstruera program som kommunicerar över Internet med godtyckliga protokoll och tekniker.

Kurslitteratur och förberedelser

Särskild 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
  • svenska B och engelska A eller motsv.

Rekommenderade förkunskaper

Goda kunskaper i Java.

Utrustning

PC och Internetanslutning. Distansutbildning.

Kurslitteratur

Preliminärt

Harold: Java Network Programming (Upplaga: 3rd Edition), O’Reilly, 2004, 0-596-00721-3

Examination och slutförande

När kurs inte längre ges har student möjlighet att examineras under ytterligare två läsår.

Betygsskala

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

Examination

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

Examinator beslutar, baserat på rekommendation från KTH:s handläggare av stöd till studenter med funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

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.

Möjlighet till komplettering

Ingen information tillagd

Möjlighet till plussning

Ingen information tillagd

Examinator

Ingen information tillagd

Etiskt förhållningssätt

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Ytterligare information

Kursrum i Canvas

Registrerade studenter hittar information för genomförande av kursen i kursrummet i Canvas. En länk till kursrummet finns under fliken Studier i Personliga menyn vid kursstart.

Ges av

Huvudområde

Denna kurs tillhör inget huvudområde.

Utbildningsnivå

Avancerad nivå

Påbyggnad

ID2014 Internetprogrammering II

ID2015 Internetprogrammering III

ID2016 Internetprogrammering IV

Kontaktperson

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/