Als ich anfing PHP zu lernen (vor ungefähr 5 oder 6 Jahren), lernte ich Ajax und ging die "Phasen" durch:
- Ihr Server gibt HTML-Daten zurück und Sie platzieren sie in das innerHTML eines DOM
- Sie lernen Datenübertragungsformate wie XML kennen (und sagen "oooh, das ist es, wofür es verwendet wird) und dann JSON.
- Sie geben JSON zurück und erstellen Ihre Benutzeroberfläche mit Vanilla-JavaScript-Code
- Sie wechseln zu jQuery
- Sie lernen APIs, Header, HTTP-Statuscodes, REST , CORS und Bootstrap kennen
- Sie lernen die SPA- und Frontend-Frameworks ( React , Vue.js und AngularJS ) und den JSON-API-Standard.
- Sie erhalten einen älteren Unternehmenscode und stellen bei der Überprüfung fest, dass dieser den in Schritt 1 beschriebenen Vorgang ausführt.
Als ich mit dieser alten Codebasis gearbeitet habe, habe ich nicht einmal daran gedacht, dass sie HTML zurückgeben könnte (ich meine, wir sind jetzt Profis, oder?), Also fiel es mir schwer, nach dem JSON-Endpunkt zu suchen, auf dem die Daten zurückgegeben wurden Die Ajax-Anrufe werden ausgefüllt. Erst als ich "den Programmierer" fragte, sagte er mir, es würde HTML zurückgeben und mit innerHTML direkt an das DOM angehängt.
Das war natürlich schwer zu akzeptieren. Ich dachte über Möglichkeiten nach, wie ich dies in JSON-Endpunkte umgestalten kann, und überlegte, ob ich die Endpunkte nach einem Unit-Test testen soll und so weiter. Diese Codebasis hat jedoch keine Tests. Nicht ein einziger. Und es sind über 200.000 Zeilen. Natürlich beinhaltet eine meiner Aufgaben das Vorschlagen von Ansätzen zum Testen des Ganzen, aber im Moment werden wir das noch nicht angehen.
Ich frage mich also nirgendwo in der Ecke: Wenn wir überhaupt keine Tests haben, haben wir keinen besonderen Grund, diesen JSON-Endpunkt zu erstellen (da er nicht "wiederverwendbar" ist: Er gibt buchstäblich Daten zurück, die nur auf diesen Teil des passen Anwendung, aber ich denke, dies wurde bereits impliziert, da es ... HTML-Daten zurückgibt).
Was genau ist falsch daran?