Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>Kurzbefehle: Wozu ist die Aktion "Wörterbuch" gut?

Kurzbefehle: Wozu ist die Aktion "Wörterbuch" gut?

dv!d11.10.2319:34
tl;dr: was macht die Kurzbefehle-Aktion "Wörterbuch" besonders? Wie nutzt ihr sie so in der Praxis? Gibt's gute Anwendungsmöglichkeiten? Ich bräuchte Verständnishilfe, mir fehlt leider der Praxisbezug...

Hier der Text, den ich schrieb bevor ich realisierte, wie lange der Text wurde ^^

Hallo MTN-Leute,
gleich vorweg: entschuldigt meine Unkenntnis und Unsicherheit. Bin noch Schüler und habe im Grunde bisher keine Programmier-Kenntnissen. Ein wenig habe ich aber schon mit den Kurzbefehlen gespielt und welche nach Anleitung gebastelt Ihr gewaltiges Potential macht mich neugierig und definitiv Lust auf mehr.

Anyway, wie der Titel schon sagt, frage ich mich wozu die Aktion "Wörterbuch" gut ist. Mir fehlt dazu irgendwie der Anwendungsbezug. Habe schon das Benutzerhandbuch dazu durchgelesen (siehe ), doch wurde leider nicht dadurch wiiirklich schlauer. Auch die entsprechende Kurzbeschreibung verstehe ich leider noch nicht wirklich:
Übergibt die angegebene Liste von Schlüssel-Wert-Paaren als Wörterbuch an die nächste Aktion.

Was eine Liste in Kurzbefehle ist, ist mir bereits klar: Quasi eine Reihe bestehender (und formal vom Typ her gleicher) Werte aus denen man einen einzelnen Wert jeweils direkt auswählen kann, damit was passiert (letzteres dann mit der Funktion "Objekt aus Liste abrufen"). Wenn man so will, ist also eine Liste vergleichbar mit einer Reihe von Klingelschildern an nem Hauseingang oder? (Entschuldigt den vllt etwas schrägen Vergleich, mir hilft aber sowas echt beim Verständnis ^^)

Was ist dann das Wörterbuch demgegenüber? Was macht es besonders? Was hat es auf sich mit dieser dreifachen Aufteilung in "Schlüssel", "Typ" und "Wert"? Und wie nutzt ihr die Aktion so im Alltag, was bringt sie euch so?
Besten Dank im Voraus, dass du/ ihr soweit gelesen hast/habt!
+1

Kommentare

marm11.10.2319:55
dv!d
Wenn man so will, ist also eine Liste vergleichbar mit einer Reihe von Klingelschildern an nem Hauseingang oder? ...
Was ist dann das Wörterbuch demgegenüber? ...
Was hat es auf sich mit dieser dreifachen Aufteilung in "Schlüssel", "Typ" und "Wert"?
Und wie nutzt ihr die Aktion so im Alltag, was bringt sie euch so?
Dann bleiben wir beim Beispiel Klingelschilder.
Eine Liste:
- Müller
- Meier
- Schulze

Ein Wörterbuch (JSON wie in deinem Link erwähnt):
[
  {"name": "Müller", "nr": "11", "Strassenseite": "0"},
  {"name": "Meier", "nr": "12", "Strassenseite": "1"},
  {"name": "Schulze", "nr": "13", "Strassenseite": "1"}
]

Schlüssel sind die Bezeichnungen vor dem Doppelpunkt (Name, Nr., Straßenseite). Dahinter steht der Wert. Die Typen sind Text, Zahl und Boolean.

Benötigt habe ich ein Wörterbuch in einem Kurzbefehl, um mir eine Auswahlliste zu erstellen. Ich könnte mir jetzt z.B. alle Namen anzeigen lassen, die auf der linken Straßenseite wohnen und dann einen Namen auswählen für weitere Aktionen.

