JavaScript is disabled in your web browser or browser is too old to support JavaScript. Today almost all web pages contain JavaScript, a scripting programming language that runs on visitor's web browser. It makes web pages functional for specific purposes and if disabled for some reason, the content or the functionality of the web page can be limited or unavailable.

Takk for at du vil dele artikkelen

Den du deler artikkelen med, kan lese og eventuelt lytte til heile artikkelen.
Det gjer vi for at fleire skal oppdage DAG OG TID.

Namnet ditt vert synleg for alle du deler artikkelen med.

TeknologiFeature

Programmeringsspråk

Kvar veke les vi inn utvalde artiklar, som abonnentane våre kan lytte til.
Lytt til artikkelen
Gjentakingsinstruksjon i programmeringsspråket Python.

Gjentakingsinstruksjon i programmeringsspråket Python.

Gjentakingsinstruksjon i programmeringsspråket Python.

Gjentakingsinstruksjon i programmeringsspråket Python.

5891
20220311
5891
20220311

Næringslivet treng stadig fleire arbeidstakarar som er i stand til å programmere. Ingeniørar, økonomar, medisinarar og til og med enkelte journalistar må handtere data på avanserte måtar, og programmering er verktøyet for dette.

Nokre program er enkle, kanskje ein såkalla makro i eit rekneark. Andre er avanserte og må konstruerast i store prosjekt med mange programmerarar som lagar system for bankdrift eller oljeutvinning.

Programmering er ikkje alltid ein enkel dugleik å lære seg, og det kan vere ein fordel å starte tidleg. «Lær kidsa koding!» vart eit slagord for snart ti år sidan. Ideen var at born skulle få hjelp av profesjonelle IT-folk til å lære seg å programmere på fritida. Skuleverket var på etterskot og kunne ikkje tilby opplæring i programmering. I dag har dette endra seg noko, og mange elevar får no høve til å programmere i ung alder.

Programmeringsspråk er konstruerte språk som vi skriv instruksjonar til datamaskiner i. For å bli ein god programmerar må ein lære seg korleis eit slikt språk er bygd opp, kva ein kan uttrykkje i språket, og korleis ein set saman instruksjonar til større einingar som utfører samansette rekneoperasjonar. Programmeraren må kanskje lære seg eitt eller fleire av språka C++, C#, Java eller Python. Nokre av desse er til bruk i spesialiserte samanhengar. Scratch er til dømes eit språk som er spesielt veleigna til programmeringsopplæring for born.

Det er lett for ein erfaren programmerar å lære seg eit nytt programmeringsspråk. Dei har oftast lik oppbygnad, ulikskapen ligg til dømes i korleis ein skriv instruksjonane eller kva skiljeteikn ein nyttar. Utfordringa for programmeraren er helst å finne ei presis løysing på korleis ein skal rekne ut noko. Å finne ut av dei overordna stega for å løyse eit rekne- eller programmeringsproblem er slett ikkje så enkelt, men dette er gjerne viktigare enn det å kunne eit spesielt programmeringsspråk. Det er slike dugleikar kidsa bør lære.

Prosessoren i datamaskiner får instruksjonane sine i form av bits: nullar og einarar. Men det er nærast umogleg for menneske å skrive instruksjonar i dette formatet. Det er tungvint å halde styr på bitane, og faren for feil er enorm. Heilt frå starten av har ein derfor utvikla programmeringsspråk som gjer det lettare å lage og forstå instruksjonane.

Dei språka som vert brukte i dag, har setningsformer som liknar på matematiske uttrykk, men opnar òg for å skrive instruksjonar som kan likne på vanleg språk. Omsetjarprogram, gjerne kalla kompilatorar eller tolkarar, omset setningar i desse språka til binære program.

Alle programmeringsspråk har konstruksjonar som hjelper til med tre viktige mekanismar for kontroll. Desse er sekvens, val og gjentaking. I programmeringsspråket Java brukar ein til dømes eit semikolon for å skilje ein sekvens av instruksjonar. Instruksjonen før semikolonet skal utførast først. Setningane «a = b + 5; b = a + 2» vil altså gje eit anna resultat enn om setningane var i motsett rekkjefølgje. Ei valsetning kan sjå ut som «if (a < c ) {a = -c} else {a = c}».

I figuren over kan du sjå fire Python-programlinjer med ei gjentakingssetning. Gjentakinga er indikert med nøkkelordet «for». Du kan jo gjette kva dette reknar ut. For ein erfaren programmerar er dette som å snakke morsmål.

I eksempla ser vi ord eller namn som a, b og sum. Desse representerer data som programmet reknar med, og vert brukte av programmeraren til å mellomlagre data, men òg til å utrykkje formlar som skal reknast ut. Vi kallar desse namna for variablar, og dei kan innehalde tal, teikn (som bokstavar), ord, men òg endå meir komplekse data. Ein kan ha tabellar av slike variablar der ein kan få tilgang til kvart tabellelement ved hjelp av språkkonstruksjonar. «a[5]» kan til dømes vise til elementet i posisjon 5 i tabellen a.

