Grundlæggende programmering (Autumn 2021)
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:
- ANALYSERE en problemformulering (mhp at KONSTRUERE brugbare, mindre systemer på op til ca. 1000 linjers Java kode); dvs:
- DESIGNE et system (på baggrund af analysen);
- IMPLEMENTERE systemet (på baggrund af design);
- TESTE systemet (inkl. REDEGØRE for om det virker som ønsket samt VURDERE i hvilken grad afprøvningen understøtter en sådan konklusion);
- PRÆSENTERE systemets formål, opbygning og virkemåde både skriftligt og mundtligt for en relevant målgruppe;
- ANVENDE basale Java-konstruktioner (jf. kursusindhold); samt
- FORKLARE basale Java-konstruktioner (jf. kursusindhold) for en IT-professionel målgruppe
Learning activities
De første to tredjedele af semesteret vil undervisningen primært bestå af 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. Derfor vil undervisningen gradvis få mere karakter af projektarbejde og vejledning.
Mandatory activities
- Programmeringshøst (samling af gennemsnitlig en daglig programmeringsopgave);- 3 ud af 3 obligatoriske afleveringsopgaver; samt
- 3 ud af 3 programmeringsopgaver (uden hjælpemidler) skal godkendes for at kunne gå til eksamen.
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.
Mundtlig eksamen er 30 minutters individuel eksamen med 30 minutters forberedelse (minus tid til votering, feedback og rotation af studerende, så - i praksis - er den reelle eksamenstid tættere på 20-25 minutter). Under eksamen arbejder den studerende på sin egen computer, som han/hun har brugt i løbet af kurset. Ved starten på forberedelsesperioden får den studerende en beskrivelse af en mindre opgave, der tager udgangspunkt i en standardløsning på projektopgaven (som de studerende får udleveret tidligere). Under den ca 25 minutters eksamination vil den studerende blive bedt om at demonstrere programmeringskompetence, besvare spørgsmål om kodens struktur, deres projektaflevering samt centrale begreber i kurset.
Group
- Group size: 3 studerende.
30 minutes
Individual
reexam
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.