'

MVC Model-View-Controller

Понравилась презентация – покажи это...





Слайд 0

MVC Model-View-Controller Всевоволод Головизнин, 2010


Слайд 1

Определение Всевоволод Головизнин, 2010 MVC – паттерн проектирование, в котором бизнес-логика, управляющая логика и интерфейс разделены на три отдельных компонента


Слайд 2

Общие сведения Паттерн MVC был впервые разработан и описан профессором Тригвом Реенсаугом (Trygve Reenskaug) в 1973 году, а в 1978-79 был впервые применен к языку Smalltalk-80. Сейчас это основной паттерн проектирования web приложений и не только. MVC пришел в web благодаря одному из самых популярных фреймворков в мире – Ruby on Rails, представленному летом 2004 года. Сейчас существует множество фреймворков для различных языков и различных платформ, использующих подход MVC как основной для разработки приложения. Это такие продукты, как Ruby on Rails для Ruby, Zend Framework для PHP, Django для Python, Spring для Java, ASP.NET MVC для ASP.NET. Всевоволод Головизнин, 2010


Слайд 3

Model Содержит классы, описывающие работу с данными и бизнес-логикой приложения Работа с СУБД\ORM Манипуляции данными Всевоволод Головизнин, 2010 public void AddNewStudent(student stud) { _db.students.InsertOnSubmit(stud); _db.SubmitChanges(); } public void DeleteStudent(student stud) { _db.students.DeleteOnSubmit(stud); _db.SubmitChanges(); } public student GetStudentById(int id) { return _db.students.SingleOrDefault(s => s.student_id == id); }


Слайд 4

View Содержит пользовательский интерфейс (пр. HTML страницы) Всевоволод Головизнин, 2010


Слайд 5

Controller Содержит классы, управляющие работой приложения Что и когда показывать Какие данные необходимы Всевоволод Головизнин, 2010 public ActionResult Create(student stud) { if ((ModelState.IsValid) && (_studentContext.StudentExists(stud) == false)) { _studentContext.AddNewStudent(stud); return RedirectToAction("Index"); } ViewData["selectItems"] = (IEnumerable<SelectListItem>)_groupContext.SelectGroupList(); return View(stud); }


Слайд 6

Разделяй и властвуй Интерфейс - модель Интерфейс - управлятор В корне отличаются друг от друга (разные подходы и средства) Использование нескольких пользовательских интерфейсов для одной модели Легче тестировать Легче тестировать Несколько контроллеров для одного интерфейса Не так важно и очевидно, но полезно в Web разработках Всевоволод Головизнин, 2010


Слайд 7

Развитие MVC MVC Model-view-presenter MVP Представление получает данные модели от контроллера Контроллер следит за V\M и действует в ответ на изменения M реагирует на изменение V Представление получает данные от презентера и уведомляет его об изменениях Презентер перенаправляет изменения V к M P реагирует на изменения V Всевоволод Головизнин, 2010


Слайд 8

Развитие MVC MVC Model-view-Viewmodel MVvm V пассивно и «не знает» о M V активно, содержит события, поведения и зависит от M\VM VM служит для связывания M с V Всевоволод Головизнин, 2010


Слайд 9

Я ICQ – 733540 Skype – uapushok Blog – pushoksuper.wordpress.com


×

HTML:





Ссылка: