惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
IT之家
IT之家
博客园 - Franky
Stack Overflow Blog
Stack Overflow Blog
宝玉的分享
宝玉的分享
Recent Announcements
Recent Announcements
Engineering at Meta
Engineering at Meta
S
SegmentFault 最新的问题
V
Visual Studio Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Last Week in AI
Last Week in AI
H
Help Net Security
V
V2EX
H
Hackread – Cybersecurity News, Data Breaches, AI and More
量子位
博客园 - 叶小钗
J
Java Code Geeks
博客园 - 【当耐特】
月光博客
月光博客
爱范儿
爱范儿
人人都是产品经理
人人都是产品经理
酷 壳 – CoolShell
酷 壳 – CoolShell
小众软件
小众软件

博客园 - Ellipse

Design by Contract what's interface Provider, Manager, Helper - Ellipse Build your own CAB #13 - Embedded Controllers with a Dash of DSL Layer supertype for MVP - Ellipse Build your own CAB#12 - Rein in runaway events with the "Latch " Build your own CAB#11 - Event Aggregator Build your own CAB Part #9 - Domain Centric Validation with the Notification Pattern Build your own CAB Part#8 - Assigning Responsibilities in a MVP pattern Build your own CAB Par#7 - what's the Model? Build your own CAB Part #6 - View to Presenter Communication Build your own CAB Part #4 - The Passive View Build your own CAB Part #3 - The Supervising Controller Pattern Build your own CAB Part #1 - The Preamble(Jeremy D. Miller) Build your own CAB Part #2 - The Humble Dialog Box -- Jeremy D. Miller Gridview 的RowCommand Reading Build your own CAB (1) -- Jeremy D. Miller ActionList Webpage redirection
Having a break
Ellipse · 2007-09-17 · via 博客园 - Ellipse

Layer -> Layer : from on layer to another layer ,there are something to do:

  1. data presentation transform
  2. exposition of actions
  3. data(state) synchronization
Layered application: chose which layer is need and what responsibility will be included.

Responsibility: Know, Have, Do              supply actions, consume actions

Autonomous View:

  1. Not Controller, not presenter
  2. the screen is responsible for everything - getting the data (majorely from the Model) and then deals with the data presentation.

Supervising Controller: the controller

  1. the Controller is responsible getting data from other parts of  the application and then setting up the view with all of the data it needs, including the Model
  2. the Screen have a reference to the Model, and is responsible for synchronizing screen state with the Model directly, at this point , we may use data binding or other mechanism

Passive View

  1. then Controller does very thing for the screen, including the synchronization between the screen state and the Model
  2. then Screen is just dumb and exposes lots of getter/setter to the controller

Presentation Model

  1. the Presenter is the Model, the Presentation Model is a data container and presenter as well
  2. the View binds directly to the Presentation Model just like it would in the Supervising Controller.

additional: Embedded Controller, refers to "user interface widget-aware"  classes that can help a view do some of the presentation work. For example, turning the field that has value or changed data blue, GridHelper class to help tootstrap the standard "sort, page, query, filter" functionality that's similar across screens.