Hva er generisk programmering?
Generisk programmering er en populær type dataprogrammering skrevet på en slik måte at den skaper en mest mulig effektiv kode, samtidig som koden kan gjelde i så mange situasjoner som mulig uten å kreve endringer i selve den opprinnelige koden. Når koden er skrevet, kan den bare utføre de nøyaktige funksjonene den ble skrevet til. Ved å bruke generisk programmering for å lage koder som fungerer i en rekke forskjellige situasjoner, mens de fremdeles utfører den samme grunnleggende, generelle funksjonen, kan programmerere bruke et enkelt stykke kode i forskjellige programmer uten noen gang å gjøre endringer i originalen.
I løpet av 1970-årene debuterte generisk programmering i programmeringsspråkene Ada og CLU. Like etter begynte andre programmeringsspråk som Java og C ++ å bruke generisk programmering for å forenkle programmeringskoden samtidig som den samme koden kunne brukes i flere scenarier. Hvert programmeringsspråk har en spesiell måte å bruke denne koden og forskjellige uttrykk for å beskrive den. "Generiske", "maler" og "parameteriserte typer" er alle blitt brukt på et eller annet tidspunkt for å referere til forekomster av generisk programmering.
For å forstå denne typen programmering er det viktig å vite de grunnleggende konseptene for hvordan et programmeringsspråk fungerer. Hvis for eksempel Paul ønsker å skrive et program som legger til to tall sammen, ville han skrevet ut datakoden for å legge til to objekter. Han vil da fortelle datamaskinen at de to objektene er tall, og at det endelige svaret også skal være et tall.
Mens programmet vil fungere så lenge Paul legger til to tall, vil det krasje hvis han prøver å legge til noe annet sammen. Hvis Paul bestemte seg for å strenge setninger sammen for å danne et avsnitt, ville programmet krasje fordi det ville finne bokstaver og ikke tall. Paul kunne imidlertid løse dette problemet ved å bruke generisk programmering for å fortelle det opprinnelige programmet om å godta et antall variabler - både tall og bokstaver - og dermed kunne programmet lage setninger eller utføre tillegg.
Ikke alle programmeringsspråk trenger konseptet generisk programmering for at de skal være effektive. De som bruker det, er statisk skrevne språk. Dette betyr ganske enkelt at koden er satt i stein, så å si, og ikke kan endres mens programmet kjører. Av denne grunn, hvis en programmerer spesifiserte at innspill fra brukeren skulle være i form av bokstaver og brukeren skrev inn et nummer, kunne ikke programmet bruke inndata. Dermed prøver programmerere å forutse alle logiske datatyper en bruker kan legge inn, det være seg tall, bokstaver eller symboler, og lage et program som kan justeres deretter.