Sortierung des Adressuchs |
|
Thema des Kapitels |
Wann sollte ich ein Array benutzen? Wann sollte ich ein Hash benutzen?
Die Struktur des Adressbuchs ist ein gutes Beispiel hierfür.
Wenn Sie geordnete Daten haben, wollen Sie für gewöhnlich ein Array.
Wenn Sie eine Sammlung von ungleichen Daten haben, mit keiner bestimmten Beziehung zueinander (z.B. Name, Adresse und Telnr.), nehmen Sie höchstwahrscheinlich ein Hash.
Wenn alle Element in dieselbe Kategorie fallen (z.B. eine Gruppe von Namen), ist ein Array für gewöhnlich eine gute Wahl.
Beim Adressbuch enthielten die Adress- und Personenstrukturen unterschiedliche Daten. Also haben wir diese durch ein Hash repräsentiert.
Das Adressbuch selbst enthielt Daten derselben Kategorie (Personen) und wir wollten in der Lage sein, diese zu sortieren. Also was ein Array die beste Wahl.
Da Sie immer komplexere Datenstrukturen schreiben, wird es immer wichtiger, dass Sie gute Variablennamen wählen.
Ein Array sollte eine Sammlung von "gleichen" Dingen repräsentieren. Wie eine Gruppe von Autos, eine Gruppe von Namen, usw. Sie können dies widerspiegeln, indem Sie die Pluralform für das Array benutzen. Zum Beispiel:
Wenn jedes Element des Arrays ein Auto ist, so sollte das Array autos genannt werden.
Wenn jedes Element des Arrays ein Name ist, so sollte das Array namen genannt werden.
Wenn Sie Hashes bentzen, ist es wichtig gute Namen für die Hash-Schlüssel (keys) zu nehmen. Ein guter Name ist einer, der anschaulich und eindeutig ist, und zugleich leicht zu merken ist:
Guter Schlüsselname: "vorname"Da Sie zusehends komplexere Programme schreiben, wird es wichtig, dass Sie klare Kommentare schreiben, die erklären, was Sie vesuchen zu machen.
Im Allgemeinen ist es nicht ratsam, Strukturen zu tief ineinander zu verschachteln. Wenn Sie diese geeignet einrücken und gute Namen wählen, ist es in Ordnung.
Werfen Sie einen Blick auf diese Beispiele:
# Josef's Adresse josef_addr = { "strasse" => "43 Main St. W", "stadt" => "Washington", "land" => "DC", "plz" => "29847" } # Josef josef = { "vorname" => "Joe", "nachname" => "Smith", "adresse" => joe_addr } |
# Josef josef = { "nachname" => "Joe", "vorname" => "Smith", "adresse" => { "strasse" => "43 Main St. W", "stadt" => "Washington", "land" => "DC", "plz" => "29847" } } |
josef = { "vorname" => "Josef", "nachname" => "Smith", "adresse" => { "strasse" => "43 Main St. W", "stadt" => "Washington", "land" => "DC", "plz" => "29847" }} |
Sortierung des Adressbuchs |
|
Thema dieses Kapitels |