Tipp: Wenn Du Wörterbücher für Kurzbefehle verstehen willst, schau Dir Beispiel-Vorlagen an. Ohne Vorlage hätte ich nicht kapiert, wie ich die nutze könnte. Sonderlich intuitiv finde ich Bezeichnung der Aktionen nicht.
+2
dv!d11.10.2320:06
besten Dank für deine schnelle und super verständliche Antwort @Marm! hab's sofort begriffen

Wenn ich das kurz in eigenen Worten wiederholen darf, dann ist ein Wörterbuch jeweils eine Art "Gruppe", die sich aus verschiedenen Arten von Werten zusammensetzt. Dank dieser Gruppierung kann ich wiederum ganz neu kombinieren, z.B. (um in deinem/ unserem Bild zu bleiben) je nach Straßenseite.

Wobei "Schulze" ja eigtl auch die "0" als Strassenseite zugewiesen bekommen müsste, oder? ^^
+1
marm11.10.2320:25
dv!d
Wobei "Schulze" ja eigtl auch die "0" als Strassenseite zugewiesen bekommen müsste, oder? ^^
Genau. Du könntest jetzt die Konsistenz des Datensatzes testen, ob ungerade Hausnummer und linke Strassenseite immer übereinstimmen 😉
+2
dv!d11.10.2321:18
marm
dv!d
Wobei "Schulze" ja eigtl auch die "0" als Strassenseite zugewiesen bekommen müsste, oder? ^^
Genau. Du könntest jetzt die Konsistenz des Datensatzes testen, ob ungerade Hausnummer und linke Strassenseite immer übereinstimmen 😉
kann man mal machen ^^

Noch eine generelle Anschlussfrage: Wofür würde man als Typ "Boolescher Wert" beispielsweise nehmen? 🤔
+1
Weia
Weia11.10.2321:19
marm
Sonderlich intuitiv finde ich Bezeichnung der Aktionen nicht.
Ich hatte bei Wörterbuch im Zusammenhang mit Kurzbefehlen auch erst daran gedacht, dass das eine Schnittstelle zum Lexikon darstellen würde.

dictionary ist in Programmiersprachen wie Objective-C ein Variablentyp, einer der wichtigsten und bekanntesten. Ob das jetzt so eine gute Idee war, den für die Kurzbefehle einzudeutschen (habe ich zuvor noch nie gesehen), weiß ich nicht …
„🦖The dinosaurs invented Jesus to test our confidence in science“
+3
Weia
Weia11.10.2321:26
dv!d
Noch eine generelle Anschlussfrage: Wofür würde man als Typ "Boolescher Wert" beispielsweise nehmen? 🤔
Naja, für alles, was nur die Werte ein und aus haben kann. Wenn Du z.B. in den Einstellungen von einem Programm Checkboxen hast, die Du markieren kannst oder eben nicht, werden diese Einstellungen im Programmcode immer in booleschen Werten abgespeichert.
„🦖The dinosaurs invented Jesus to test our confidence in science“
+2
ssb
ssb11.10.2322:59
Weia
Naja, für alles, was nur die Werte ein und aus haben kann. Wenn Du z.B. in den Einstellungen von einem Programm Checkboxen hast, die Du markieren kannst oder eben nicht, werden diese Einstellungen im Programmcode immer in booleschen Werten abgespeichert.
Ergänzend dazu… Die Arithmetik von boolschen Werten ist in der Logik (als Zweig der Mathematik) auch eine andere. Es gibt nur „Wahr“ oder „Falsch“, Das kann man als 1 und 0 ausdrücken. Wenn man mit boolschen Werten rechnet, dann entspräche „ODER“ der Addition und „UND“ der Multiplikation. Da ergibt aber 1 + 1 nicht 2 sondern 1 ( Aussage A ist wahr und Aussage B ist wahr, dann ist A oder B auch wahr).

