object oriented guis
play

Object-Oriented GUIs Andrew P . Black 1 Object-Oriented GUIs In - PowerPoint PPT Presentation

Object-Oriented GUIs Andrew P . Black 1 Object-Oriented GUIs In the beginning, there was Chaos And then, there was MVC Model View Controller 2 ModelViewController The key idea is to separate the application logic


  1. Object-Oriented GUIs Andrew P . Black 1

  2. Object-Oriented GUIs • In the beginning, there was Chaos • And then, there was MVC • Model • View • Controller 2

  3. Model–View–Controller • The key idea is to separate the application logic — the Model — from • The View — one or more visualizations of the model on the display, and • The Controller — which handles user input on the view, and causes the model to change in response. 3

  4. Why MVC? • Manage complexity • Re-use models with different views • Re-use views with different models 4

  5. Warning: MVC ≠ MVC • There used to be a package, in Squeak, called MVC. • It implemented MVC • It has been removed from Pharo • Morphic is the only User-interface framework in Pharo 5

  6. Morphic • Morphic is the name of Pharo’s UI framework • Morph is also the name of the base (abstract) class that implements Morphs • Morphs combine View and Control • The Model can be a separate collection of objects, or the Morphs can be their own model. 6

  7. Model-View separation When should you separate Model and View? 7

  8. Why MVC? • Manage complexity • Re-use models with different views • Re-use views with different models 8

  9. Model-View separation When should you separate Model and View? • if the complexity is high • if there is a chance for re-use 9

  10. Dancing Boxes • joeTheBox is an example of a Morph with its own behavior • behavior is very simple — no need to separate the graphical part from the behavioral part • Hence, we gave Morphs application- specific behavior, such as danceWith: 10

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend