Onkel Schnitzel: Schlüsselposition eines Array in Variable speichern

Beitrag lesen

Hallo Mathias,

Das sieht von außen stark danach aus, als könnte hier eine Objektorientierung helfen.

foo[bar][5].qux.murks.lulz[123] ist natürlich nichts, was man ständig wiederholen will. Aber es ist auch ein Zeichen, dass die Aufgaben nicht sauber getrennt sind und die Daten unstrukturiert gespeichert und gekapselt sind.

Ja, das ist wohl so, fürchte ich. Ich schreibe schrecklichen Spaghetticode, ich bin wahrscheinlich zu sehr PHP-geschädigt :-) Das hier ist allerdings auch ne Sache, die ich wahrscheinlich nicht wieder anfassen muss, wenn sie erstmal fertig ist.

Mir sind die Vorteile von OOP ansatzweise ja bekannt, hab in PHP ja auch schon testweise damit gearbeitet. Schneller gehts dann aber halt - zumindest für den Anfang - prozedural. Ich krieg halt auch jetzt nich mehr die Kurve, zumindest bei diesem Projekt.

Hier hast du vermutlich eine Anzahl von Spielen, Spielern und Spielereinsätzen (bspw. hat Nadine Angerer beim Viertelfinalspiel der WM 2011 vermutlich 90 Minuten gespielt). Dann würde ich das auch so in Objekten umsetzen, die ggf. mit Has-many- und Belongs-to-Beziehungen verknüpft sind. Sodass du letztlich nur schreiben musst:

var angerer = new Spielerin({ name: 'Nadine Angerer' });
var einsatz = new Spieleinsatz(angerer, { spielzeit: 90 });
// …
einsatz.spielzeit = 90;
alert(einsatz.spielzeit);


>   
> Dort, wo du nun die Spielzeit lesen und setzen wilst, brauchst du jetzt auch nicht mehr alle Daten, sondern nur das das konkrete Objekt. Dadurch reduzierst du die Abhängigkeiten und die Komplexität des Codes.  
  
Ja, das sieht schon viel sauberer aus, wie auch bei1UnitedPower. Ich packe z.Zt. alle Daten in ein großes Array und schleppe das die ganze Zeit rum (siehe andere Antwort).  
  

> Ich habe übrigens mal einen Einsteigervortrag zu [Objektorientierung in JavaScript](http://molily.github.io/pottjs/) gehalten, falls es dich interessiert. Ferner empfehle ich meinen Artikel [Organisation von JavaScripten](http://aktuell.de.selfhtml.org/artikel/javascript/organisation/) sowie die [überarbeitete und ergänzte Version](http://molily.de/weblog/javascript-organisation).  
  
Das werd ich mir auf jeden Fall noch reinziehen. Ich kenne auch deinen Vortrag vom MMT, den hab ich mir schon zwei, dreimal angesehen, aber leider bin ich immer so vergesslich. Hat mir aber auf jeden Fall schon weitergeholfen.  
  
Schöne Grüße  
  
Onkel Schnitzel