Skip to main content
Dat 2. semester Bornholm
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Læringsmål

Dag 1 + 2

1. Forstå og brug funktionel programmering i Java

  1. Forstå grundprincipperne: uforanderlighed / immutability, pure functions, higher‑order functions, og hvornår det giver mening ift. imperativ stil.

  2. Behersk lambda‑udtryk: skrive/anvende lambdas som erstatning for anonyme klasser og øge læsbarhed/vedligeholdelse.

  3. Metodereferencer og funktionelle interfaces: kende Predicate, Function, Supplier, Consumer og bruge metodereferencer.

  4. Brug Stream API: filtrere, mappe, reducere deklarativt på kollektioner.

  5. Funktionskomposition: kombinere funktioner til mere komplekse operationer.

2. Forstå og brug Java 8 streams

  1. Koncept og formål: kunne forklare streams vs. collections og hvorfor streams understøtter funktionel programmering.

  2. Opret og brug streams: fra kollektioner, arrays, filer; kende forskel på intermediate (fx filter, map) og terminal (collect, forEach) operationer.

  3. Mestring af operationer: filter, map, reduce, flatMap, sorted, distinct og hvordan de kombineres.

  4. Anvend streams i praksis: fx større datasæt, transformationer, refaktorering fra loops til streams.

3. Forstå og brug Java 8 Date/Time API

  1. Behovet for den nye API: kende begrænsningerne i Date/Calendar og fordelene ved java.time.

  2. Brug kerneklasserne: LocalDate, LocalTime, LocalDateTime til repræsentation, parsing, formatering og manipulation.

  3. Zoner og tidszoner: arbejde med ZonedDateTime, konvertere tidszoner, kende ZoneId/ZoneOffset.

  4. Duration og Period: bruge dem til tidsudregninger og forskelle mellem datoer/tider.

  5. DateTimeFormatter: parse og formatere dato/tid, kende prædefinerede og egne mønstre.

Dag 2

1. Forstå og brug Java Generics

  1. Formål: forklare hvorfor generics bruges, og hvordan de giver typesikkerhed og færre runtime-fejl.

  2. Definér egne generiske klasser/metoder: oprette og anvende typeparametre.

  3. Begrænsede typeparametre: <T extends Number>, samt wildcards ? extends / ? super for fleksibilitet.

  4. Brug generics i datastrukturer: List, Set, Map m.fl.; kende fordele og begrænsninger.

2. Forstå og brug Java Records

  1. Formål og fordele: forklare hvorfor records blev introduceret, og hvordan de forenkler data‑bærende klasser.
  2. Definér og brug records: oprette records, kende syntaks og implicitte metoder (konstruktør, getters, equals, hashCode, toString).
  3. Kompakt og kanonisk konstruktør: tilføje validering og transformation.
  4. Tilføj metoder og statiske medlemmer: udvide records med adfærd.
  5. Brug cases: anvende records til DTO’er, value objects og konfigurationsdata.