Desse tre mekanismane er ikkje nok for å få til ei effektiv og feilfri programmering, og ein har derfor utvikla måtar å setje saman mindre programdelar til modular på. Dette vert ofte kalla objektorientering. Ein programmerar skriv det ein kallar klassar. Desse klassane skildrar korleis datamaskina skal rekne med ting som er viktige for programvara.

I ein bankapplikasjon vil ein gjerne ha ein klasse som heiter konto. Kontoen har data som inneståande, rentesats og eigar. Men i tillegg kan ein for ein konto ha metodar, det vil seie små programbitar som utfører ein konkret operasjon. Ein typisk operasjon vil vere innskot, som inneheld instruksjonar som aukar inneståande med innskotet.

Kvifor det heiter objektorientering? Kvar konto i banken kan no representerast med eit kontoobjekt i programmet. Kontoobjektet oppfører seg på den måten som er skildra i kontoklassen, og det er likt for alle kontoobjekt.

Kidsa som skal lære seg koding, byrjar nok ikkje med objektorientering, men denne tilnærminga er heilt essensiell i moderne programmering. Det er nesten umogleg å lage komplekse programsystem utan ein slik tenkjemåte. Korkje sosiale medium, ferdigutfylte sjølvmeldingar eller kjøp av flybillettar på veven hadde vore lett å få til.

Objektorientering vart funne opp av informatikkprofessorane Ole Johan Dahl og Kristen Nygaard ved Universitetet i Oslo på 1960-talet. Dei konstruerte programmeringsspråket Simula, som vart modell for mange andre viktige programmeringsspråk i ettertida. Dei fekk fortent nok Turing-prisen, datavitskapens nobelpris, for dette arbeidet.

Bjørnar Tessem og Lars Nyre

Digital tilgang til DAG OG TID – heilt utan binding

Prøv ein månad for kr 49.
Deretter kr 199 per månad. Stopp når du vil.


Eller kjøp eit anna abonnement

Næringslivet treng stadig fleire arbeidstakarar som er i stand til å programmere. Ingeniørar, økonomar, medisinarar og til og med enkelte journalistar må handtere data på avanserte måtar, og programmering er verktøyet for dette.

Nokre program er enkle, kanskje ein såkalla makro i eit rekneark. Andre er avanserte og må konstruerast i store prosjekt med mange programmerarar som lagar system for bankdrift eller oljeutvinning.

Programmering er ikkje alltid ein enkel dugleik å lære seg, og det kan vere ein fordel å starte tidleg. «Lær kidsa koding!» vart eit slagord for snart ti år sidan. Ideen var at born skulle få hjelp av profesjonelle IT-folk til å lære seg å programmere på fritida. Skuleverket var på etterskot og kunne ikkje tilby opplæring i programmering. I dag har dette endra seg noko, og mange elevar får no høve til å programmere i ung alder.

Programmeringsspråk er konstruerte språk som vi skriv instruksjonar til datamaskiner i. For å bli ein god programmerar må ein lære seg korleis eit slikt språk er bygd opp, kva ein kan uttrykkje i språket, og korleis ein set saman instruksjonar til større einingar som utfører samansette rekneoperasjonar. Programmeraren må kanskje lære seg eitt eller fleire av språka C++, C#, Java eller Python. Nokre av desse er til bruk i spesialiserte samanhengar. Scratch er til dømes eit språk som er spesielt veleigna til programmeringsopplæring for born.

Det er lett for ein erfaren programmerar å lære seg eit nytt programmeringsspråk. Dei har oftast lik oppbygnad, ulikskapen ligg til dømes i korleis ein skriv instruksjonane eller kva skiljeteikn ein nyttar. Utfordringa for programmeraren er helst å finne ei presis løysing på korleis ein skal rekne ut noko. Å finne ut av dei overordna stega for å løyse eit rekne- eller programmeringsproblem er slett ikkje så enkelt, men dette er gjerne viktigare enn det å kunne eit spesielt programmeringsspråk. Det er slike dugleikar kidsa bør lære.

Prosessoren i datamaskiner får instruksjonane sine i form av bits: nullar og einarar. Men det er nærast umogleg for menneske å skrive instruksjonar i dette formatet. Det er tungvint å halde styr på bitane, og faren for feil er enorm. Heilt frå starten av har ein derfor utvikla programmeringsspråk som gjer det lettare å lage og forstå instruksjonane.

Dei språka som vert brukte i dag, har setningsformer som liknar på matematiske uttrykk, men opnar òg for å skrive instruksjonar som kan likne på vanleg språk. Omsetjarprogram, gjerne kalla kompilatorar eller tolkarar, omset setningar i desse språka til binære program.

Alle programmeringsspråk har konstruksjonar som hjelper til med tre viktige mekanismar for kontroll. Desse er sekvens, val og gjentaking. I programmeringsspråket Java brukar ein til dømes eit semikolon for å skilje ein sekvens av instruksjonar. Instruksjonen før semikolonet skal utførast først. Setningane «a = b + 5; b = a + 2» vil altså gje eit anna resultat enn om setningane var i motsett rekkjefølgje. Ei valsetning kan sjå ut som «if (a < c ) {a = -c} else {a = c}».

