Junior — Middle
Wyjaśnij koncepcję architektury wielowarstwowej w ramach jednej aplikacji i jej główne komponenty.
sobes.tech AI
Odpowiedź od AI
Architektura warstwowa to sposób organizacji aplikacji, w którym funkcjonalność jest podzielona na kilka logicznych warstw, z których każda odpowiada za swoją własną strefę odpowiedzialności. Zwiększa to modułowość, ułatwia utrzymanie i testowanie.
Główne komponenty architektury warstwowej:
- Warstwa prezentacji — odpowiada za interakcję z użytkownikiem, wyświetlanie danych i odbieranie wejścia.
- Warstwa logiki biznesowej — zawiera zasady i logikę przetwarzania danych, realizuje procesy biznesowe.
- Warstwa dostępu do danych — odpowiada za interakcję z bazą danych lub innymi źródłami danych.
Przykład w C#:
// Warstwa prezentacji
public class UserInterface {
private BusinessLogic _bl = new BusinessLogic();
public void ShowUser(int id) {
var user = _bl.GetUser(id);
Console.WriteLine($"Użytkownik: {user.Name}");
}
}
// Warstwa logiki biznesowej
public class BusinessLogic {
private DataAccess _da = new DataAccess();
public User GetUser(int id) {
return _da.FetchUser(id);
}
}
// Warstwa dostępu do danych
public class DataAccess {
public User FetchUser(int id) {
// Kod do pobrania użytkownika z bazy danych
return new User { Id = id, Name = "Ivan" };
}
}
public class User {
public int Id { get; set; }
public string Name { get; set; }
}
Takie rozdzielenie ułatwia modyfikację jednej warstwy bez wpływu na pozostałe.