Sollte ein Front-End-Entwickler jemals das JSON-Format für Back-End-Entwickler angeben?

17

Ich übernehme die Front-End-Rolle in einem Projekt. Sollte ich für meine Back-End-Teammitglieder das genaue Format von JSON angeben, das ihr PHP an mein JavaScript zurückgibt?

Soll ich ihnen zum Beispiel sagen, dass sie ein Format verwenden sollen, das dem hier beschriebenen Format ähnelt:

Richtige Strukturierung von JSON für den Front-End-Verbrauch

Oder sollte ich meine Rolle so steril wie möglich halten und die Ein- und Ausgänge, die ich von der Back-End-Schnittstelle benötige, einfach in Worten beschreiben? (In diesem Fall ist es für mich möglicherweise schwieriger, mit den unterschiedlichen Datenstrukturformaten umzugehen.)

LazerSharks
quelle
10
Ich konnte es für sie als sinnvoll erachten, den ersten Vorschlag auf der Grundlage allgemeiner Beiträge zu unterbreiten. Das heißt aber nicht, dass das Gespräch beim ersten Vorschlag endet.
Doug T.
Das macht Sinn!
LazerSharks
4
Jemand muss das genaue Format der in JSON enthaltenen Daten angeben. Könnte auch du sein. Eigentlich sollte es derjenige sein, der die meiste Erfahrung in der Erstellung von Spezifikationen hat.
gnasher729
2
@ gnasher729: oder wenn das Format so einfach ist, dass Sie sicher sind, dass beide Parteien mehr als qualifiziert sind, es anzugeben, sollte jeder, der den ersten Code schreibt, der es wissen muss, es angeben. Dies kann auch als Belohnung für diejenigen angesehen werden, die am schnellsten mit ihren Tests beginnen ;-) Im Allgemeinen könnte man sagen, dass die Person, die dies tut, nicht immer die Person mit der meisten Erfahrung sein sollte. Oft ist es besser, die Person mit der geringsten Erfahrung zu verwenden Erfahrung, wer für die Aufgabe ausreicht, aber das ist eine Frage der Persönlichkeitsentwicklung.
Steve Jessop

Antworten:

42

In diesem Gespräch sollten Sie gemeinsam die Anforderungen und Vor- und Nachteile verschiedener Formate erörtern.

Wenn die eine oder andere Seite diktiert, was passiert, werden Sie mit schlechter Software und einem unglücklichen Team enden.

grahamparks
quelle
1
Das macht Sinn! Ich habe mich gefragt, was da draußen in der Entwicklungswelt wirklich / normalerweise passiert.
LazerSharks
5
Richtig. Sie arbeiten zusammen daran. Wenn es etwas kompliziert ist, finden Sie im Idealfall ein gemeinsames Format, das von Bibliotheken an beiden Enden unterstützt wird, um die Entwicklung zu vereinfachen / beschleunigen.
AE
9

Sie sollten auf jeden Fall dazu beitragen, wie das Format und die Struktur von JSON aussehen sollen. Ich sehe mehr als oft, dass die Front-End-Ingenieure, die API-Konsumenten, wissen, wie die Datenstruktur sein sollte.

Sie sind derjenige, der die Daten verwendet, formatiert, durchläuft und damit arbeitet. Sie sollten eine Meinung dazu haben, wie Sie die Lieferung wünschen.

aludvigsen
quelle
3

Willkommen in der wundervollen Welt der Middleware-Entwicklung. Es kann eine Menge harter Arbeit und Debatte sein, ein Protokoll zu entwickeln, und niemand sollte jemals die Ergebnisse sehen.

Wenn Sie zu einem kleinen Team gehören, sollten Sie einen Diktator meiden: Treffen Sie sich schnell mit allen, um das Protokoll auszuarbeiten.

Mittelgroße Teams wünschen sich möglicherweise Vertreter, die das Protokoll ausarbeiten.

Große Teams und / oder Teams mit komplexer Organisation sollten dedizierte Middleware-Mitarbeiter zur Steuerung des Protokolls haben.

In jedem Fall dokumentieren! Was sind die Voraussetzungen, was sind die Nachbedingungen, was sind erforderliche Felder, was sind optionale Felder, was sind die Nebenwirkungen, welche Fehler werden zurückgegeben ... Halten Sie das Dokument am Leben, wenn neue Bedingungen, Fehlertypen oder Nebenwirkungen festgestellt werden Dann werden sie dem Dokument hinzugefügt.

Ich würde auch sowohl clientseitige als auch serverseitige Unit-Tests und Systemtests empfehlen, um die Konformität mit dem Dokument sicherzustellen.

Es mag wie viel Arbeit erscheinen, aber kleine Fehltritte können hier sehr teuer und zeitaufwendig sein.

Jeffery Thomas
quelle
Ich bin froh zu erfahren, dass es eine ganze Welt gibt, die sich diesem Aspekt widmet. Ich dachte, dieser Aspekt scheint der Ort zu sein, an dem der Kautschuk in Bezug auf die Kluft zwischen Front-End und Back-End wirklich auf die Straße trifft.
LazerSharks
1

Ich würde nur fragen, warum nicht? Wenn wir über ein Projekt sprechen, sprechen wir auch über das Team, das daran arbeitet, und es wird erwartet und es ist zu begrüßen, wenn Meinungen zu den verwendeten Funktionen und der verwendeten Struktur geäußert werden. Als Entwickler glaube und schätze ich persönlich die Beiträge von Teamkollegen.

Sie wissen, dass es ein Sprichwort gibt: "Wenn Sie schnell gehen wollen, gehen Sie allein. Wenn Sie weit gehen wollen, gehen Sie zusammen."

Glasfische
quelle