MVCModel-View-Controller презентация

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

Слайд 1MVC MODEL-VIEW-CONTROLLER
Всевоволод Головизнин, 2010


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

и интерфейс разделены на три отдельных компонента

Слайд 3Общие сведения
Паттерн 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


Слайд 4Model
Содержит классы, описывающие работу с данными и бизнес-логикой приложения
Работа с СУБД\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);
}


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

Всевоволод Головизнин, 2010


Слайд 6Controller
Содержит классы, управляющие работой приложения
Что и когда показывать
Какие данные необходимы

Всевоволод Головизнин,

2010

public ActionResult Create(student stud)
{

if ((ModelState.IsValid) && (_studentContext.StudentExists(stud) == false))
{
_studentContext.AddNewStudent(stud);
return RedirectToAction("Index");
}
ViewData["selectItems"] = (IEnumerable)_groupContext.SelectGroupList();
return View(stud);
}


Слайд 7Разделяй и властвуй
ИНТЕРФЕЙС - МОДЕЛЬ
ИНТЕРФЕЙС - УПРАВЛЯТОР
В корне отличаются друг от

друга (разные подходы и средства)
Использование нескольких пользовательских интерфейсов для одной модели
Легче тестировать

Легче тестировать
Несколько контроллеров для одного интерфейса
Не так важно и очевидно, но полезно в Web разработках

Всевоволод Головизнин, 2010


Слайд 8Развитие MVC
MVC
MODEL-VIEW-PRESENTER
MVP
Представление получает данные модели от контроллера
Контроллер следит за V\M и

действует в ответ на изменения
M реагирует на изменение V

Представление получает данные от презентера и уведомляет его об изменениях
Презентер перенаправляет изменения V к M
P реагирует на изменения V

Всевоволод Головизнин, 2010


Слайд 9Развитие MVC
MVC
MODEL-VIEW-VIEWMODEL
MVVM
V пассивно и «не знает» о M
V активно, содержит события,

поведения и зависит от M\VM
VM служит для связывания M с V

Всевоволод Головизнин, 2010


Слайд 10Я
ICQ – 733540
Skype – uapushok
Blog – pushoksuper.wordpress.com


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика