IBE151 18H Praktisk programmering

IBE151 18H Praktisk programmering

Faglærer

Professor Kai A. Olsen. (kai.olsen@himolde.no), Google Scholar profil

Innhold

Programmering, også kalt koding, er grunnlaget for all IT. Med programmering kan en få datamaskinen til å gjøre det en vil. Selvfølgelig kan vi også bruke maskinen uten å kunne programmere. I dag finnes det en rekke ferdige programmer, alt fra operativsystem (som administrerer maskinen) til tekstbehandlingssystem, programvare for å lage blogger, for å styre sosiale nett eller industriprosesser. Men den som kan programmere vil stå sterkt. Tenk bare på hvor mange rutinepregede enkle oppgaver som utøves hver dag i offentlig administrasjon eller i næringslivet. Den som kan programmere kan få systemene til å utføre mange av disse oppgavene automatisk.

I forretningslivet vil den som bruker ferdige systemer gjerne ikke komme bedre ut enn konkurrenten som bruker det samme eller lignende systemer. Men den som kan lage egne system kan få et fortrinn. Kan en programmere selv vil en ikke bare ha mulighet til å utvikle det som ikke finnes, men en vil også bli en langt bedre bruker av ferdige programmer. I tillegg, mange moderne datasystem gir muligheter for utvidelse. For eksempel kan tekstbehandlingssystemet Word utvides med bruk av makroer. En makro er en liten programbit som integreres i det større systemet. Da får en både i pose og sekk. Et ferdig system og muligheter til å tilpasse dette til egne behov. Også Excel og mange andre systemer har den samme muligheten.

I IBE151 skal vi bruke Microsoft Access som verktøy. Dette er et komplett utviklingssystem. Her har vi alt vi trenger for å lage ferdige systemer: verktøy for å lage skjema, database for å lagre data, spørrespråk for å hente fram data og - viktigst - et godt programmeringsspråk (VBA). VBA (Visual Basic for Applications) er en variant av programmeringsspråket Visual Basic. Visual Basic er et av de mest brukte programmeringsspråkene. VBA varianten brukes også som makrospråk i Word, Excel og PowerPoint (Office pakken), men også i en rekke andre programsystemer. Skal en lage scripts for nettsider kan disse gjerne programmeres i VBA.

Det er laget en eget lærebok for IBE151. Vi vil følge denne i kurset. Her skal vi konsentrere oss 100 % om å lage programmer og enkle datasystemer. Dette vil bli gjort gjennom presentasjoner, der faglærer programmerer interaktivt. Med tekst og tale får studenten detaljert kunnskap om systemutviklingen, oppbygging av database, brukergrensesnitt og programkode. Mens presentasjonene vil være en god innføring vil læreboken kunne brukes for at en selv skal få forståelse for oppgaven. Læreboken vil også være uunnværlig for oppslag.

Det en vil se er at programmering ikke er vanskelig. For mange er det imidlertid en ny måte å tenke på, og det skal vi bruke tid på å få inn. Studentene må imidlertid regne med å bruke mye tid på kurset - til å følge presentasjonene og til å gjøre øvingsoppgavene. Mens presentasjonene bare viser hvordan det kan gjøres er det viktig at en jobber selv. For denne delen er det lagt opp til et større antall øvingsoppgaver. De av studentene som er tilstede i Molde vil kunne få hjelp til øvingsoppgavene i laboratoriet. Studenter som følger nettvarianten kan sende inn spørsmål og få hjelp via læresystemet Canvas.

Vi skal programmere fra første til siste dag. Hver presentasjon tar opp et problem, diskuterer dette og viser mulige løsninger. Vi starter enkelt, f.eks. med å lage en rutine som konverterer valuta, fra norske kroner til dollar. Deretter programmeres løsningen av faglærer.

Forelesningnotater er presentert som PowerPoint filer og som Access applikasjoner. Har du ikke PowerPoint kan du laste ned en Powerpoint-viewer gratis fra nettet ( Powerpoint-viewer fra Microsoft.)

Obligatoriske øvinger (oppgaver)

Øvingene er obligatoriske og må leveres inn innen de oppgitte frister (merk at Canvas kaller disse oppgaver. De ligger da under denne overskriften i menyen). Fristene er på fredager, men siden vi ikke ser på dette før mandagen aksepteres innlevering innen kl 0800 denne dagen. Alle øvingene minus en må være godkjent for at en må gå opp til eksamen. Vi aksepterer altså at en av øvingene ikke blir levert eller ikke blir godkjent. Øvingene vil stort sett være identiske med de som er presentert i læreboken.

Lærebok

Kai A. Olsen (2018) Praktisk programmering, Cappelen Damm, vil bli tilgjengelig i august. 

Læreboken er laget for dette faget og vi vil følge denne gjennom hele semesteret. Mens presentasjonene er velegnet for å få innblikk i en oppgave, vil læreboken gi muligheter for grunnleggende forståelse. Ikke minst er den viktig for oppslag.

Eksamen <blir oppgitt senere>

Digital eksamen (mer om dette kommer senere). Svaret skal legges inn som programkode/tekst. Access brukes ikke under eksamen. Alle trykte og skrevne hjelpemidler er tillatt under eksamen. 

 

I løpet av semesteret skal vi løse oppgaver som:

  • Valutakonvertering
  • Konvertering fra Celsius til Fahrenheit.
  • Analysere et datasett med temperaturer, for å finne gjennomsnitt, varmeste temperatur og kaldeste
  • Analysere et tenkt datasett med temperatur og måledato fra en forsker for å se opp det blir varmere.
  • Utvikle et enkelt regnskapssystem
  • Konvertering av data mellom forskjellige koordinatsystemer.
  • Utvikle programmer for koding (kryptografi) og dekoding av tekst.
  • Utvikle en "enarmet banditt" - en spillemaskin.
  • Beregne forsinkelser på ordrer (antall dager fra lovet lewvering til virkelig levering)
  • Lage et kalenderprogram for framtiden der alle helgedager (også påske) blir lagt inn.
  • Utvikle en T9-ordbok for en mobiltelefon.
  • Finne optimale løsninger for industrielle problemer.
  • Beskrive en produktstruktur.
  • Konvertere mellom kart-koordinatsystemer.
  • Lagre makroer som plasserer bilder i Word.
  • Lage et system som automatisk tilordner plass på fly, kino m.m.
  • Lage et program som løser Sudoku oppgaver.

... og mye annet. Selv om noen av oppgavene er "spillpreget" gir de likevel innsikt i viktige sider av programmering. Vi skal også utvikle noen mer "seriøse" systemer, enkle varianter av de systememne som brukes i næringslivet i dag.

Pensum er definert ut fra presentasjoner, programeksempler og øvinger. Alle programmer vil bli lagret i Canvas under de respektive modulene. 

Emnesammendrag:

Dato Detaljer