Webplattformarkitektur og multiprogrammering
Lågaregradsemne
- Studiepoeng
- 10
- Undervisningssemester Haust
- Emnekode
- INF224
- Talet på semester
- 1
- Undervisningsspråk
- Engelsk
- Ressursar
- Timeplan
Emnebeskrivelse
Mål og innhold
Mål
Emnet gjev ei praktisk og teoretisk innføring i oppbygginga av moderne nettlesarar og dei sentrale prinsippa for asynkron utføring og samtidighet i web-plattforma. Studentane lærer korleis webstandardar, hendingar, og nettlesarens interne komponentar samverkar for å levere interaktive, responsive og sikre
brukaropplevingar. Målet er å gje djup forståing av webens utføringsmodell, slik at studentane kan utvikle robuste, ytande og standardkompatible system.
Innhald
Emnet dekkjer sentrale aspekt ved nettlesararkitektur:
- nettlesarens hovudkomponentar: renderingsmotor, skriptmotor, event loop
- asynkron programmering: prinsipp, oppgåvekøar, tidsstyring og ressursforvaltning
- multiprogrammering i web-plattforma: webarbeidarar, delte ressursar, minnemodellar
- WebAssembly og låg-nivå utføring for applikasjonar med høg yting
- korutinar og kontrollflyt i interaktive applikasjonar
- handtering av brukarinteraksjonar
- webstandardar og interoperabilitet: rolla til spesifikasjonar, samt testsett og standardiseringsarbeid
Læringsutbytte
Studenten skal ved avslutta emne ha følgjande læringsutbyte definert i kunnskapar, ferdigheiter og generell kompetanse
Kunnskapar
Studenten er i stand til å gjere greie for
- hovudkomponentane i ein nettlesar og korleis dei samarbeider
- event loop-modellen og købaserte asynkrone utføringsmodellar
- utføringsmodellar for asynkrone konstruksjonar i web-plattforma, med forståing av korleis desse kan formaliserast og spesifiserast
- korleis multiprogrammering blir handtert i web-plattforma
- prinsipp for korutinar og deira bruk
- kva WebAssembly er og korleis det vert integrert med web-miljøet
- samanhengen mellom webstandardar, spesifikasjonar og faktisk implementasjon i nettlesarar
Ferdigheiter
Studenten er i stand til å
- implementere ein enkel nettlesarprototyp og/eller implementere enkle funksjonar i eksisterande nettlesarar og webmotorar
- utvikle asynkrone system med oppgåvestyring, tidsplanlegging og ikkje-blokkerande I/O
- nytte multiprogrammeringsteknikkar i web-kontekst for å oppnå samtidig utføring
- nytte korutinar og integrere desse i web-applikasjonar
Generell kompetanse
Studenten er i stand til å
- reflektere rundt asynkrone og samtidigheitsmekanismar for gitte problem
- forstå og følgje utviklinga av webstandardar og relevante teknologiar
- kommunisere tekniske løysingar som involverer både brukaroppleving og systemyting