Unterschied zwischen mappen - parsen - einlesen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
dor_neue
User
Beiträge: 74
Registriert: Montag 16. Juni 2008, 18:51

BlackJack hat geschrieben: Und zu "Mappen" gibt's ja eine Definition, nämlich "Abbilden" von einem Wert auf einen anderen, oft äquivalenten Wert.
Ich weiß was Du meinst, aber diese Definition gibt es eben nicht - leider...
Somit kann jeder den Begriff ein wenig anders auslegen - Problem dabei - ich muss mit meinem Dozenten arbeiten und mir somit angewöhnen welche Fachbegriffe er wann verwendet. Eine Korrektur klingt zwar einfach, aber wer sich mal an seine Schulzeit zurückerinner und überlegt wie es war den Lehrer zu belehrern - weißt was ich meine?!?

Somit bleibt für mich ein Berg Eindrücke die ich hier zu dem Thema sammeln konnte und das Wissen wie es andere Leute verstehen wenn ich sage eine XML-Datei parsen oder mappen.
Grundsätzlich würde ich auch mappen mittlerweile mehr als Abbildung verstehen - hab auch ein Beispiel gelesen gehabt mit binären schreiben von structs in Datei (unter C) und das wiederauslesen wurde dann als mappen bezeichnet - ich glaube das kommt meiner Definition am nächsten (oder eben Dein Beispiel mit Hibernate unter Java)
BlackJack

Doch diese Definition gibt es. "to map" und "abbilden" sind Fachbegriffe in der Mathematik und damit auch in der Informatik. Es ist halt bloss ein sehr allgemeiner Begriff, da sich sehr vieles als Abbildung auffassen lässt. Funktionen bilden Werte auf andere ab, Dictionaries bilden Schlüssel auf Werte ab, Listen bilden Indizes auf Werte ab, ORMs bilden Objekte auf Datenbankinhalte ab und umgekehrt, usw.
Benutzeravatar
keppla
User
Beiträge: 483
Registriert: Montag 31. Oktober 2005, 00:12

Auch ich kann mich dem anschliessen, dass Mapping (mindestens auch) ein Fachbegriff für "Abbildung" ist. Typische Mappings aus den Vorlesungen waren hashfunktionen.
Den Unterschied zwischen Mapping und Parsing sehe ich da, dass ich beim Mapping erwarten würde, dass die Mächtigkeit einer eingabemenge die der ausgabemenge ist (korrigiert mich).
Beim Parsing kann aus mehreren Eingabeelementen ein Eusgabelement entstehen (z.b. aus vielen zeichen ein token, aus tokens ausdrücke, etc).
Panke
User
Beiträge: 185
Registriert: Sonntag 18. März 2007, 19:26

Auch ich kann mich dem anschliessen, dass Mapping (mindestens auch) ein Fachbegriff für "Abbildung" ist. Typische Mappings aus den Vorlesungen waren hashfunktionen.
Den Unterschied zwischen Mapping und Parsing sehe ich da, dass ich beim Mapping erwarten würde, dass die Mächtigkeit einer eingabemenge die der ausgabemenge ist (korrigiert mich).
Eine typische Hashfunktion wär für die Mächtigkeitsgeschichte schon ein Gegenbeispiel.
Benutzeravatar
keppla
User
Beiträge: 483
Registriert: Montag 31. Oktober 2005, 00:12

Eine typische Hashfunktion wär für die Mächtigkeitsgeschichte schon ein Gegenbeispiel.
Ok, ich habe hier "menge" etwas ungenau genutzt.
Gemeit war, dass ich für jeden Eingabewert genau einen Ausgabewert habe, auch wenn ich vielleicht bei mehreren Eingaben die gleiche Ausgabe bekomme. Um das mal besser zu formulieren:

Code: Alles auswählen

assert len(some_list) == len( map(hash_function, some_list) )
Du meintest sowas wie

Code: Alles auswählen

assert not len(set(some_list)) == len( set(map(hash_function, some_list) )
Panke
User
Beiträge: 185
Registriert: Sonntag 18. März 2007, 19:26

Ach, so hast du das gemeint. Also mir würde das als Begriffsdefinition für 'mapping' nicht reichen. Mein Vorschlag wäre ja, so schwammige Begriffe schlichtweg zu vermeiden und bei Konfrontation mit ihnen einfach nachzufragen.
Pekh
User
Beiträge: 482
Registriert: Donnerstag 22. Mai 2008, 09:09

Wie wäre es mit folgendem Ansatz:

mappen: Abbilden von etwas (in diesem Fall einem Dateiinhalt) auf etwas anderes (in diesem Fall eine Datenstruktur). Definiert sind Ausgang und Ziel, nicht aber der Weg dorthin (Was, aber nicht wie).

parsen: Sehe ich mehr als eine Beschreibung des Weges, als die Frage wie ich die eine Struktur umwandele.

Mappen wäre also eine mathematische/funktionale Beschreibung des Vorgangs, Parsen eine algorithmische.
dor_neue
User
Beiträge: 74
Registriert: Montag 16. Juni 2008, 18:51

Pekh hat geschrieben:Wie wäre es mit folgendem Ansatz:

mappen: Abbilden von etwas (in diesem Fall einem Dateiinhalt) auf etwas anderes (in diesem Fall eine Datenstruktur). Definiert sind Ausgang und Ziel, nicht aber der Weg dorthin (Was, aber nicht wie).

parsen: Sehe ich mehr als eine Beschreibung des Weges, als die Frage wie ich die eine Struktur umwandele.

Mappen wäre also eine mathematische/funktionale Beschreibung des Vorgangs, Parsen eine algorithmische.
würde ja heißen, dass jeder Parser eigentlich auch ein Mapper ist...
Neee, die Definition find ich doof :P
Antworten