Hva betyr kartlegging i programmering?

Jeg hører ofte ting som:

  • Kartlegging av klassene
  • Kartlegging av objektene fra databasen
  • Kartlegging av objektene
  • Kartlegging av elementene i en liste
  • En kartlegger

Hva gjør en kartlegger og handlingen av å kartlegge noe egentlig betyr?

Kommentarer

  • Det betyr å matche elementer fra ett sett med elementer i et annet sett – eller det betyr å utføre en funksjon på hvert element i ett sett for å få et nytt tilsvarende sett. Som er slags det samme matematisk sett. Så det kan bety å matche tabeller i en database med objekter i koden. Eller utføre en operasjon på hvert element i en liste. En kartlegger er en funksjon eller klasse som samsvarer med elementer i ett sett med elementer i et annet.

Svar

programmeringsbruk av verbet «map» og substantivet «mapper» er stort sett ikke relatert til deres vanlige bruksområder på engelsk, så dette er et veldig forståelig spørsmål.

Programmeringsbruken er også veldig bred, så la » s starter med den mest konkrete og veldefinerte betydningen av «kart». Nemlig den høyere ordens map -funksjonen som er tilstede i de fleste funksjonelle programmeringsspråk. Her «er et trivielt eksempel på det i Javascript:

var numbers = [1, 2, 3, 4]; var timesTwo = function(n) { return n * 2; } numbers.map(timesTwo); // [2, 4, 6, 8] 

map -funksjonen krever en matrise og en annen funksjon. Den returnerer en ny matrise som er resultatet av å bruke den funksjonen til alle elementene i den opprinnelige matrisen.

Alle andre bruksområder for begrepet kan, i det minste etter min erfaring, betraktes som analoge med denne spesifikke. I den generelle forstand betyr «kartlegging» i programmering å ta flere ting og deretter på en eller annen måte knytte hver av dem til en annen ting.

En typisk, men upresis bruk i det daglige arbeidet mitt, ville være å «kartlegge UI-hendelser til behandlerfunksjoner». Når brukeren for eksempel klikker på knapp 1, vil jeg at handleButton1Click skal ringes, og når brukeren svever over et bilde, vil jeg at handleImageHover for å bli kalt.

En av de mest høye bruken av dette begrepet er ORM (object-relational mapping), som betyr å kartlegge rader i en relasjonsdatabase til objekter i et OOP-språk, slik at du kan manipulere «normale» objekter i koden din uten å måtte skrive SQL direkte eller bekymre deg for strukturen i databasen.

Svar

Det er et matematisk konsept.

www.thefreedictionary.com

2. Mathematics The correspondence of elements in one set to elements in the same set or another set. 

Det er å etablere en samsvar mellom to forskjellige datamodeller.

  • Du kan for eksempel si at klassen User er en representasjon av en rad i databasetabellen USER, det ville være objekt-relasjonell-kartlegging.
  • Eller du kan opprette en nøkkelverdi-parliste som sier at et gitt element i en liste tilsvarer det ene elementet i den andre listen.

Jeg antar at din morsmål er spansk gitt brukernavnet ditt, kartleggingen eller «til kartet» kan oversettes som emparejar .

Kommentarer

  • Beskrivelsen din vil sannsynligvis bare være forståelig for noen som allerede har erfaring med kartlegging.
  • @RobertHarvey Jeg forbedret den slags.

Svar

Generelt sett er «mapping» noen tilknytning av noen verdier til andre verdier. Det har en tendens til å antyde en manuell slags prosess. Det har en tendens til å antyde en fast tilknytning. Vurder ASCII-verdier:

"a" -> 97 "b" -> 98 "c" -> 99 ... 

Hele settet med assosiasjoner kalles en kartlegging (substantiv). Å ha tegnene og tallene og lage assosiasjonene kalles også en kartlegging (verb). Den skiller seg fra en funksjon, ettersom en funksjon tar noe input og produserer output basert på noen beregninger. Kartlegginger gjør vanligvis ikke en beregning, men i stedet en slags oppslag.

Svar

Et geografisk kart oversetter den virkelige verden landemerker til et annet format: et papir som er lett å lese.

Kartlegging i vitenskap er den samme ideen. Du tar et sett med objekter fra ett domene og oversetter dem til et annet for en annen bruk.

Det er et bredt konsept som kan brukes generelt i et hvilket som helst antall situasjoner.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *