| LV197D Webprogrammering med PHP
|
| Opplegg for faget |
Tilbake til forsiden | Meld deg på faget
På denne siden presenteres tema for dette faget, det pedagogiske rundt undervisningsopplegget, det praktiske knyttet til innlevering av øvinger, og eksamensinformasjon. Dette er nyttig informasjon som du bør lese.
1. Tema for dette faget
Ingen kan lære alt i programmering. Dette faget skal gi en forståelse av hvilke muligheter webprogrammering med PHP åpner for. Leksjonene og boka vil ta for seg nødvendig lærestoff, både teori og eksempler. Øvingene vil øve praktisk programmering av tidsriktige web-applikasjoner.
Forkunnskaper
Det er en fordel om en har basis kunnskaper i HTML og programmering før faget begynner. Av programmering bør du vite hva en variabel er, hvordan matriser og funksjoner fungerer, og hva en løkke og kontrollstruktur er. Bokas første kapitler introduserer syntaksen i PHP samtidig som grunnleggende programmering gjennomgås. Det anbefales derfor at de som ikke har holdt på med programmering på en stund (eventuelt ikke programmert før) jobber litt ekstra med startkapitlene (gjerne før fagets oppstart for ikke å komme på etterskudd).
Dersom du mangler nødvendig forkunnskap i HTML kan du gjennomgå noen grunnleggende "tutorials" for deg selv først.
Disse eksisterer i utallige varianter på web (ta gjerne flere som er nesten like for å få forskjellig vinkling på stoffet),
men du kan også benytte lærebøker. Fine kilder er listet under ressurssiden til leksjon 1.
Emner som inngår
De tema som gjennomgås gjenspeiles godt i leksjonsoversikten på fagets forside, men i korte trekk er disse blant viktige tema som tas opp:
- Intro - Vi starter med en lettfattelig introduksjon til
datatyper, syntaks, kontrollstrukturer og feiltesting, og vi ser på
fordelen med assosiative matriser.
- Funksjoner - De mange hendige funksjonene som tilbys i
det store funksjonsbiblioteket som følger med PHP blir gradvis utforsket gjennom
hele faget. Du lærer tidlig å lage egne funksjoner og tenke gjennom struktur i dine løsninger. Inkludering av filer står også sentralt.
- Skjema - Prosessering av skjema (forms) går igjen i mange leksjoner. Skjema er nøkkelen til brukervennlig interaksjon med den besøkende. Skjemabehandling er også høyaktuelt i forbindelse med filbehandling, SQL og databaser.
- Sessions og cookies - HTTP protokollen kommer til kort
når det gjelder å bevare tilstandsinformasjon gjennom en rekke etterfølgende forespørsler
fra klient til server. Teorien for å løse dette problemet er interessant, og vi lærer om sessions og cookies gjennom praktiske, forklarende eksempler.
- Databaser - Gjennom et større eksempel ser vi på bruk
av databaser for å lagre informasjon over tid. Databaser eller filer er en forutsetning for å få til mer gjennomgående interaktivitet. Du trenger ikke å ha kjennskap til databaser på forhånd.
- Filbehandling - Vi kommer også inn på hvordan basis
filbehandling er hendig i mange sammenhenger. Vil du lage din egen gjestebok? Et bildegalleri som dine venner kan bidra til ved å laste opp bilder?
- Sikkerhet - Sikkerhet omfatter mye mer enn bare innlogging
til en passordbelagt webside. Validering av data på tjenersiden tas opp.
Også ved bruk av skjema, sessions, cookies
er sikkerhetsaspektet viktig å tenke over. Vi ser på de viktigste
sikkerhetstemaene og prøver ut hva som kan gå galt ved en lite gjennomtenkt
web-løsning, blant annet vha SQL-injection.
- Grafikk - Det er mulig å presentere data på mange måter. Det er enkelt og morsomt å lage grafikk med PHP, og dette gir interessante muligheter for å for eksempel presentere informasjon fra en database, la brukeren lage egne knapper, sette vannmerker på dine digitale bilder uten å ødelegge originalene, og så videre. Av andre alternative presentasjonsformer nevnes regneark, word-dokumenter og PDF-filer.
- Avanserte tema - Templates er en spennende teknikk
for å skille kode fra design. Dette og andre avanserte tema som XML-integrasjon tas opp. Meningen her er å vise mulighetene og motivere
til videre selvstudium.
- Verdt å merke seg om objektorientering - Det er valgfritt om en vil bruke en
objektorientert eller en prosedyral tilnærming til oppgavene som leveres inn
(i PHP kan en bruke begge om en annen). Leksjonene i faget benytter standard
prosedyral tilnærming.
2. Undervisningsopplegg
Undervisningsopplegget har flere elementer som viktig kilde for læring:
- Lærebok: Læreboka som brukes er "Webprogrammering i PHP" av faglærer Svend Andreas Horgen. Boka kan kjøpes her eller i bokhandlere landet over, og har en nyttig ressursside
- Leksjoner: Det er 12 leksjoner i faget som enten går videre på det som er diskutert i læreboka, eller kommer med andre eksempler. Noen artikler og andre kilder på web skal/kan leses, og dette oppgis i så fall i leksjonene. Leksjonene legges ut i den rekkefølgen som angitt i leksjonsoversikten, men for å sikre fleksibilitet vil leksjonene legges ut så fort de er oppdaterte. Det er likevel å anbefale å jobbe jevnt med stoffet etter oppsatt tidsplan - over tid. Da lærer du best, og hvis flertallet følger denne progresjonen vil også klassemiljøet bli bedre (dere støter på problemer samtidig) og veilederne vil få en jevn strøm av øvinger å rette.
- Referanser til mer informasjon på Web: Under presentasjonen av leksjonene finner du også lenker til kildemateriale på web som er relevant for stoffet som gjennomgås. Dette er som støttelitteratur å regne (hvis det ikke opplyses om annet), men kan være (meget) nyttig i innlæringen av stoffet.
- Videobasert lærestoff: Videoopptak av skjermen, med kjøring av kjøring av programmer, forklaring av koder og strategier, oppsett av databaseprogramvare etc. Faglærer snakker samtidig som du ser hva som skjer på skjermen. Tilbakemeldingene har vært gode på videosnutter som støtter opp om leksjonene. Du finner filmene sammen med presentasjonen av de leksjoner som har slikt lærestoff. Eksempel på videosnutt
- Øvingsoppgaver med individuell tilbakemelding: Til hver leksjon er det tilknyttet en øving, hvorav 6 må være godkjente for å få godkjent faget. Øvingene er viktige for å øve inn fagstoffet og stimulere til videre utforsking av temaet som tas opp. Øvingene skal rettes i løpet av noen få dager. Du vil få tilbakemelding på en form som gjør at du som student kan vite hva som var bra og hva som var mindre bra, hvor forbedringspotensialet ligger, men ikke retting av feil. Kommentarene vil altså være veiledende i formen. Se eget notat for retningslinjer angående innlevering av øvinger i LMS-systemet it´s learning.
- Diskusjonsforum: Et forum gir mulighet for alle å skrive innlegg som andre kan lese og kommentere - det er altså en slags offentlig oppslagstavle. Et forum brukes ofte for å stille spørsmål og få svar, dele erfaringer eller komme med gode tips. Det legges opp til aktivt bruk av diskusjonsmuligheten for å støtte opp under læring i dette faget. Et tidligere semester kom det totalt 314 diskusjonsinnlegg i forumet i dette faget. Ofte kan det oppleves som en høy terskel for å komme med innspill, men vi ønsker aktivitet både fra studenter, veiledere og faglærer. Husk at det ofte er flere som lurer på akkurat det samme som deg, så ikke nøl med å stille spørsmålet du har. Ingen spørsmål er for dumme til å stilles i forum i dette faget. Forumbruk bør apellere til alle: Her kan du lære mye av andres kunnskap og synspunkter og du kan også lære mye av å forklare vanskelige ting for medstudenter. Bruk forumet - det er faglærers oppfordring!
- XTRA: Det er laget en rekke ekstraoppgaver som er helt frivillige. De fleste distribueres sammen med øvingene, men noen legges ut i diskusjonsforumet. Programmering krever trening, og XTRA-oppgavene gir deg mulighet til å øve mer på praktisk problemløsning fra et bredt spekter av problemstillinger.
- Gamle eksamensoppgaver: Vurderingsformen i dette faget er (fra og med høsten 2009) en nettbasert eksamen, i kombinasjon med et gruppevis prosjektarbeid som skal bestås. Det å løse gamle eksamensoppgaver fra den tiden da dette faget hadde skriftlig eksamen, kan likevel by på mange spennende utfordringer og gi ny innsikt. Det er alltid lurt å jobbe jevnt og trutt utover semesteret, så kommer forståelsen gradvis og forhåpentligvis i tide. Gamle eksamensoppgaver kan gi ny oversikt og øve evnen til å se sammenhenger. Du kan lese mer om nåværende eksamensform under avsnittet Eksamen nederst på denne siden
- Prosjektarbeid: Gjennom det obligatoriske prosjektarbeidet, gruppevis, vil du trolig lære veldig mye. Dette fordrer samarbeid med andre og planlegging/utvikling av en større webløsning.
- Digitale tester: Du vil få mulighet til å teste din kunnskap underveis gjennom å ta digitale tester (flervalgstester). Disse kan du ta når du vil for å få en pekepinn på hvor du ligger rent faglig.
- ... Annet: Det vil foregå flere andre aktiviteter for å støtte opp under læring i læringsplattformen (it´s learning).
3. Innsending av øvinger
Dette skal skje i LMS-systemet it´s learning. Se egen veiledning der.
4. Eksamen
Tidligere var det skriftlig eksamen i dette faget. Nå vurderes studentene med karakter (A-B-C-D-E-F) basert på én nettbasert eksamen (3 timer). I tillegg skal et prosjektarbeid (gruppevis) bestås.
Det er viktig å jobbe godt underveis i faget med obligatoriske og frivillige øvinger for å lære grunnleggende teknikker. Vurdering av prosjekt og nettbasert eksamen baserer seg på evne til å se sammenhenger, tenke stort og kunne kombinere innlært kunnskap. Dette er i tråd med Kvalitetsreformen.
Tilbake til forsiden | Meld deg på faget
|