Göm menyn

729G28 Webbprogrammering och databaser

Kursinformation


En viktig sätt att kommunicera information idag går via Internet. Nätet har blivit vår stora distributionskanal för många olika typer av information mellan många olika typer av avsändare och mottagare. En viktig komponent handlar om att dynamiskt generera innehåll ur databaser som innehåller stora mängder detaljerad information, som användaren (besökaren) behöver hjälp att söka i. Exempel på sådana sidor är postorderförsäljning, sjukvårdsupplysningens information (www.1177.se) och wikipedia.

Målet med kursen är att ni ska lära er strukturera och arbeta med stora datamängder och att presentera dessa dynamiskt på nätet. Ni ska också förstå hur databaser fungerar och hur de kan användas, samt ha prövat på att använda två olika databassystem och ett programmeringsspråk för generering av dynamiskt innehåll på websidor (php). Viss fördjupning av förkunskaper inom websideskonstruktion (html) ingår också.

Efter kursen ska du kunna analysera datakrav och designa en bra databas för en webapplikation, kunna skriva kod för presentation och interaktion med databasen. Du ska kunna beskriva databasen enligt ER-modellen och med relationsschema, samt identifiera nivåer av redundans genom normalisering och kunna formulera utsökningar i en given databas med databasspråket SQL så som det används i databashanteraren MySql.

Organisation

Kursen ges i form av en serie föreläsnigar och lektioner samt laborationer och ett projekt. Kurslitteraturen består av en bok som tar upp databasteori och web-baserat material om php och webprogrammering. Föreläsningarna presenterar de viktigaste teoretiska begreppen och demonstrerar viktiga arbetssätt inom databasteorin. Lektionerna används till övningar och även till projektet. En laborationsövning (två labbpass) där ni övar användandet av SQL samt ett projekt där ni i par utformar en websajt med tillhörande databas ingår också. Vi kommer att inleda med den teoretiska grunden till databaser och på det sista lektionspasset (i datorsal) gå igenom viktiga koncept inom dynamisk generering av websidor och viktiga konstruktioner i php.

Kursinnehåll

Kursen består av två delar, databasteori/praktik och webprogrammering. I databasteoridelen går vi igenom de grundläggande begreppen inom databasområdet. I grunden handlar det om hur man med hjälp av datorer kan lagra och hantera stora mängder data i databaser. Kommunikation med och underhåll av databasen sker genom ett program eller programsystem som kallas databashanterare. Kursens mål är att ni ska bli bekanta med hur man använder sig av en vanlig databashanterare, MySql, för att skapa och underhålla databaser.

Om man ska skapa en databas som beskriver en del av verkligheten, t. ex. ett företag, brukar man börja med att göra en beskrivning av hur den delen av verkligheten ser ut och fungerar, en s. k. begreppsmässig datamodell. Den metod som vi ska använda oss av kallas ER-modellering. Denna begreppsmässiga modell har i princip ingenting med datorer att göra, utan är en beskrivning av verkligheten som lika gärna skulle kunna användas t. ex. av någon som vill analysera hur företaget fungerar.

Sedan måste den begreppsmässiga modellen översättas till en datamodell som kan implementeras i form av en databas. Det finns flera sådana datamodeller men vi kommer att ägna oss åt relationsmodellen, och se hur man gör för att modellera sina data med den. För att vi ska kunna komma åt databasen, dvs ställa frågor om de data som finns, ändra dessa data, eller definiera vilka data som ska lagras, erbjuder databashanteraren flera olika gränssnitt, t. ex. olika frågespråk eller andra konstruktioner. Vi kommer framför allt att använda oss av frågespråket SQL.

Webprogrammeringsdelen förutsätter grundläggande kunskaper i att lägga upp websidor (om ni har svårt för det, gå tillbaka till STONE, från hösten i årskurs ett, era konton ska finnas kvar). Kursen visar på ett sätt att designa grupper av websidor genom att använda CSS och för att generera dynamiskt innehåll med hjälp av programmeringsspråket php. Ett omfattande material om webprogrammering finns på nätet.

Sidansvarig: Eva L. Ragnemalm
Senast uppdaterad: 2010-11-08