Содержание
- 2. Обзор Cхема использования нескольких шаблонов проектирования, с помощью которых модель данных приложения, пользовательский интерфейс и взаимодействие
- 3. Пассивная модель Passive Model (пассивная модель) - Модель не имеет вообще никаких способов воздействовать на Представление
- 4. Активная модель MVC Active Model (активная модель) - Модель имеет возможность оповестить Представление о том, что
- 5. View представление, пользовательский интерфейс, Model - модель, бизнес логика Controller - контроллер, содержит логику на изменение
- 6. Реализация MVC в качестве GUI framework Cocoa framework Java Swing Qt4 GTK+
- 7. Реализация MVC как web framework Java – JSF, Oracle App Framework, Play Framework C# - ASP.NET
- 8. package springmvc.model; public class Brand { private Long id; private String name; private String country; public
- 9. Brand.java public void setCountry(String country) { this.country = country; } public Long getId() { return id;
- 10. Car.java package springmvc.model; import java.math.BigDecimal; public class Car { private Long id; private Brand brand; private
- 11. Car.java public void setId(Long id) { this.id = id; } public Brand getBrand() { return brand;
- 12. CarListController.java package springmvc.web; import springmvc.service.CarManager; public class CarListController implements Controller { public ModelAndView handleRequest(HttpServletRequest arg0,HttpServletResponse arg1)
- 13. CarList.jsp Car List ${car.brand.name} ${car.model}: ${car.price}
- 14. Отображение страницы
- 15. Model-view-presenter Разработан в начале 90-х годов в проекте Taligent. Паттерн был перенесен в JAVA Mike Potel.
- 16. Model-view-presenter Контроллер (Presenter) дает знать представлению об изменениях. Данный подход позволяет создавать абстракцию представления
- 17. Реализации MVP Google Web Toolkit ASP.NET Web Forms Model-View-Presenter (MVP) Java Swing/AWT Silverlight …
- 18. Пример IView public interface IView { /// /// Вывод градусов Фаренгейта /// void SetFarenheit(double value); ///
- 19. Пример Presenter public class Presenter { private Model _model = new Model(); private IView _view; ///
- 20. Пример Presenter /// /// Обработка события, установка нового значения градусов по Фаренгейту /// private void OnSetFarenheit(object
- 21. Пример View /// /// Обновление Представления новыми значениями модели. /// По сути Binding (привязка) значений модели
- 22. Отличия от MVC Более слабая связь с моделью. Presenter отвечает за связывание модели и представления Более
- 23. Литература MVC: XEROX PARC 1978-79 (1979) by Trygve Reenskaug, http://heim.ifi.uio.no/~trygver/themes/mvc/mvc-index.html Spring MVC Fast Tutorial http://maestric.com/doc/java/spring/mvc Э.
- 25. Скачать презентацию