I figuren over kan du sjå fire Python-programlinjer med ei gjentakingssetning. Gjentakinga er indikert med nøkkelordet «for». Du kan jo gjette kva dette reknar ut. For ein erfaren programmerar er dette som å snakke morsmål.

I eksempla ser vi ord eller namn som a, b og sum. Desse representerer data som programmet reknar med, og vert brukte av programmeraren til å mellomlagre data, men òg til å utrykkje formlar som skal reknast ut. Vi kallar desse namna for variablar, og dei kan innehalde tal, teikn (som bokstavar), ord, men òg endå meir komplekse data. Ein kan ha tabellar av slike variablar der ein kan få tilgang til kvart tabellelement ved hjelp av språkkonstruksjonar. «a[5]» kan til dømes vise til elementet i posisjon 5 i tabellen a.

Desse tre mekanismane er ikkje nok for å få til ei effektiv og feilfri programmering, og ein har derfor utvikla måtar å setje saman mindre programdelar til modular på. Dette vert ofte kalla objektorientering. Ein programmerar skriv det ein kallar klassar. Desse klassane skildrar korleis datamaskina skal rekne med ting som er viktige for programvara.

I ein bankapplikasjon vil ein gjerne ha ein klasse som heiter konto. Kontoen har data som inneståande, rentesats og eigar. Men i tillegg kan ein for ein konto ha metodar, det vil seie små programbitar som utfører ein konkret operasjon. Ein typisk operasjon vil vere innskot, som inneheld instruksjonar som aukar inneståande med innskotet.

Kvifor det heiter objektorientering? Kvar konto i banken kan no representerast med eit kontoobjekt i programmet. Kontoobjektet oppfører seg på den måten som er skildra i kontoklassen, og det er likt for alle kontoobjekt.

Kidsa som skal lære seg koding, byrjar nok ikkje med objektorientering, men denne tilnærminga er heilt essensiell i moderne programmering. Det er nesten umogleg å lage komplekse programsystem utan ein slik tenkjemåte. Korkje sosiale medium, ferdigutfylte sjølvmeldingar eller kjøp av flybillettar på veven hadde vore lett å få til.

Objektorientering vart funne opp av informatikkprofessorane Ole Johan Dahl og Kristen Nygaard ved Universitetet i Oslo på 1960-talet. Dei konstruerte programmeringsspråket Simula, som vart modell for mange andre viktige programmeringsspråk i ettertida. Dei fekk fortent nok Turing-prisen, datavitskapens nobelpris, for dette arbeidet.

Bjørnar Tessem og Lars Nyre

Ingeniørar, økonomar, medisinarar og til og med enkelte journalistar må handtere data på avanserte måtar, og programmering er verktøyet for dette.

Emneknaggar

Fleire artiklar

Ei lauvtynn silisiumskive foredla til mikrobrikker på laboratoriet til Sintef i Forskingsparken i Oslo.

Ei lauvtynn silisiumskive foredla til mikrobrikker på laboratoriet til Sintef i Forskingsparken i Oslo.

Foto: Sindre Deschington

ReportasjeFeature

Mikrobrikkene som formar framtida

Finst det ein snarveg til å forstå stormaktsspelet og teknologien bak dei viktige databrikkene? Ja, ein kan ta turen til Sintefs laboratorium på Blindern i Oslo.

Christiane Jordheim Larsen
Ei lauvtynn silisiumskive foredla til mikrobrikker på laboratoriet til Sintef i Forskingsparken i Oslo.

Ei lauvtynn silisiumskive foredla til mikrobrikker på laboratoriet til Sintef i Forskingsparken i Oslo.

Foto: Sindre Deschington

ReportasjeFeature

Mikrobrikkene som formar framtida

Finst det ein snarveg til å forstå stormaktsspelet og teknologien bak dei viktige databrikkene? Ja, ein kan ta turen til Sintefs laboratorium på Blindern i Oslo.

Christiane Jordheim Larsen

Teikning: May Linn Clement

Kultur

Samlaren

Einar Økland vil helst høyra noko han ikkje har høyrt før – og så skriv han ein lyrisk tekst som han ikkje visste at han kunne skriva. Deretter held han fram med å samla.

Jan H. Landro

Teikning: May Linn Clement

Kultur

Samlaren

Einar Økland vil helst høyra noko han ikkje har høyrt før – og så skriv han ein lyrisk tekst som han ikkje visste at han kunne skriva. Deretter held han fram med å samla.

Jan H. Landro

les DAG OG TID.
Vil du òg prøve?

Her kan du prøve vekeavisa DAG OG TID gratis i tre veker.
Prøveperioden stoppar av seg sjølv.

Komplett

Papiravisa
Digital utgåve av papiravisa
Digitale artiklar
Digitalt arkiv
Lydavis

Digital

Digital utgåve av papiravisa
Digitale artiklar
Digitalt arkiv
Lydavis

Komplett

Papiravisa
Digital utgåve av papiravisa
Digitale artiklar
Digitalt arkiv
Lydavis

Digital

Digital utgåve av papiravisa
Digitale artiklar
Digitalt arkiv
Lydavis