Download - Apis power MVC for the Web
![Page 1: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/1.jpg)
ACHIEVING API MATURITY @ GLUECON 2011Panel thoughts:
APIS POWER MVC FOR THE WEB
Steven Willmott / 3scale [email protected]://www.3scale.net@njyx
![Page 2: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/2.jpg)
All content http://creativecommons.org/licenses/by-sa/3.0/us/
![Page 3: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/3.jpg)
MVC (Model / View / Controller)
Wildly Successful Architectural Pattern for Application Development
![Page 4: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/4.jpg)
APIs are spreading across the web
Seem like random points of data, each with their own rules, features,
functions and value
![Page 5: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/5.jpg)
These two things have nothing do with each other right?
(apart from in the obvious way)
![Page 6: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/6.jpg)
MAYBE THEY DO…
![Page 7: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/7.jpg)
VIEW = FORM
MODEL = DATA
CONTROLLER = BUSINESS LOGIC
Model
View Controller
MVC is Model / View / Controller
![Page 8: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/8.jpg)
Lots of Frameworks
Originally described for Smalltalk at Xerox Park
(copyrights / respective owners)
![Page 9: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/9.jpg)
MVC has Revolutionized Software Web App Development
![Page 10: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/10.jpg)
Clear separation between Data, Presentation & Business Logic
![Page 11: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/11.jpg)
First : MVC Applications
Model
View
Controller
Separate at Design Time
Baked together at Run Time
![Page 12: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/12.jpg)
Then : MVC SAAS
Model
View
Controller
Separate at Design Time
Baked together at Run Time
Separate at Deploy Time
![Page 13: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/13.jpg)
So What does this have to do with APIs?
![Page 14: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/14.jpg)
Actually Yes - APIs Enable Separation of Concerns:
![Page 15: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/15.jpg)
Across the Web
![Page 16: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/16.jpg)
Across Companies
![Page 17: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/17.jpg)
Example…
Model View Controller
Data Anywhere in any form
Many Delivery Channels
Third parties operating on data
![Page 18: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/18.jpg)
Example Models
Model
Data Anywhere in any form
(copyrights / respective owners)
![Page 19: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/19.jpg)
Example: Views
View
Many Delivery Channels
(copyrights / respective owners)
![Page 20: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/20.jpg)
Example: Controllers
Controller
Many Delivery Channels
(copyrights / respective owners)
![Page 21: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/21.jpg)
APIs Enable Separation & Focus
Model View Controller
Data Anywhere in any form
Many Delivery Channels
Third parties operating on data
APIs / Integration / Ecosystems
![Page 22: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/22.jpg)
Impact
Value
Speed
Leverage
More value from existing assets
Time to Market
Ecosystems are strength
Focus on Core
Business
![Page 23: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/23.jpg)
Architectural Patterns
MODELS: Push / Pull Data
CONTROLLERS: Transform or Orchestrate
VIEWS: Integrate and Visualise
![Page 24: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/24.jpg)
API Maturity
![Page 25: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/25.jpg)
Trends: Convergence
MODELS: Consolidation (e.g. Twitter Model for blogging)
CONTROLLERS: Similarities in Communications APIs
VIEWS: Emerging Winning PlatformsWith Eyeballs
![Page 26: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/26.jpg)
Trends: Internet Operating System (Tim O’Reilly)
Search
Media Access(Auth / Caching / Analytics)
Communications (Email, IM, …)
Identity & Social Graph
Payment
AdvertisingLocation Activity Streams
Time
Image & Speech Recognition Government Data
Storage Compute Power Connectivity
![Page 27: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/27.jpg)
Trends: Enabling components
C.f. Tim O’Reilly
Search
Media AccessTime
LocationAdvertising
Communications
Identify & Social Graph
![Page 28: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/28.jpg)
The Internet Operating System Emerging
Search
Media Access(Auth / Caching / Analytics)
Communications (Email, IM, …)
Identity & Social Graph
Payment
AdvertisingLocation Activity Streams
Time
Image & Speech Recognition Government Data
Storage Compute Power Connectivity
(copyrights / respective owners)
![Page 29: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/29.jpg)
CONCLUSIONS
![Page 30: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/30.jpg)
APIs enable separation of concern – MVC patterns are emerging across the Web
![Page 31: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/31.jpg)
An “Internet Operating System” may not be that far away
![Page 32: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/32.jpg)
Thank You to Gluecon!
Steven Willmott / 3scale networks
Find 3scale at http://www.3scale.netFind me at [email protected] & @njyx
![Page 33: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/33.jpg)
http://www.3scale.net/
Out of the box management infrastructure to power your API & App Strategy
![Page 34: Apis power MVC for the Web](https://reader033.vdocument.in/reader033/viewer/2022060107/554bb53fb4c90530298b4721/html5/thumbnails/34.jpg)
/END