SlideShare a Scribd company logo
Introduction to MVC for Desktop ApplicationCourse C1001He Shiming2010-9
MVC in Desktop Applicationshow MVC web-apps affected desktop development
Brief Look of Cocoa Framework
A Simple Cocoa ApplicationStart inInterface BuilderLaying out form-styleinterfaceusing viewsand widgets
A Simple Cocoa ApplicationController-styleclass named“fieldController”to serve as anaction bridgebetween UI andunderlyinglogic
A Simple Cocoa ApplicationBind this controllerto UI, drag anNSObject to ourresource, and linkit to fieldControllerusinginspector
A Simple Cocoa ApplicationRight click thisobject and targetour text field
A Simple Cocoa ApplicationRelease mousebutton and assign“textField” outletto this text field
A Simple Cocoa ApplicationDrag “Set Text”button to ourfieldController
A Simple Cocoa ApplicationRelease mousebutton and assign“setText” methodto this buttonaction
A Simple Cocoa ApplicationFinally,implement“setText”infieldController
A Simple Cocoa Application
Cocoa Framework Achieved:Isolation of user interface from application logicUser interface being established from a resource (.nib from Interface Builder) file, not from code (similar to .NET)Action being responded and processed via a controller (not exactly the controller of MVC per se)Reusable user interface resource and controller logic
But Cocoa is Still Not Great Because:It’s Objective-C based, and only available on Mac OS XProgramming based largely on visual design, not codingOnce programmed, the application has great dependency on Cocoa framework itselfController has dependency on view, it cannot be written without knowing the specifics of viewNot solving parallel development problem, no good way for peer review
References Regarding Design Patternshttp://stackoverflow.com/questions/516411/raw-function-pointer-from-a-bound-method/516537http://stackoverflow.com/questions/946834/is-there-a-design-pattern-that-deals-with-callback-mechanism
References Regarding MVC and Othershttp://en.wikipedia.org/wiki/Model–View–Controllerhttp://www.oracle.com/technetwork/articles/javase/mvc-136693.htmlhttp://www.djangoproject.com/http://code.google.com/webtoolkit/

More Related Content

PPTX
MVC for Desktop Application - Part 1
PPTX
MVC for Desktop Application - Part 4
PPTX
MVC for Desktop Application - Part 2
PPT
Why MVC?
PPTX
Model view controller (mvc)
PDF
ASP.NET MVC 3
DOCX
A report on mvc using the information
PDF
MVC Seminar Presantation
MVC for Desktop Application - Part 1
MVC for Desktop Application - Part 4
MVC for Desktop Application - Part 2
Why MVC?
Model view controller (mvc)
ASP.NET MVC 3
A report on mvc using the information
MVC Seminar Presantation

What's hot (20)

PPT
MVC(Model View Controller),Web,Enterprise,Mobile
PDF
MVC architecture
PPTX
What's new in asp.net mvc 4
PDF
Angular Rebooted: Components Everywhere
PPT
Session 5 : mvc - Giáo trình Bách Khoa Aptech
PPT
Code Camp 06 Model View Presenter Architecture
PPTX
Model View Presenter presentation
DOCX
IntroductionToMVC
ODP
Why Use MVC?
PPT
Ppt of Basic MVC Structure
PDF
PPTX
Angularjs Live Project
PPTX
MVVM+MEF in Silvelight - W 2010ebday
PPT
ASP.NET MVC Presentation
PDF
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
PPTX
Introduction to angular js for .net developers
PPTX
Spring mvc
PPTX
Mvc pattern and implementation in java fair
PPT
MVC Architecture
PDF
Asp net-mvc-3 tier
MVC(Model View Controller),Web,Enterprise,Mobile
MVC architecture
What's new in asp.net mvc 4
Angular Rebooted: Components Everywhere
Session 5 : mvc - Giáo trình Bách Khoa Aptech
Code Camp 06 Model View Presenter Architecture
Model View Presenter presentation
IntroductionToMVC
Why Use MVC?
Ppt of Basic MVC Structure
Angularjs Live Project
MVVM+MEF in Silvelight - W 2010ebday
ASP.NET MVC Presentation
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
Introduction to angular js for .net developers
Spring mvc
Mvc pattern and implementation in java fair
MVC Architecture
Asp net-mvc-3 tier
Ad

Viewers also liked (20)

PDF
Cross-platform Desktop application with AngularJS and build with Node-webkit
KEY
Make GUI Apps with Shoes
PDF
An introduction to the ruby ecosystem
PPT
It enters a new learning environment
PPTX
Introduction To Microsoft Office Share Point 2007 – Planning Installation Con...
PDF
Word2007p1
PPTX
The Basics of Microsoft Project - Step 1
PDF
Adobe photoshop cs6
PPTX
Office 2010 Info
PDF
Developing cross platform desktop application with Ruby
PPT
Uses & applications of microsoft excel in vph research
PPTX
DAY 2 - Starting in Photoshop (Images and Layers)
PPTX
Introduction to Windows XP
PPTX
Tutorial 2
PPTX
Windows Xp Presentation Downing
PPTX
Operating system windows XP
PPTX
IT ENTERS A NEW LEARNING ENVIRONMENT PART 1
PPT
Internet and Networking
PPTX
Lesson 9
PPTX
Access lesson 02 Creating a Database
Cross-platform Desktop application with AngularJS and build with Node-webkit
Make GUI Apps with Shoes
An introduction to the ruby ecosystem
It enters a new learning environment
Introduction To Microsoft Office Share Point 2007 – Planning Installation Con...
Word2007p1
The Basics of Microsoft Project - Step 1
Adobe photoshop cs6
Office 2010 Info
Developing cross platform desktop application with Ruby
Uses & applications of microsoft excel in vph research
DAY 2 - Starting in Photoshop (Images and Layers)
Introduction to Windows XP
Tutorial 2
Windows Xp Presentation Downing
Operating system windows XP
IT ENTERS A NEW LEARNING ENVIRONMENT PART 1
Internet and Networking
Lesson 9
Access lesson 02 Creating a Database
Ad

