1.5. Programmering

Ethvert program, som f.eks. tekstbehandlingsprogram, regneark, e-post, tegneprogram, spil, webserver består af nogle data (f.eks. hjælpefiler og opsætningsfiler) og en samling instruktioner til computeren.

Hver instruktion er meget simpel, og computeren udfører den ubetinget, uanset om det er smart eller ej. En computer kan udføre instruktionerne ekstremt hurtigt (over 1 milliard instruktioner pr. sekund), og det kan få computeren til at virke smart, selvom instruktionerne er simple.

1.5.1. Styresystemet

Styresystemet er det program, som styrer computeren, og tillader brugeren at bruge andre programmer. Af styresystemer kan nævnes Linux, DOS, Windows, MacOS, OS/2, UNIX.

Styresystemet styrer computerens hukommelse og eksterne enheder som skærm, tastatur, mus, disk, printere og netværksadgang. Det tilbyder tjenester til programmerne, f.eks. muligheden for at læse på disken eller tegne en grafisk brugergrænseflade.

Et program kan normalt kun køre på et bestemt styresystem. Javaprogrammer kan dog køre på flere styresystemer, og de bruges derfor bl.a. som programmer, der automatisk hentes ned til brugerens web-browser, og afvikles der. Den type programmer kaldes appletter eller miniprogrammer.

1.5.2. Hvorfor lære at programmere?

Det er sjovt og spændende, og kan være en kilde til kreativitet og leg at skabe sine egne programmer. Man kan bedre forestille sig nye løsninger og produkter, og man får bedre kendskab til computeres formåen og begrænsninger.

Desuden er det et håndværk, der er efterspurgt blandt IT-virksomheder og mange andre. Ved hjælp af programmering kan du løse problemer, og du er dermed ikke mere afhængig af, at andre laver et program, der opfylder dine behov.

Programmering er en af datalogiens helt basale discipliner, og selv om man ikke arbejder som programmør, kan kendskab til programmering være en stor fordel i mange beslægtede fag.

Java er et sprog, der har stor udbredelse såvel i industrien som i akademiske kredse. Det er kraftfuldt og relativt let lært. Lærer du Java, har du et godt fundament til at lære andre programmeringssprog.

1.5.3. Et simpelt program

For at computeren kan arbejde, skal den have nogle instruktioner, den kan følge slavisk. For at lægge to tal, som brugeren oplyser, sammen kunne man forestille sig følgende opskrift:

  1   Skriv "Indtast første tal" på skærmen
  2   Læs tal fra tastaturet
  3   Gem tal i lagerplads A
  4   Skriv "Indtast andet tal" på skærmen
  5   Læs tal fra tastaturet
  6   Gem tal i lagerplads B
  7   Læg indhold af lagerplads A og indhold af lagerplads B sammen
  8   Gem resultat i lagerplads C
  9   Skriv "Summen er:" på skærmen
  10  Skriv indhold af lagerplads C på skærmen

Et program minder lidt om en kogebogsopskrift, som computeren følger punkt for punkt ovenfra og ned. Hvert punkt (eller instruktion eller kommando) gøres færdigt, før der fortsættes til næste punkt.

1.5.4. Hvordan lærer man at programmere

Man lærer ikke at programmere blot ved at læse en bog. Har man ikke tid til at øve sig og eksperimentere med det man læser om, spilder man bare sin tid. For de fleste kræver det en stor arbejdsindsats at lære at programmere, og for alle tager det lang tid, før de bliver rigtig dygtige til det.

Der er kun én måde at lære at programmere på: Øv dig

Der er blevet lavet forskning, der underbygger dette. P.M. Cheney konkluderer, at den eneste betydende faktor i produktiviteten for programmører er: Erfaring. Han fandt i øvrigt forskelle i produktiviteten på en faktor 25.

Artiklen hedder 'Effects of Individual Characteristics, Organizational Factors and Task Characteristics on Computer Programmer Productivity and Job Satisfaction' og kan findes i Information and Management, 7, 1984.