Kursplan för

Programmeringsteknik - fördjupningskurs
Programming - Second Course

EDAF30F, 7,5 högskolepoäng

Gäller från och med: Höstterminen 2019
Beslutad av: Professor Thomas Johansson
Datum för fastställande: 2019-06-05

Allmänna uppgifter

Avdelning: Datavetenskap (LTH)
Kurstyp: Gemensam kurs, avancerad nivå och forskarnivå
Kursen ges även på avancerad nivå med kurskoder: EDAA01, EDAF30
Undervisningsspråk: Svenska

Syfte

För att kunna konstruera programkomponenter som är förändringsbara, återanvändbara och resurssnåla krävs goda kunskaper om såväl avancerade språkkonstruktioner och programmeringstekniker som om dataabstraktion, datastrukturer och algoritmer. Kursens syfte är att ge studenterna utökade kunskaper om objektorienterade programmeringstekniker och om ett urval av algoritmer och datastrukturer lämpade för lösning av vanligt förekommande problem. Kursen skall också ge de färdigheter som krävs för att förstå och utnyttja moderna bibliotek för objektorienterad programmering som implementerar klassiska datastrukturer och algoritmer.

Mål

Kunskap och förståelse

För godkänd kurs skall doktoranden

Färdighet och förmåga

För godkänd kurs skall doktoranden

Värderingsförmåga och förhållningssätt

För godkänd kurs skall doktoranden

Kursinnehåll

Objektorienterade begrepp och språkkonstruktioner såsom interface, inre klasser, undantag och parametriserade typer. Viktiga generella gränssnitt såsom Iterator, ListIterator, Comparable och Comparator. Orientering om ramverk för grafiska användargränssnitt. Rekursiv teknik för konstruktion och implementation av algoritmer. Vanliga abstrakta datatyper som mängder, köer, stackar, listor och lexikon samt Javas standardbibliotek för dessa. Datastrukturer som kan utnyttjas för att implementera fundamentala abstrakta datatyper såsom fält, länkade listor, träd och hashtabeller. Något om enkla algoritmer för effektiv sortering och Javas standardbibliotek för dessa. Orientering om tekniker för att analysera algoritmers och datastrukturers resurskrav med avseende på beräkningstid.

Kurslitteratur

B., Koffman E. & P., W.: Data Structures: Abstraction and Design using Java. Wiley, 2010. ISBN 9780470128701.
Litteraturen är inte obligatorisk, men rekommenderad referenslitteratur.

Kursens undervisningsformer

Undervisningsformer: Föreläsningar, laborationer, litteraturkurs som självstudier

Kursens examination

Examinationsformer: Skriftlig tentamen, inlämningsuppgifter. Obligatoriska laborationer och inlämningsuppgifter samt skriftlig tentamen.
Betygsskala: Underkänd, godkänd
Examinator:

Antagningsuppgifter

Förkunskapskrav: Godkänd på någon av kurserna EDAA45, EDAA20, EDAA50, EDAA55, EDAA65
Förutsatta förkunskaper: Objektorienterad programmering i Java

Kurstillfällesinformation

Kontaktinformation och övrigt

Kursansvariga:
Hemsida: http://cs.lth.se/edaa01


Fullständig visning