iOS Flashcards
(41 cards)
Hvad kendetegner Swift kode?
Deklarativt og meget typestærkt. En variabel skal tildeles værdi ved deklarationspunktet.
Hvad er det underliggende sprog til Swift?
C
Hvad er forskellen på at deklarere en “let” vs en “var”?
Let er en konstant, og var er en variabel - og kan ændre værdi løbende.
Hvilke tre typer baserer Swift sig på?
Structures, Enumerations og Classes.
Hvad en structure i Swift?
Minder meget om en class - kan have constructor, variable og metoder. Er value type - modsat en Class type. Betyder at der ved initialisering oprettes en kopi.
Hvad er en enumeration i Swift?
Kan bruges til at definere specifikke variable - kan have typen Optional.
Hvad er typen Optional?
En Optional kan både have en værdi eller være tom. Har derfor en værdi ‘none’ og en værdi ‘some(T)’. En Optional kan skifte type undervejs. Hvis den først deklareres som en String kan den godt senere ændres til en Int.
Hvad er vigtigt at bruge når værdien af en Optional skal printes med et simpelt print() statement?
En Bang operator bruges til at tilsidesætte enhver form for check. Gør det muligt at få en null-pointer. I stedet er det bedre at lave et if statement der tjekker om Optional er tom.
Hvad er en class i Swift?
Har constructor, variable og metoder som vi kender det. Muliggør klassenedarvning. Er reference type.
Hvad viser billedet?
Viser princippet med Optional Unfolding. Her tjekkes det om Optional værdien er tom ved at assigne den til en anden variabel. Kun hvis den ikke er tom, kan værdien printes.
Hvad er Optional Unfolding? Hvorfor er det smart?
Her tjekkes det om Optional værdien er tom ved at assigne den til en anden variabel. Kun hvis den ikke er tom, kan værdien eksempelvis printes. Det er smart fordi man på den måde undgår null-pointer exceptions.
Hvad er fordelene ved at bruge struct som udgangspunkt?
- Fylder mindre i memory
- Structs er value type og er derfor nemmere at oprette og nedlægge
- Behøves ingen constructor(Generer selv en constructor på baggrund af instans variable)
Hvad er nødvændig for at en struct selv kan generere sin egen constructer?
At alle instans variable har en værdi
Hvorfor bruge extensions over nedarvning?
- For at få en flad hiarki struktur
- Sikre mindre kobling
- Kan bruges til at udvide ikke kun klasser men også structs og enums
Hvad er en protokol i swift?
Det er det samme som et interface i Java eller C#
Hvad vil det sige at swift er reaktiv?
Det betyder at SwiftUI nedlægger og opretter viewet hver gang der ændres i data.
Hvad er et view bag kulisserne i SwiftUI?
Det er et struct og implementere view protokollen
Hvad muliggør at SwiftUI kan være reaktiv?
At body i viewet er en variabel, og at dataændringer registreres med @State
Hvad er en View modifier?
Det er en modifier som kan ændre på hvordan er view ser ud fx .padding.
Hvad er en computed property?
En variabel som har knyttet en funktion til sig (Det kendes ved at der er tuborg klammer efter deklerationen)
Hvad er fordelen ved en computed property?
Allokerer ikke meget plads i memory
Hvad er en opal type?
Det er en type som er ligeglad med sin retur type bare den implementere en specifik protokol som fx var body: some View{}
Hvad er en trailing closure?
Den er en closure i swiftUI som gør koden mere læsbar ved at den sættes udenfor parenteserne.
Hvad er Single source of truth?
Det er at man skal definere hvem der har ejerskabet over data.