Objektorientert utvikling

OOP

Den største utfordringen ved å arbeide objektorientert er ikke selve programmeringsspråket, men den objektorienterte tankemåten. Dette kurset har som mål å hjelpe aktive utviklere fra ikke–objektorienterte miljøer, f.eks. Cobol– eller C–programmerere, til å tenke objektorientert og forstå nytten med objektorientering, men er også nyttig hvis du allerede bruker et objektorientert språk, men vil forsterke din forståelse av selve objektorienteringen. Kurset gir innføring og praktisk trening i objektorientert tankemåte og programmering.

Kurset passer som forkurs for programmeringskurser i objektorienterte språk, f.eks. Java, C#, C++, Objective–C, Python, Ada 95 eller Ruby. Hvis du skal gå et slikt kurs men kjenner deg litt usikker på selve objektorienteringen vil det hjelpe deg til å kunne fokusere på det nye språket og ikke bli forvirret av den nye tankemåten hvis du tar dette kurset først.

MÅLGRUPPE

Målgruppen er aktive programutviklere som arbeider med, eller som skal arbeide med, objektorienterte løsninger, men som savner en innføring i den objektorienterte tankemåten eller som vil forstå den bedre. Mange utviklere tar med seg prosedyrelle eller databaserte tankemåter fra de tradisjonelle språkene over i den objektorienterte verdenen, men får da problem med å utnytte potensialet i den objektorienterte tankemåten for å håndtere modularitet, kompleksitet og forandringsbarhet.

NØDVENDIGE FORKUNNSKAPER

Kurset forutsetter at du har erfaring som aktiv programutvikler, og det er en fordel om du også har arbeidet med analyse og/eller systemdesign, men du behøver ikke å kunne C# eller UML. Vi går gjennom de begrensede delene av C# og UML som brukes på kurset.

MÅL

Etter avsluttet kurs kan du:

  • Delta i objektorientert analyse og design, forstå de begrep som brukes og bidra med egne tanker
  • Forstå betydningen av bra begrepsdannelse, kodesanitet og noen andre grunnleggende, objektorienterte modelleringsprinsipper
  • Forstå og bruke de vanligste UML–symbolene som brukes i objektmodellering, som brukstilfeller, klassediagram med arv og assosiasjoner, objektdiagram for å illustrere eksempelsituasjoner og sekvens– og kommunikasjonsdiagram
  • Programmere enklere oppgaver i C#, et av de vanligste objektorienterte språkene i dag, men også lett overføre den kunnskapen til Java eller C++ som ligner veldig mye på C#
  • Finne klasser ut fra kravbeskrivelse og transformere disse til programkode


GJENNOMFØRING

Kurset består av like deler forelesninger og praktiske øvelser, mest programmeringsøvelser.

For at du skal forstå en objektorientert tankemåte er konkret programmeringspraksis viktig så du får se hva de forskjellige begrepene innebærer i praksis. Derfor inngår praktiske oppgaver fra første stund og gjennom hele kurset. De fleste øvelsene er programmeringsøvelser, men noen er s.k. modelleringsøvelser. Tilsammen hjelper de deg til å forstå hvordan man tenker objektorientert.

Dette er ikke et kurs i noe spesielt programmeringsspråk, men vi må allikevel velge et utviklingsmiljø og et språk for de praktiske programmeringsøvelsene. Da har vi valgt Microsofts Visual Studio og programmeringsspråket C# (C sharp). Med denne bakgrunnen kommer du til å kjenne deg igjen også ved bruk av f.eks. Java eller C++, da alle disse språkene er veldig like. Men tankemåten kan du ta med deg til hvilket programmeringsspråk som helst. Programmeringsøvelsene resulterer i fungerende løsninger og alle øvelsene har fasit. Både fasit og egne løsninger kan du ta med deg hjem og bruke som forbilder senere.

På kurset blir du kjent med og får trening i:

  • Et objektorientert programmeringsspråk (C#)
  • UML–modellering og resonnement rundt løsninger i diagramform
  • Oversettelse av diagramløsninger til fungerende program
  • Identifisering av klasser og objektstrukturer med utgangspunkt i en kravspesifikasjon
  • Moderne utviklingsmetoder, som testdrevet og iterativ problemløsning (TDD)

Tid

09:00 - 16:15