Sobes.tech
Junior — Middle

Explicați conceptul de arhitectură în straturi în cadrul unei aplicații și componentele sale principale.

sobes.tech AI

Răspuns de la AI

Arhitectura în straturi este o modalitate de organizare a aplicației în care funcționalitatea este împărțită în mai multe straturi logice, fiecare fiind responsabil pentru propria zonă de responsabilitate. Acest lucru crește modularitatea, facilitează întreținerea și testarea.

Componentele principale ale arhitecturii în straturi:

  1. Stratul de prezentare — responsabil pentru interacțiunea cu utilizatorul, afișarea datelor și primirea inputurilor.
  2. Stratul de logică de afaceri — conține reguli și logică pentru procesarea datelor, implementează procesele de afaceri.
  3. Stratul de acces la date — responsabil pentru interacțiunea cu baza de date sau alte surse de date.

Exemplu în C#:

// Stratul de prezentare
public class UserInterface {
    private BusinessLogic _bl = new BusinessLogic();
    public void ShowUser(int id) {
        var user = _bl.GetUser(id);
        Console.WriteLine($"Utilizator: {user.Name}");
    }
}

// Stratul de logică de afaceri
public class BusinessLogic {
    private DataAccess _da = new DataAccess();
    public User GetUser(int id) {
        return _da.FetchUser(id);
    }
}

// Stratul de acces la date
public class DataAccess {
    public User FetchUser(int id) {
        // Cod pentru obținerea utilizatorului din baza de date
        return new User { Id = id, Name = "Ivan" };
    }
}

public class User {
    public int Id { get; set; }
    public string Name { get; set; }
}

Această separare face mai ușor să modifici un strat fără a afecta celelalte.