1 / 93

Programming with Live Distributed Objects

Explore the benefits of object-orientation and building collaborative apps with live distributed objects. Understand the layers in middleware, protocols, and related works in distributed environments.

moller
Download Presentation

Programming with Live Distributed Objects

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programming with Live Distributed Objects Krzysztof Ostrowski†in collaboration with Ken Birman†, Danny Dolev§, Jong Hoon Ahnn† †Cornell University, §Hebrew University http://liveobjects.cs.cornell.edu

  2. Introduction “Live Objects", Krzysztof Ostrowski

  3. Modern Software Development “Live Objects", Krzysztof Ostrowski

  4. Object-Orientation has Benefits “Live Objects", Krzysztof Ostrowski

  5. Object-Orientation has Benefits “Live Objects", Krzysztof Ostrowski

  6. Distributed Systems: Out of Luck “Live Objects", Krzysztof Ostrowski

  7. Building a Collaborative App “Live Objects", Krzysztof Ostrowski

  8. Building a Collaborative App “Live Objects", Krzysztof Ostrowski

  9. Building a Collaborative App “Live Objects", Krzysztof Ostrowski

  10. Using Obscure, Proprietary APIs low-level ssize_trecvfrom( intsocket, void *buffer, size_tlength, intflags, structsockaddr *address, socklen_t *address_len); obscure proprietary Channel channel = newJChannel( "UDP:PING:FD:STABLE:NAKACK:UNICAST:" +"FRAG:FLUSH:GMS:VIEW_ENFORCER:” + "STATE_TRANSFER:QUEUE"); confusing “Live Objects", Krzysztof Ostrowski

  11. Tightly Coupled Components “Live Objects", Krzysztof Ostrowski

  12. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  13. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  14. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  15. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  16. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  17. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  18. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  19. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  20. Many Layers In the Middleware “Live Objects", Krzysztof Ostrowski

  21. Protocols = Components ??? “Live Objects", Krzysztof Ostrowski

  22. …But Not In Java/.NET/COM/* “Live Objects", Krzysztof Ostrowski

  23. Related Work • Distributed objectsEmerald, Argus, Globus, Linda, F.T. Corba, Croquet • Protocol compositionx-Kernel, Horus, Ensemble, BAST • Protocol typesCSP, π-calculus, BPEL, SSDL, WSCL, CFSM, TLA, IOA, IA, temporal logic, • Protocol specificationsHorus, Ensemble, Chockler et al. [2001] • Distributed environmentsJini, JXTA, WS-* specifications “Live Objects", Krzysztof Ostrowski

  24. Related Work • Distributed objectsEmerald, Argus, Globus, Linda, F.T. Corba, Croquet • Protocol compositionx-Kernel, Horus, Ensemble, BAST • Protocol typesCSP, π-calculus, BPEL, SSDL, WSCL, CFSM, TLA, IOA, IA, temporal logic, • Protocol specificationsHorus, Ensemble, Chockler et al. [2001] • Distributed environmentsJini, JXTA, WS-* specifications “Live Objects", Krzysztof Ostrowski

  25. Related Work • Distributed objectsEmerald, Argus, Globus, Linda, F.T. Corba, Croquet • Protocol compositionx-Kernel, Horus, Ensemble, BAST • Protocol typesCSP, π-calculus, BPEL, SSDL, WSCL, CFSM, TLA, IOA, IA, temporal logic, • Protocol specificationsHorus, Ensemble, Chockler et al. [2001] • Distributed environmentsJini, JXTA, WS-* specifications “Live Objects", Krzysztof Ostrowski

  26. Every Protocol Instance = Object “Live Objects", Krzysztof Ostrowski

  27. Every Protocol Instance = Object “Live Objects", Krzysztof Ostrowski

  28. Objects “Live Objects", Krzysztof Ostrowski

  29. Defining Live Distributed Objects “Live Objects", Krzysztof Ostrowski

  30. Defining Live Distributed Objects “Live Objects", Krzysztof Ostrowski

  31. Defining Live Distributed Objects “Live Objects", Krzysztof Ostrowski

  32. Live Objects vs. .NET Objects “Live Objects", Krzysztof Ostrowski

  33. Live Objects vs. .NET Objects “Live Objects", Krzysztof Ostrowski

  34. Live Objects vs. .NET Objects “Live Objects", Krzysztof Ostrowski

  35. Live Objects vs. .NET Objects “Live Objects", Krzysztof Ostrowski

  36. Live Objects vs. .NET Objects “Live Objects", Krzysztof Ostrowski

  37. Live Objects vs. .NET Objects “Live Objects", Krzysztof Ostrowski

  38. Live Objects vs. .NET Objects Service = Behavior “Live Objects", Krzysztof Ostrowski

  39. References “Live Objects", Krzysztof Ostrowski

  40. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  41. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  42. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  43. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  44. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  45. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  46. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  47. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  48. Creating a Live Object “Live Objects", Krzysztof Ostrowski

  49. Composition “Live Objects", Krzysztof Ostrowski

  50. Connecting Objects “Live Objects", Krzysztof Ostrowski

More Related