Kurs-PM

 

Förkunskaper

 

Den här kursen är en fortsättningskurs i objektorienterad programmering. För att kunna följa kursen krävs det kunskaper i grundläggande objektorienterad programmering (variabler, operationer, logik, vektorer, metoder, klassbibliotek, objekt, undantag, inmatning och utmatning, skapa nya objekttyper).

 

 

Innehåll

 

Det finns olika strategier för att definiera och utveckla nya objekttyper. En definitionsklass kan skapas via arv, och placeras på ett visst ställe i en klasshierarki. Objekt av klasser i en klasshierarki bildar en släkt. Olika gränssnitt kan definieras och användas, och på så sätt kan släktskap mellan objekt implementeras även bortom en klasshierarkis gränser.

 

Ett program kan kommunicera med sina användare via ett terminalfönster. Men det går även att skapa egna fönster, och kommunicera med användarna via dessa fönster. Fönster med olika komponenter kan utformas och implementeras.

 

Det går att skriva och rita i ett programs fönster. Olika rittekniker kan användas, och avancerade grafiska komponenter kan skapas.

 

Flera parallella aktiviteter kan pågå i ett och samma program. Vissa resurser kan användas samtidigt från olika håll. I så fall behöver det synkroniseras användningen av dessa resurser. Olika resultat som skapas i en aktivitet, kan tillföras till en annan aktivitet som samtidigt pågår.

 

Ett program som körs på en maskin kan utnyttja resurser som finns på en annan maskin. Två program som körs på olika maskiner kan kommunicera med varandra. Ett program kan tillföra olika tjänster till andra program som ansluter sig.

 

Den här kursen handlar om principer för objektorienterad programmering, om fönster och grafik, och om grafiska användargränssnitt. Den handlar även om parallella aktiviteter i ett program, och om samverkan mellan olika program.

 

 

Mål

 

Principer för objektorienterad programmering ska förstås och kunna användas.

 

Program med egna fönster ska kunna skapas. Olika rittekniker ska kännas till och kunna appliceras. Vackra stillbilder och rörliga bilder ska kunna åstadkommas.

 

Studenten ska kunna skapa program som kan kommunicera med sina användare genom ett grafiskt gränssnitt. Lämpliga grafiska användargränssnitt ska kunna utformas och implementeras.

 

Studenten ska kunna skapa program med flera trådar, och kunna hantera dessa trådar på ett lämpligt sätt. Synkroniserad användning av olika resurser och kommunikation mellan olika trådar ska kunna implementeras.

 

Program som kan kommunicera med varandra ska kunna skapas. Olika typer servrar ska kunna implementeras.

 

Studenten ska känna till viktiga standardklasser, och kunna använda dessa klasser i olika sammanhang.

 

 

Arbetsformer

 

Två arbetsformer används på kursen: föreläsningar och laborationer.

 

På en föreläsning (för alla studenter) införs och utvecklas olika begrep, och dessa begrepp illustreras med lämpliga exempel. Läraren för diskussionen med studenterna i samband med dessa begrepp.

 

En laboration vidareutvecklar de begrepp som införts på föreläsningarna. Studenten löser olika problem vid datorn, och på så sätt verifierar och fördjupar sina kunskaper och förmågor. För att kunna aktivt delta vid laborationstillfällena, utför studenten alla nödvändiga förberedelser i förväg.