Lecture13 Gui Design Patterns
Lecture13 Gui Design Patterns
CSE 403
Keyboard,
mouse,
touchpad,
accelerometer
dispatch_event(e)
• Handlers (callbacks) are installed to register
interest in some event type
• View/Controller is merged
void OnPaint(GraphicsContext g)
//paint myself
for (child in this.children) {
child.paint(g);
}
}
When to paint?
• The application does not decide!
• Disadvantages:
– Difficult to debug a large library
– Difficult to reuse code that uses one library
Pros and cons of web applications
• Pros:
– Nothing to install, just need conformant browser
– Easier to configure dynamically
– Effortless “software update”
• Cons:
– HTML/JS/DOM not intended for stateful apps
– Usually requires internet connection
– Less control over user experience
Web (server) Programming
• Can be implemented in any language
– Popular: PHP, Ruby, Java, Python, Perl