Nettes Detail - aber nicht wirklich wichtig:
Computer könnten da mit nur einem Bit arbeiten, aber intern werden boolsche Werte meist auch als Ganzzahl mit wenigstens 8 Bit dargestellt. Auch da ergäbe 1 + 1 eine 2. Um das zu umgehen, wird in vielen Programmiersprachen „Falsch“ = 0 definiert und „Wahr“ als nicht „Falsch“ - also alles was nicht 0 ist. Genau genommen schauen CPUs bei boolschen Operationen meist nur auf das Zero-Flag.
+1
Weia
Weia12.10.2302:26
Noch vergessen:
dv!d
Hier der Text, den ich schrieb bevor ich realisierte, wie lange der Text wurde ^^
Das macht gar nix. 🤗 Es gibt Leute hier, die schreiben noch längere Texte.

Ein Problem sind nur zu kurze Text à la Mein Mac geht nicht. Was soll ich tun?
gleich vorweg: entschuldigt meine Unkenntnis und Unsicherheit
Dafür brauchst Du dich nicht zu entschuldigen. Dafür ist das Forum da:

Unkenntnis → Forum fragen → Kenntnis

Keiner von uns weiß alles.

Und hättest Du das mit der Unsicherheit nicht geschrieben, hätte es keiner von uns gemerkt.
„🦖The dinosaurs invented Jesus to test our confidence in science“
+2
vta12.10.2308:01
dv!d
Anyway, wie der Titel schon sagt, frage ich mich wozu die Aktion "Wörterbuch" gut ist.

Krasses Denglich. Muss das sein? Vielleicht brauchst du auch mal ein Wörterbuch?
-11
AreYouDoneYet?12.10.2308:32
@dv!d Wenn dich so etwas interessiert. Lad dir mal Apple Playgrounds herunter, dort gibt es sehr nette Tutorials wie z.b. "Los gehts mit Code". Da steuerst du einen Roboter mithilfe von Swift. Es werden grundlegende Dinge wie Variablen,Typen, Listen, Booleans, Schleifen usw. dort sehr ausführlich erklärt. Alles was es in Kurzbefehle auch gibt im Endeffekt.
+4
ssb
ssb12.10.2311:51
vta
Krasses Denglich. Muss das sein? Vielleicht brauchst du auch mal ein Wörterbuch?
Dictionaries sind so weit verbreitet in der Softwareentwicklung, dass dafür unterschiedliche Repräsentationen "erfunden" wurden. YAML, XML, JSON - das sind alles Notationen von Dictionaries. Manchmal genügt eine Sammlung von Daten (List) nicht, bzw. ist unsicher. Da macht es Sinn, dass man zu jedem gespeicherten Wert auch weiß, wofür er steht. Ganz besonders dann, wenn die Werte unterschiedliche Datentypen haben und gar nicht zwingend vorhanden sind.
Sehr oft nutzt man je nach Sprache dafür intern Datenstrukturen bzw. Klassen mit Properties - aber die Inhalte/Werte lassen sich dann nur schwer austauschen. Eine Lösung dafür sind dann Austauschformate wie die bereits genannten und auch Zwischenformen wie ProtoBuffer und FlatBuffers (und noch viele mehr). Selbst CSV könnte man in diesen Bereich zählen, ist aber durchaus fehlerträchtig.

Das ist durchaus alltagsbezogen. So wird auf jeder Rechnung nicht nur eine Liste von Beträgen aufgeführt, sondern auch wofür diese stehen oder besser, wie sich diese ergeben.

Aber ja - ich hatte mich schon zu Beginn über die Übersetzungen von Literatur zur Softwareentwicklung aufgeregt. Ich hatte mal ein C++ Handbuch - gruselig. Das war ein guter Grund, warum damals die "Inside Macintosh" Bücher nie wirklich übersetzt wurden (es gab eine, aber auch die war verwirrend).
+2
Weia
Weia12.10.2312:50
vta
dv!d
Anyway, wie der Titel schon sagt, frage ich mich wozu die Aktion "Wörterbuch" gut ist.

Krasses Denglich. Muss das sein?
Sofern Du Denglisch meinst: Es muss nicht (wer zwingt Dich dazu?), aber es kann.

