Sobes.tech
Middle

რა არის MVVM არქიტექტურული ნიმუში?

sobes.tech AI

პასუხი AI-სგან

MVVM (მოდელი-ნახვა-მოდელი ViewModel) ნიმუში აპლიკაციას სამ ძირითად ნაწილად ყოფს:

  • მოდელი: წარმოადგენს მონაცემებს და ბიზნეს ლოგიკას. იგი დამოკიდებული არაა მომხმარებლის ინტერფეისზე.
  • ნახვა: ეს არის მომხმარებლის ინტერფეისის ფენა. იგი აჩვენებს ViewModel-დან მონაცემებს და აგზავნის მომხმარებლის მოქმედებებს ViewModel-კენ. ნახვა არ შეიცავს მონაცემების დამუშავების ლოგიკას.
  • ViewModel: ეს არის კავშირი View-სა და მოდელს შორის. იგი უზრუნველყოფს მონაცემებს მოდელიდან სასურველ ფორმატში და დამუშავებს მომხმარებლის მოქმედებებს, განაახლებს მოდელს. ViewModel-ი შეიცავს მონაცემების წარმოდგენის და მომხმარებლის შეყვანის დამუშავების ლოგიკას.

კავშირები ჩვეულებრივ რეალიზებულია მონაცემთა ბმებით. ნახვა აკვირდება ViewModel-ში ცვლილებებს და ავტომატურად განახლდება, ხოლო ViewModel-ი რეაგირებს View-დან მოვლენებზე.

// ViewModel-ის მაგალითი (შესაძლოა JavaScript)
class TodoViewModel {
  constructor(model) {
    this.model = model;
    this.todos = this.model.todos; // უზრუნველყოფს მონაცემებს View-სთვის
    this.newTodoText = ''; // მდგომარეობა View-ის შეყვანის ველისთვის
  }

  addTodo() {
    if (this.newTodoText.trim()) {
      this.model.addTodo(this.newTodoText.trim());
      this.newTodoText = ''; // სვეტის გასუფთავება დამატების შემდეგ
    }
  }

  removeTodo(index) {
    this.model.removeTodo(index);
  }
}