Grundlæggende programmering (Autumn 2022)
Official course description:
Course info
Programme
Staff
Course semester
Exam
Abstract
Grundlæggende Programmering er det første programmeringskursus på uddannelsen. Kurset har til formål at gøre de studerende i stand til at kunne skrive mindre programmer i Java uden tidligere at have programmeret. Kurset introducerer grundlæggende objekt-orienterede programmeringsprincipper samt hvordan man designer mindre programmer. De første to tredjedele af semesteret vil undervisningen primært bestå af forelæsninger og øvelser samt Live Coding øvelser, som er sessioner hvor praktisk kodning bliver illustreret sammen med de
studerende. I den sidste tredjedel skal alle studerende lave et programmeringsprojekt i små grupper.
Description
Kurset giver det første indblik i programmering og et solidt fundament til objekt orienteret programmering. Emnerne er essentielle for
størstedelen af de efterfølgende fag.
- Objekt-orienteret analyse, design og implementering.
- Programmering i Java: klasser, objekter, metoder, felter, variable; simple typer; udtryk, ordrer og erklæringer; valg (if, switch), lazy and/or, gentagelse (for, while); rekursive metoder; Javas klassebiblioteker; collections; arrays; konstruktion af simple brugergrænseflader med Java Swing; statisk vs dynamisk typing; virtual dispatching; brug af generiske typer
- Klassedesign, virtuelle metoder, abstrakte klasser, interfaces, indkapsling; konstruktion af løkker;
- Test og dokumentation
- Design af programløkker
Formal prerequisites
For at følge dette kursus er det en forudsætning, at du kan bruge din computer til tekstbehandling, til email og til at læse fra web. Du skal også kunne installere ny software. Der kræves ingen programmeringserfaring for at kunne følge dette kursus.Intended learning outcomes
Efter kurset skal den studerende være i stand til:
- FORKLARE og ANVENDE centrale begreber (inkl Java-konstruktioner)
- SAMMENLIGNE Java-konstruktioner og ARGUMENTERE for valg deriblandt
- BEHANDLE data (repræsentere informationer samt indlæse, transformere og udskrive data)
- ANALYSERE, DESIGNE, IMPLEMENTERE og TESTE et system med udgangspunkt i en specifikation (problemformulering)
- PRÆSENTERE systemets formål, opbygning og virkemåde både skriftligt og mundtligt
Learning activities
De første to tredjedele af semesteret vil undervisningen primært bestå af miksede forelæsninger og øvelser. Der vil desuden være Live Coding øvelser, som er sessioner hvor praktisk kodning bliver illustreret ud fra de studerendes behov samt hvad underviserne finder nødvendigt. I den sidste tredjedel af semesteret skal alle studerende lave et programmeringsprojekt i grupper. Derfor vil undervisningen gradvis få mere karakter af projektarbejde og vejledning.
Mandatory activities
For at kunne gå til eksamen, skal den studerende have godkendt følgende aktiviteter:
3 ud af 3 programmeringsprøver (af 1 time uden hjælpemidler);
3 ud af 3 afleveringsopgaver; samt
Høsten (som består af løbende programmeringsopgaver).
Den studerende får karakteren NA (ikke godkendt) ved den ordinære eksamen, hvis de obligatoriske aktiviteter ikke er godkendt, og den studerende bruger et eksamensforsøg.
Course literature
"Objects First with Java"
-- A Practical Introduction using BlueJ
(By David J. Barnes & Michael Kölling)
Global Sixth Edition, Pearson, 2016:
( https://www.bluej.org/objects-first/ )
Ordinary exam
Exam type:D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Projektet er et mindre programmerings projekt der udarbejdes i mindre grupper.
Eksamen er 30 minutters individuel mundtlig eksamen (minus tid til votering,
feedback og rotation af studerende, så - i praksis - er den reelle eksamenstid tættere
på 20-25 minutter). Under eksaminationen vil den studerende blive bedt om at i)
forklare centrale begreber i kurset, ii) diskutere projektet, samt iii) demonstrere
programmeringskompetence med udgangspunkt i en lille simplificeret løsning af
projektet, som udleveres på forhånd.
Group
- Group size: 3 studerende.
30 minutes
Individual