Sofern Du dich dabei auf Anyway beziehst: Das würde ich nicht (mehr) als Denglisch wahrnehmen, sondern als in die deutsche Sprache eingegangenes Lehnwort. Das hört man doch laufend in der Umgangssprache, ähnlich wie Sorry. Würdest Du Sorry, hab’ ich vergessen auch als Denglisch bezeichnen?
Vielleicht brauchst du auch mal ein Wörterbuch?
Ich glaube eher, Dein Wörterbuch könnte mal ein Update gebrauchen. Sprache lebt.

Abgesehen davon sollte Dir klar sein, dass Sprachbesserwisser in Foren nie sonderlich gut gelitten sind.
„🦖The dinosaurs invented Jesus to test our confidence in science“
+1
Weia
Weia12.10.2312:56
ssb
vta
Krasses Denglich. Muss das sein? Vielleicht brauchst du auch mal ein Wörterbuch?
Dictionaries sind so weit verbreitet in der Softwareentwicklung, dass […] Aber ja - ich hatte mich schon zu Beginn über die Übersetzungen von Literatur zur Softwareentwicklung aufgeregt.
Ich glaube eher nicht, dass sich vta an dictionary/Wörterbuch gestört hat. 😂

Aber Deine elaborierte Replik ist das denkbar beste Beispiel dafür, dass anyway gar nicht mehr als Englisch wahrgenommen wird.
„🦖The dinosaurs invented Jesus to test our confidence in science“
0
ssb
ssb12.10.2313:19
Ja, Sprache lebt. Bisweilen verändern sogar Wörter ihre Bedeutung.
Zufällig gefunden: Unter "Rauchwaren" dürfte man sich heute umgangssprachlich etwas anderes vorstellen als "Pelzwaren", wie ich gerade in "Der Große Herder" in der Ausgabe von 1955 feststellen konnte.

Gerade in Fachsprachen ist es oft nicht hilfreich, englische Begriffe zu übersetzen, höchstens im Glossar. Manchmal wirkt das sogar eher ungewollt komisch. Ist mir schon in manchen "Beipackzetteln" oder Handbüchern aufgefallen, die vermutlich von Chinesisch auf Englisch übersetzt wurden und von dort ins Deutsche, wahrscheinlich von einem Chinesen. Da gab es dann eine "Feuerdraht-Schnittstelle" (Zettel zu einer FireWire-Festplatte) oder man sollte "das Haupt ziehen zur Abwendung von elektrischem Erschrecken" (Handbuch für einen CD-Player - "unplug mains to prevent electrical shock").
+2
dv!d12.10.2316:22
Hallo MTN-Leute,
vielen Dank an alle, die sich beteiligen und noch Infos ergänzt haben. Klasse, hätte ich echt nicht erwartet!
Werde das eine oder andere ganz einfach der Reihe nach durchgehen (ohne Anspruch alles abdecken zu wollen^^)
Danke @Weia & @ssb für eure Antworten zu meiner Anschlussfrage bzgl. Boolescher Werte. So an und für sich denke ich, hab ich's schon begriffen, aber mal abwarten, wieweit ich die in den Kurzbefehlen wirklich in der Praxis einsetzen kann...

Danke @AreYouDoneYet? für den Tipp bzgl. Swift Playground. Schon mal von dem Programm gehört, aber noch nie ausprobiert. Werde ich ändern!

@all: wer weiß, vllt hab ich bald mal wieder ne Frage zu den Kurzbefehlen ^^ Merke einfach, wie viel Spaß das macht damit Sachen auszuprobieren und einfach ein bisschen zu experimentieren (auch weil man halt immer direkt Resultate sieht). Mach's gut und bis bald!
+3
Weia
Weia12.10.2317:17
ssb
"das Haupt ziehen zur Abwendung von elektrischem Erschrecken" (Handbuch für einen CD-Player - "unplug mains to prevent electrical shock").
Der ist sehr schön.

Aber man muss gar nicht fremdgehen, sowas findet sich auch bei unser aller Lieblingshersteller:

[in den Ventura-Displayeinstellungen beim Popup zur Einstellung der gewünschten Transferfunktion]
Nur Strom für englisch: pure power = reine Exponentialfunktion
„🦖The dinosaurs invented Jesus to test our confidence in science“
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.