csce 315 – programming studio spring 2012. goal: reuse and sharing many times we would like to...
TRANSCRIPT
![Page 1: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/1.jpg)
CSCE 315 – Programming StudioSpring 2012
![Page 2: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/2.jpg)
Goal: Reuse and SharingMany times we would like to reuse the
same process or data for different purposeWant ways to “reuse” code, tools, etc. for
different purposesWant ways to “share” data across different
applications
A variety of technologies, techniques, etc. have been developed to do this
![Page 3: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/3.jpg)
Non-sharing stuffSilos
Idea is that data is stored in such a way that it cannot be communicated to other applications
Standalone programsRun locally on local data
![Page 4: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/4.jpg)
Middleware“Middle” layer between applications and
more basic system (OS) or between distributed applications
Provides a common interface for distributed applicationsAllows heterogeneous HW/OS platforms
Generally refers to software allowing processes running across network to interact
![Page 5: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/5.jpg)
Middleware Relies on common interchange formats
XML data interchangeSOAP (an XML-based message passing
framework)JSON (JavaScript Object Notation)Simple HTTPApplication-specific formats (e.g. for a
company seeking to integrate products)
![Page 6: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/6.jpg)
Web ServicesIdea is to provide a “service” that will have
common useService can be used by a wide variety of
programsCan vary in many ways
Access method State maintained, or passed only through
message?
![Page 7: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/7.jpg)
RPC Web ServicesRemote Procedure CallsTraditional type of web serviceBasically like calling a subroutine, but on
another systemUsually use a particular message passing
system (like SOAP)
![Page 8: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/8.jpg)
RESTful Web ServicesRESTful (REpresentational State Transfer)Very few and simple commands (GET, PUT), but
more complex method of describing resourcesResources are the “objects”
In implementation, typically each resource has its own URL
E.g. a person in a database is a resource Will have a unique URL for that person Calling that URL will get a “document” about that person Document will have hyperlinks to other related information,
each of which is another resource
![Page 9: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/9.jpg)
Service Oriented ArchitecturesIdea is to break up programs into a set of
servicesAll services are accessed over a network
Communicate with each otherApplications are built by combining services
![Page 10: CSCE 315 – Programming Studio Spring 2012. Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want](https://reader036.vdocuments.site/reader036/viewer/2022082821/5697bfe11a28abf838cb3c80/html5/thumbnails/10.jpg)
CommentaryThis area has had an explosion of jargon,
terminology, etc.Much of it driven by business interests
Those offering frameworks for development Those offering software to integrate IT/corporate groups looking to describe what they’re
doing
Basic principles aren’t that different, or particularly complicatedDistribute the computation and/or data