course-details-portlet

IDG2100 - Full-stack webutvikling

Om emnet

Vurderingsordning

Vurderingsordning: Muntlig eksamen
Karakter: Bokstavkarakterer

Vurdering Vekting Varighet Delkarakter Hjelpemidler
Muntlig eksamen 100/100 1 dager A

Faglig innhold

I dag innebærer det å være en webutvikler å lære hele utviklingsprosessen fra design til faktisk distribusjon, alt fra å mestre basislinjekonseptene og hjørnesteinswebteknologier, til å utvikle et bredt sett ferdigheter som trengs for en moderne programvareutvikling, alt i alt, for å bli kompetent og avslappet i alle de veldig forskjellige miljøene.

Dette kurset dekker de grunnleggende basiskonsepter og teknologier som en student trenger for å bli en selvstendig webutvikler. En fullstendig implementering kan imidlertid avhenge av et bredt spekter av forskjellige teknologier som kjøres på klient- eller serversiden (fra programmeringsspråk til rammeverk eller databaser). I og med at JavaScript er det dominerende programmeringsspråket i webutvikling, vil omfanget av dette emnet være begrenset til JavaScript (end-to-end), og hele emnet vil utforske minst en av hovedstablene innenfor utvikling (MEAN, MERN eller MEVN) som baselinjeteknologi. Dette vil hjelpe studentene å omfavne moderne webutvikling.

Tema

  • Arkitektur av moderne vs tradisjonelle webapplikasjoner
  • Frontend vs Backend-paradigmer
  • Oversikt over full-stack-utvikling (stabel med forskjellige teknologier)
  • API-paradigmer (Request-Response APIs og Event-Driven APIer)
  • API-sikkerhet: Autentisering og autorisasjon, OAuth, Webhooks, etc.
  • Design-API-er og mønsterpraksis
  • Front-end-rammeverk
  • Back-end-rammeverk
  • Moderne stabler for webutvikling (MEAN, MERN eller MEVN)
  • Utviklerverktøy: Task runners, bundlers etc.

Læringsutbytte

Kunnskap

Studenten kjenner til

  • Ulik arkitektur for moderne og tradisjonelle webapplikasjoner
  • JavaScript-rammeverk
  • Fordeler og ulemper ved rendering av innhold enten på serversiden eller klientsiden
  • Ulike API-paragigmer og når disse kan brukes
  • Autentisering og autoriseringsmetoder
  • Ulike teknologier som kan bli brukt i et webprosjekt og utviklerverktøyene som kan brukes for å forbedre arbeidsflyt

Ferdigheter

Studenten kan

  • Designe, implementere og dokumentere APIer
  • Bruke en spesifikk JavaScript-stack (MEAN, MERN, MEVN) for å bygge en full-stackapplikasjon
  • Implementere enkle autentiseringsteknikker
  • Bruke package managers, module bundlers og andre verktøy for utviklere

Generell kompetanse

Studenten kan

  • utvikle et full-stackprosjekt
  • reflektere rundt arkitektur og den mest passende teknologien for å løse visse problemer
  • lære nye bibliotek eller rammeverk ved bruk av offisiell dokumentasjon

Læringsformer og aktiviteter

  • Forelesninger
  • Lab-øvelser
  • Øvelser
  • Forum diskusjoner (Blackboard)
  • Veiledninger

Obligatoriske aktiviteter

4 obligatoriske oppgaver (godkjent/ikke godkjent) gjennom semesteret.

Muntlige presentasjoner kan kreves for enkelte obligatoriske aktiviteter.

Den siste obligatoriske aktiviteten vil være et hackathon, planlagt å finne sted utenom ordinær kontortid, på helg av hensyn til praktiske forhold.

Alle obligatoriske arbeidskrav må være godkjent for å presentere endelig prosjekt.

Obligatoriske aktiviteter

  • Obligatorisk oppgave 1
  • Obligatorisk oppgave 2
  • Obligatorisk oppgave 3
  • Obligatorisk oppgave 4

Mer om vurdering

Muntlig eksamen: Gruppene mottar en prosjektbeskrivelse som del av den siste obligatoriske oppgaven. Gruppen må implementere et full-stackprosjekt som løser problemet. Gruppen presenterer og forsvarer prosjektet muntlig. I den muntlige presentasjonen kan studentene bli bedt om å diskutere spesifikke deler av koden eller gjøre visse endringer. Studentene får en individuell karakter basert på sitt bidrag inn i presentasjonen. Full-stackprosjektet må leveres før den muntlig eksamenen (informasjon om dette gis i løpet av semesteret).

I tilfelle utsatt eksamen, får studenten eller gruppen et lignende prosjekt og ny muntlig eksamen i neste semester.

Spesielle vilkår

Krever opptak til studieprogram:
Webutvikling (BWU)

Forkunnskapskrav

Emnet er forbehold studenter i studieprogrammet Bachelor i Webutvikling (BWU)

  • IDG1292 Web coding
  • IDG1011 Front-end Web development

Kursmateriell

Pensum vil bli opplyst om ved studiestart.

Flere sider om emnet

Ingen

Fakta om emnet

Versjon: 1
Studiepoeng:  15.0 SP
Studienivå: Videregående emner, nivå II

Undervisning

Termin nr.: 1
Undervises:  VÅR 2024

Undervisningsspråk: Engelsk

Sted: Gjøvik

Fagområde(r)
  • Designmetodikk
Kontaktinformasjon
Emneansvarlig/koordinator: Faglærer(e):

Ansvarlig enhet
Institutt for design

Eksamensinfo

Vurderingsordning: Muntlig eksamen

Termin Statuskode Vurdering Vekting Hjelpemidler Dato Tid Eksamens- system Rom *
Vår ORD Muntlig eksamen 100/100 A 04.06.2024
Rom Bygning Antall kandidater
  • * Skriftlig eksamen plasseres på rom 3 dager før eksamensdato. Hvis mer enn ett rom er oppgitt, finner du ditt rom på Studentweb.
Eksamensinfo

For mer info om oppmelding til og gjennomføring av eksamen, se "Innsida - Eksamen"

Mer om eksamen ved NTNU