Similar to MVC for Desktop Application - Part 3 (20)

PDF
Ui design patterns
PPT
Synapse india reviews on i phone and android os
PPT
Synapse india mobile apps update
PPT
ios basics
PPTX
Cocoa and MVC in ios, iOS Training Ahmedbad , iOS classes Ahmedabad
PPT
Mvc 130330091359-phpapp01
PDF
Session 7 - Overview of the iOS7 app development architecture
PDF
How I Accidentally Discovered MVVM
PPTX
MVC.pptx
PPTX
An Introduction To Model  View  Controller In XPages
PPTX
MWLUG 2015 - An Introduction to MVC
PPTX
Model viewcontrolle
PDF
Model View Madness
PPTX
MVC architecture by Mohd.Awais on 18th Aug, 2017
PDF
iOS (7) Workshop
PDF
Download full ebook of Cocoa Fundamentals Guide instant download pdf
PPTX
Xamarin.Mac Introduction
PPTX
Code camp 2011 Getting Started with IOS, Una Daly
PPT
Ios development
Ui design patterns
Synapse india reviews on i phone and android os
Synapse india mobile apps update
ios basics
Cocoa and MVC in ios, iOS Training Ahmedbad , iOS classes Ahmedabad
Mvc 130330091359-phpapp01
Session 7 - Overview of the iOS7 app development architecture
How I Accidentally Discovered MVVM
MVC.pptx
An Introduction To Model  View  Controller In XPages
MWLUG 2015 - An Introduction to MVC
Model viewcontrolle
Model View Madness
MVC architecture by Mohd.Awais on 18th Aug, 2017
iOS (7) Workshop
Download full ebook of Cocoa Fundamentals Guide instant download pdf
Xamarin.Mac Introduction
Code camp 2011 Getting Started with IOS, Una Daly
Ios development

Recently uploaded (20)

PPTX
MYSQL Presentation for SQL database connectivity
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPT
Teaching material agriculture food technology
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Approach and Philosophy of On baking technology
PDF
Electronic commerce courselecture one. Pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Spectral efficient network and resource selection model in 5G networks
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
Spectroscopy.pptx food analysis technology
PDF
Review of recent advances in non-invasive hemoglobin estimation
MYSQL Presentation for SQL database connectivity
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
MIND Revenue Release Quarter 2 2025 Press Release
Teaching material agriculture food technology
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Encapsulation_ Review paper, used for researhc scholars
The Rise and Fall of 3GPP – Time for a Sabbatical?
Approach and Philosophy of On baking technology
Electronic commerce courselecture one. Pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Spectral efficient network and resource selection model in 5G networks
The AUB Centre for AI in Media Proposal.docx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
cuic standard and advanced reporting.pdf
Network Security Unit 5.pdf for BCA BBA.
Understanding_Digital_Forensics_Presentation.pptx
Programs and apps: productivity, graphics, security and other tools
Spectroscopy.pptx food analysis technology
Review of recent advances in non-invasive hemoglobin estimation

MVC for Desktop Application - Part 3

  • 1. Introduction to MVC for Desktop ApplicationCourse C1001He Shiming2010-9
  • 2. MVC in Desktop Applicationshow MVC web-apps affected desktop development
  • 3. Brief Look of Cocoa Framework
  • 4. A Simple Cocoa ApplicationStart inInterface BuilderLaying out form-styleinterfaceusing viewsand widgets
  • 5. A Simple Cocoa ApplicationController-styleclass named“fieldController”to serve as anaction bridgebetween UI andunderlyinglogic
  • 6. A Simple Cocoa ApplicationBind this controllerto UI, drag anNSObject to ourresource, and linkit to fieldControllerusinginspector
  • 7. A Simple Cocoa ApplicationRight click thisobject and targetour text field
  • 8. A Simple Cocoa ApplicationRelease mousebutton and assign“textField” outletto this text field
  • 9. A Simple Cocoa ApplicationDrag “Set Text”button to ourfieldController
  • 10. A Simple Cocoa ApplicationRelease mousebutton and assign“setText” methodto this buttonaction
  • 11. A Simple Cocoa ApplicationFinally,implement“setText”infieldController
  • 12. A Simple Cocoa Application
  • 13. Cocoa Framework Achieved:Isolation of user interface from application logicUser interface being established from a resource (.nib from Interface Builder) file, not from code (similar to .NET)Action being responded and processed via a controller (not exactly the controller of MVC per se)Reusable user interface resource and controller logic
  • 14. But Cocoa is Still Not Great Because:It’s Objective-C based, and only available on Mac OS XProgramming based largely on visual design, not codingOnce programmed, the application has great dependency on Cocoa framework itselfController has dependency on view, it cannot be written without knowing the specifics of viewNot solving parallel development problem, no good way for peer review
  • 15. References Regarding Design Patternshttp://stackoverflow.com/questions/516411/raw-function-pointer-from-a-bound-method/516537http://stackoverflow.com/questions/946834/is-there-a-design-pattern-that-deals-with-callback-mechanism
  • 16. References Regarding MVC and Othershttp://en.wikipedia.org/wiki/Model–View–Controllerhttp://www.oracle.com/technetwork/articles/javase/mvc-136693.htmlhttp://www.djangoproject.com/http://code.google.com/webtoolkit/