Heim  >  Artikel  >  Web-Frontend  >  4 Gründe für die Trennung von Web-APP-UI und API

4 Gründe für die Trennung von Web-APP-UI und API

巴扎黑
巴扎黑Original
2017-08-16 09:22:561461Durchsuche

Sofern Ihre Webanwendung nicht zu 100 % aus clientseitigem Code besteht, sollten Sie das Front- und Back-End trennen. Menschen tappen oft in die Falle und sagen, sie sollten keine Zeit damit verbringen, eine separate API und Client-Anwendung zu entwickeln, weil die reale Welt oft viele Optimierungen erfordert, oder sie denken, ihre Anwendung sei zu klein und sie brauchen keine Trennung.

Diese Art von Anwendung nenne ich eine All-in-One-Anwendung. Bei dieser Art von Anwendung sind Ihre Geschäftslogik und Ihre Benutzeroberfläche eine Einheit, die auf dem Server ausgeführt wird. Allerdings bietet eine Webanwendung mit unabhängigem Front-End und Back-End viele Vorteile.

1. Modularisierung

Die Aufteilung der Anwendung in separate Front-End- und Back-End-Anwendungen, einer der Vorteile ist die Modularität. Da die Anwendungslogik vollständig von der Benutzeroberfläche getrennt ist, verfügt Ihre Webanwendung möglicherweise bereits über eine rudimentäre modulare Struktur. Modularität hilft in vielerlei Hinsicht, einschließlich Tests, Lesbarkeit und Wartbarkeit.

2. Wiederverwendbarkeit

Mit einer einzigen API kann Ihre Anwendungslogik von vielen Anwendungen wiederverwendet werden. Das bedeutet, dass Sie eine mobile App erstellen können, die die API verwendet, oder die API in einer völlig separaten App verwenden oder anderen den Zugriff auf die API ermöglichen können (kostenlos oder kostenpflichtig).

3. Inhaltsbereitstellung

Da die Clientanwendung eine völlig unabhängige Einheit ist, können Sie mit erweiterten statischen Dateibereitstellungstechniken umgehen, während in Anwendungen, die die Benutzeroberfläche serverseitig rendern müssen, diese Technologien verwendet werden sind nicht verfügbar. Beispielsweise ist es jetzt möglich, mithilfe von NGINX und ein paar einfachen Regeln ganze Client-Anwendungen im Cache abzulegen.

4. Reaktionsfähigkeit

Einer der größten Mängel von serverseitigen „All-in-one“-Anwendungen ist der Aspekt der Feedback-Reaktionsfähigkeit des Benutzers. Bei serverseitigen Anwendungen klickt der Benutzer auf eine Schaltfläche, um Daten abzurufen. Der häufigste Vorgang wird wie folgt beschrieben:

1 Der Benutzer klickt auf eine Schaltfläche, um Daten abzurufen
2 an den Server Senden Sie eine Anfrage
3. Der Server fragt die Datenbank ab
4. Die Anwendung führt die logische Verarbeitung der Daten durch
6 gibt die Antwort an den Benutzer zurück
7. Benutzer sehen eine Rückmeldung, nachdem sie auf das Laden der Seite gewartet haben
8. Mit einer separaten Client-Anwendung können Sie viele Feedback-Mechanismen nutzen, z. B. die Verwendung von Ladeprogrammen oder Fortschrittsbalken. Sobald Ihre Anfrage zurückkommt (z. B. über einen AJAX-Aufruf), können Sie Ihre Anzeige aktualisieren.

5. Versionskontrolle

Ja, ich habe eine 5 hinzugefügt. Mit separaten API- und UI-Projekten müssen Sie nicht mehr zwei Anwendungen gleichzeitig aktualisieren oder bereitstellen. Wenn in der neu bereitgestellten Benutzeroberfläche ein kritisches Problem auftritt, können Sie es rückgängig machen, ohne sich Gedanken über die Auswirkungen auf die leistungssteigernden Optimierungen machen zu müssen, die Sie im API-Projekt vorgenommen haben.

Was sind die Vorteile einer Gesamtarchitektur?

Diese getrennte Architektur hat viele Vorteile. Die Verwendung einer monolithischen Architektur bietet jedoch einige Vorteile. Wenn Ihre Anwendung beispielsweise in ein Projekt eingebunden ist, können Sie die Entwicklungsarbeit schneller abschließen. Es ist kein Geheimnis, dass mit der separaten Benutzeroberfläche und API viel mehr Codierung erforderlich ist (aber viele Frameworks machen dies einfacher). Es gibt auch einige Sicherheitsvorteile. Beispielsweise stellen Sie die API überhaupt nicht zur Verfügung. Es gibt Möglichkeiten, eine API zu schützen, aber es ist besser, sie nicht offenzulegen. Wenn Sie der Meinung sind, dass es weitere Vorteile gibt, können Sie darüber sprechen, indem Sie einen Kommentar hinterlassen und uns darüber unterhalten.

Fazit

Dies scheint für viele Softwareentwickler eine normale Wahl zu sein. Einige Leute übernehmen diese Architektur jedoch überhaupt nicht, entweder weil sie mit dem Konzept nicht vertraut sind oder einfach nur faul sind. Hinsichtlich der Gesamtarchitektur gibt es viele Beispiele, die diese Struktur vielleicht nicht verwenden, aber auch sehr erfolgreich sind. Was ich jedoch eher sehe, ist, dass die Trennung von API und UI in Zukunft viele Vorteile bringen wird. Entwicklern, die dieses Konzept noch nicht ausprobiert haben, wird empfohlen, es auszuprobieren und sich selbst von den Vorteilen der Front-End- und Back-End-Trennung zu überzeugen.

Das obige ist der detaillierte Inhalt von4 Gründe für die Trennung von Web-APP-UI und API. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn