Webplattformarkitektur og multiprogrammering
Lågaregradsemne
- Studiepoeng
- 10
- Emnekode
- INF224
- 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
Kunnskapar
Ved fullført emne er studenten 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
Ved fullført emne er studenten 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
Ved fullført emne er studenten 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