projektujesz elementy interfejsu użytkownika, projektując systemy, które współdziałają z klientem twoich systemów. Zauważ, że słowo „klient” jest dość duże, ale w zasadzie oznacza, że pracujesz nad interfejsem użytkownika, gdy zapewniasz interfejs do świata zewnętrznego.
Większość stron internetowych to tylko interfejsy, to znaczy, że dostarczają one informacji zewnętrznemu światu i przez większość czasu informacje te mogą być przechowywane po prostu jako tekst w plikach HTML.
Zaplecze projektujesz, gdy potrzebujesz świadczyć usługi i obejmować funkcje, z których będzie korzystać Twój interfejs. Pozwala to przenieść część obciążenia z klienta (front-end) na serwer (back-end). Zrobisz to w przypadkach, gdy zajdzie potrzeba skoordynowania informacji od różnych klientów, którzy mogą jednocześnie uzyskiwać dostęp do systemu. Lub jeśli potrzebujesz użyć centralnego repozytorium danych do zestawienia danych dynamicznych, lub ponownie, jeśli potrzebujesz określonych wymagań bezpieczeństwa. Ta lista nie jest wyczerpująca, a jedynie szybkie przykłady.
krótko mówiąc, Front-end (klient) przedstawi informacje światu zewnętrznemu. Zwykle są to ludzie za pomocą GUI HTML lub w inny sposób.
Zaplecze zapewni środki do scentralizowania usług w celu korzystania z interfejsu użytkownika. Korzystanie z zaplecza nie jest obowiązkowe i zwiększa złożoność systemu, ale pozwala lepiej zarządzać złożonością właściwą systemowi, który próbujesz zbudować.
Na przykład możliwe jest świadczenie usługi, takiej jak wiki wyłącznie za pośrednictwem interfejsu, ale będzie miało wiele ograniczeń, które użycie zaplecza do przechowywania danych i udostępniania ich na interfejsie rozwiązałoby w bardziej naturalny sposób.