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

Beitragvon dor_neue » Montag 22. September 2008, 12:29

Antwort war:
Einlesen - stures einlesen z.B. einer Textdatei - keine Weiterverarbeitung vorbereitet

Parsen - einen speziellen Teil aus einer z.B. Textdatei herausnehmen und das weiterverarbeiten (z.B. bei einer XML-Datei die Punkt 'Temperatur')

Mappen - übernehmen der ganzen struktur und Hirachie um damit später weiter arbeiten zu können.

Also is in seinen Augen ein XML-parser wie DOM ein Mapper da er ja alle Daten verarbeitet, auch die, die man nicht sofort brauch...


Ich danke Euch für Eure Hilfe und Eure Vorschläge - hat mir geholfen vorbereitet in das Gespräch zu gehen...
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Montag 22. September 2008, 13:54

Also ich finde ja die Unterscheidung zwischen Parsen und Mappen ziemlich arbiträr. Oftmals ist es auch nicht so einfach, Daten selektiv zu parsen, bei XML muss man ja immer auch gucken ob die Anfangstokens entsprechende Endtokens haben.
Zuletzt geändert von Leonidas am Montag 22. September 2008, 15:06, insgesamt 1-mal geändert.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
dor_neue
User
Beiträge: 74
Registriert: Montag 16. Juni 2008, 18:51

Beitragvon dor_neue » Montag 22. September 2008, 14:59

wie gesagt, das war seine Interpretation und die stimmt ja auch zum großen Teil mit der überein was ich so gefunden habe. Schade finde ich es nach wie vor, dass es zum Thema mappen keine Definition gibt wie beim parsen der Fall.
Sowas kann eben Missverständnisse vermeiden - auch wenn die Software, die sich schreibe wohl eher kleiner Fehler enthalten kann, das relativ kompakt und klein...

PS: ich setz mal voraus, dass arbitär sowas wie fließend bzw. willkürlich ist...
Denn Synonyme finde ich dafür keine - auch dar Duden lässt mich da nen bissel im Stich...
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Montag 22. September 2008, 15:07

dor_neue hat geschrieben:PS: ich setz mal voraus, dass arbitär sowas wie fließend bzw. willkürlich ist...
Denn Synonyme finde ich dafür keine - auch dar Duden lässt mich da nen bissel im Stich...

Ja, das war damit gemeint; ich habe es nur falsch geschrieben.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
BlackJack

Beitragvon BlackJack » Montag 22. September 2008, 16:48

@dor_neue: Also ich finde die Beschreibung von "Parsen" falsch. Die Weiterverarbeitung gehört IMHO nicht dazu und nur bestimmte Teile "parsen" eigentlich auch nicht. Ein Parser im Sinne des Gebiets Übersetzerbau, bekommt eine Eingabe und parst die entweder ganz oder gar nicht, d.h. Abbruch mit Fehler wenn die Struktur der Eingabe nicht stimmt.

Das was Du als Erklärung bei "Mappen" stehen hast, also zum Beispiel eine komplette XML-Datei in ein DOM umsetzen, ist für mich "Parsen". So etwas machen ja zum Beispiel XML-Parser. Die heissen nicht umsonst *so* und nicht XML-Mapper.

Und zu "Mappen" gibt's ja eine Definition, nämlich "Abbilden" von einem Wert auf einen anderen, oft äquivalenten Wert. Beispiel Object-Relational Mapping (ORM) oder Dictionaries.
dor_neue
User
Beiträge: 74
Registriert: Montag 16. Juni 2008, 18:51

Beitragvon dor_neue » Dienstag 23. September 2008, 07:16

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

Beitragvon BlackJack » Dienstag 23. September 2008, 07:49

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

Beitragvon keppla » Dienstag 23. September 2008, 16:59

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

Beitragvon Panke » Mittwoch 24. September 2008, 12:21

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

Beitragvon keppla » Mittwoch 24. September 2008, 15:20

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

Beitragvon Panke » Donnerstag 25. September 2008, 10:42

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

Beitragvon Pekh » Donnerstag 25. September 2008, 11:12

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

Beitragvon dor_neue » Freitag 26. September 2008, 08:10

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

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder