Wat betekent mapping bij programmeren?

Ik hoor vaak dingen als:

  • De klassen in kaart brengen
  • De objecten uit de database in kaart brengen
  • De objecten in kaart brengen
  • De elementen van een lijst in kaart brengen
  • Een mapper

Wat doet een mapper en de handeling van iets echt gemeens in kaart brengen?

Reacties

  • Het betekent items uit de ene set matchen met items in een andere set – of het betekent een functie uitvoeren op elk item in een set om een nieuwe bijbehorende set. Wat wiskundig gezien ongeveer hetzelfde is. Het kan dus betekenen dat tabellen in een database worden vergeleken met objecten in code. Of een bewerking uitvoeren op elk item in een lijst. Een mapper is een functie of klasse die items in de ene set matcht met items in een andere.

Answer

De programmeergebruik van het werkwoord “map” en het zelfstandig naamwoord “mapper” zijn grotendeels niet gerelateerd aan hun algemeen gebruik in het Engels, dus dit is een zeer begrijpelijke vraag.

Het programmeergebruik is ook erg breed, dus laten we ” s beginnen met de meest concrete en goed gedefinieerde betekenis van “kaart”. Namelijk de hogere orde map -functie die aanwezig is in de meeste functionele programmeertalen. Hier is een triviaal voorbeeld ervan in Javascript:

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

De map -functie vereist een array en een andere functie. Het retourneert een nieuwe array die het resultaat is van het toepassen van die functie op alle elementen van de originele array.

Alle andere toepassingen van de term kunnen, althans in mijn ervaring, worden beschouwd als analoog aan deze specifieke. In de meest algemene zin betekent “mapping” bij programmeren het nemen van verschillende dingen en ze vervolgens op de een of andere manier aan een ander ding koppelen.

Een typisch maar onnauwkeurig gebruik in mijn dagelijkse werk zou zijn “UI-gebeurtenissen toewijzen aan handlerfuncties”. Als de gebruiker bijvoorbeeld op knop 1 klikt, wil ik dat handleButton1Click wordt gebeld, en wanneer de gebruiker met de muis over een afbeelding zweeft, wil ik handleImageHover om gebeld te worden.

Een van de meest geavanceerde toepassingen van deze term is ORM (object-relationele mapping), wat betekent dat rijen in een relationele database worden toegewezen aan objecten in een OOP-taal, zodat u kan “normale” objecten in uw code manipuleren zonder direct SQL te hoeven schrijven of zich zorgen te maken over de structuur van de database.

Answer

Het “een wiskundig concept.

www.thefreedictionary.com

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

Het is bedoeld om een overeenkomst tot stand te brengen tussen twee verschillende gegevensmodellen.

  • U kunt bijvoorbeeld zeggen dat de klasse User is een weergave van een rij van de databasetabel USER, dat zou object-relationele-mapping zijn.
  • Of je kunt een sleutel / waarde-paarlijst maken die zegt dat een bepaald element van de ene lijst overeenkomt met een element van de andere lijst.

Ik denk dat je moedertaal is Spaans gezien uw gebruikersnaam, mapping of “to map” kan vertaald worden als emparejar .

Reacties

  • Uw beschrijving is waarschijnlijk alleen begrijpelijk voor iemand die al ervaring heeft met het in kaart brengen.
  • @RobertHarvey Ik heb het enigszins verbeterd.

Antwoord

Over het algemeen is “mapping” een associatie van sommige waarden met andere waarden. Het impliceert meestal een handmatig proces. Het impliceert meestal een vaste associatie. Overweeg ASCII-waarden:

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

De volledige set associaties wordt een mapping (zelfstandig naamwoord) genoemd. Het hebben van de karakters en de cijfers en maken de associaties wordt ook wel een mapping (werkwoord) genoemd. Het verschilt van een functie, omdat een functie enige invoer nodig heeft en de uitvoer produceert op basis van een berekening. Toewijzingen doen over het algemeen geen berekening, maar een soort opzoeking.

Antwoord

Een geografische kaart vertaalt de echte wereld oriëntatiepunten naar een ander formaat: een gemakkelijk leesbaar stuk papier.

In kaart brengen in de wetenschap is hetzelfde idee. Je neemt een set objecten uit het ene domein en vertaalt ze naar een ander voor een ander gebruik.

Het is een breed concept dat algemeen kan worden gebruikt voor een aantal situaties.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *