Swift SIDEN

Her på siden finder du mine læringsmål, læringsplan og resurser i dette fag.

Læringsmål:

Læringsmål for at lære Swift med integration til en C#-baseret API-backend:

  1. Grundlæggende forståelse af Swift:

    • Jeg skal kunne forstå og anvende de grundlæggende syntaktiske elementer i Swift, herunder variabler, datatyper, kontrolstrukturer og funktioner.
    • Jeg skal kunne skrive enkle Swift-programmer, der demonstrerer min forståelse af objektorienteret programmering i Swift, herunder klasser, strukturer og protokoller.
  2. iOS-appudvikling med Swift:

    • Jeg skal kunne oprette enkle iOS-applikationer i Xcode ved hjælp af Swift, herunder opbygning af brugergrænseflader med UIKit eller SwiftUI.
    • Jeg skal kunne håndtere brugerinput og interaktioner samt navigere mellem forskellige skærmbilleder i en iOS-app.
  3. Integration med C#-baserede API’er:

    • Jeg skal kunne forstå grundlæggende begreber inden for RESTful API’er og HTTP-protokollen, herunder GET, POST, PUT og DELETE-forespørgsler.
    • Jeg skal kunne skrive Swift-kode til at sende og modtage data fra en C#-baseret API, herunder parsing af JSON-data til Swift-modeller.
  4. Sikkerhed og autentificering:

    • Jeg skal kunne implementere sikkerhedsforanstaltninger i Swift for at beskytte kommunikation mellem appen og C#-API’en, herunder brug af HTTPS og autentificeringstokens.
    • Jeg skal kunne håndtere fejlhåndtering og data-validering ved interaktion med API’en for at sikre, at appen opfører sig korrekt under forskellige netværksforhold.
  5. Asynkron programmering i Swift:

    • Jeg skal kunne anvende asynkron programmering i Swift ved hjælp af teknologier som URLSession og async/await for at håndtere netværkskald effektivt.
    • Jeg skal kunne forstå og håndtere problemer med samtidighed og baggrundstråde i en iOS-applikation, der kommunikerer med en backend-API.
  6. Persistens og datalagring:

    • Jeg skal kunne implementere persistensmekanismer i Swift, såsom Core Data eller UserDefaults, for at lagre data lokalt, der er hentet fra en API.
    • Jeg skal kunne synkronisere lokalt lagrede data med backend-API’en for at sikre dataens konsistens.
  7. Test og debugging:

    • Jeg skal kunne skrive enhedstest i Swift for at sikre, at API-kald og databehandling fungerer korrekt.
    • Jeg skal kunne bruge debugging-værktøjer i Xcode til at identificere og rette fejl i Swift-kode, især dem, der opstår under kommunikation med API’en.
  8. Optimering og ydeevne:

    • Jeg skal kunne optimere Swift-kode for effektiv netværkskommunikation med C#-API’en, herunder reduktion af latency og forbedring af ydeevnen.
    • Jeg skal kunne evaluere og forbedre appens ydeevne ved at minimere ressourceforbrug og forbedre brugeroplevelsen.
  9. Dokumentation og versionering:

    • Jeg skal kunne dokumentere min Swift-kode og API-integration, herunder beskrivelse af de anvendte metoder og processer.
    • Jeg skal kunne anvende versionstyring med Git til at administrere Swift-projekter og samarbejde i teams.
  10. Avancerede Swift-funktioner:

    • Jeg skal kunne anvende avancerede Swift-funktioner, som f.eks. protokolarv, udvidelser (extensions) og closures, til at skrive mere effektiv og vedligeholdelsesvenlig kode.
    • Jeg skal kunne integrere tredjepartsbiblioteker i mine Swift-projekter for at udvide funktionaliteten og forbedre interaktionen med API’en.

Disse læringsmål fokuserer på min evne til at mestre Swift og udvikle effektive iOS-applikationer, der kommunikerer med en C#-baseret backend.

Læringsplan:

Læringsplan for Swift Programmering med Integration til C# API-Backend

Periode: 26. august – 30. november 2024
Arbejdsdage: Mandage og tirsdage


Uge 1-2: Grundlæggende Forståelse af Swift (26. august – 3. september)

  • Mandag (26. august): Introduktion til Swift. Lær om variabler og datatyper.
  • Tirsdag (27. august): Øv mig i kontrolstrukturer og simple Swift-programmer.
  • Mandag (2. september): Forstå objektorienteret programmering i Swift, herunder klasser.
  • Tirsdag (3. september): Arbejd med strukturer og protokoller i Swift.

Uge 3-4: iOS-Appudvikling med Swift (9. september – 17. september)

  • Mandag (9. september): Introduktion til Xcode og oprettelse af simple iOS-applikationer.
  • Tirsdag (10. september): Byg brugergrænseflader med UIKit eller SwiftUI.
  • Mandag (16. september): Håndter brugerinput og interaktioner i iOS-apps.
  • Tirsdag (17. september): Implementér navigation mellem forskellige skærmbilleder.

Uge 5-6: Integration med C#-baserede API’er (23. september – 1. oktober)

  • Mandag (23. september): Lær om RESTful API’er og HTTP-protokollen.
  • Tirsdag (24. september): Implementér GET, POST, PUT og DELETE-forespørgsler i Swift.
  • Mandag (30. september): Parse JSON-data til Swift-modeller.
  • Tirsdag (1. oktober): Implementér simple integrationer med en C#-baseret API.

Uge 7-8: Sikkerhed og Autentificering (7. oktober – 15. oktober)

  • Mandag (7. oktober): Implementér HTTPS og autentificeringstokens i Swift.
  • Tirsdag (8. oktober): Håndter fejlhåndtering og datavalidering ved API-interaktion.
  • Mandag (14. oktober): Test sikkerhedsforanstaltninger og valider data.
  • Tirsdag (15. oktober): Revider og forbedre sikkerhedsintegrationer.

Uge 9-10: Asynkron Programmering i Swift (21. oktober – 29. oktober)

  • Mandag (21. oktober): Introduktion til asynkron programmering med URLSession.
  • Tirsdag (22. oktober): Implementér async/await for netværkskald.
  • Mandag (28. oktober): Løs problemer med samtidighed og baggrundstråde.
  • Tirsdag (29. oktober): Test og forbedre asynkron programmering i min app.

Uge 11-12: Persistens og Datalagring (4. november – 12. november)

  • Mandag (4. november): Lær om Core Data og UserDefaults til lokal datalagring.
  • Tirsdag (5. november): Implementér datalagring i en simpel iOS-app.
  • Mandag (11. november): Synkroniser lokalt lagrede data med backend-API’en.
  • Tirsdag (12. november): Test og sikre datakonsistens i appen.

Uge 13-14: Test og Debugging (18. november – 26. november)

  • Mandag (18. november): Introduktion til enhedstest i Swift.
  • Tirsdag (19. november): Skriv testcases for API-kald og databehandling.
  • Mandag (25. november): Brug debugging-værktøjer i Xcode til at identificere og rette fejl.
  • Tirsdag (26. november): Evaluér og forbedre debugging-processen i Swift-koden.

Uge 15: Optimering og Ydeevne (28. november)

  • Onsdag (27. november): Optimer Swift-kode for effektiv netværkskommunikation med C#-API’en.
  • Torsdag (28. november): Forbedre appens ydeevne med fokus på ressourceforbrug og brugeroplevelse.

Denne læringsplan sikrer, at jeg arbejder fokuseret på Swift hver mandag og tirsdag, og samtidig giver den mig tid til at implementere og forstå materialet, før jeg går videre til næste emne.

Literaturliste:

Forfatter:
Apple Inc. – Education

År:
2024

Titel:
Develop in Swift Curriculum Guide

Forlag:
Apple Inc. – Education

Forfatter:
Apple Inc. – Education

År:
2024

Titel:
Develop in Swift Explorations

Forlag:
Apple Inc. – Education

Forfatter:
Apple Inc. – Education

År:
2024

Titel:
Develop in Swift AP® CS Principles

Forlag:
Apple Inc. – Education

Forfatter:
Apple Inc. – Education

År:
2024

Titel:
Develop in Swift Fundamentals

Forlag:
Apple Inc. – Education

Forfatter:
Apple Inc. – Education

År:
2024

Titel:
Develop in Swift Data Collections

Forlag:
Apple Inc. – Education

Andre materialer:

  • https://www.swift.org/

De sidste nye blogindlæg