Master Course
Distributed Object Systems
WebHome
-
Education page
-
Description
-
Literature
-
Schedule
-
Project
-
Project Groups
-
Reservation
-
News
Center
Master Program
Center
Home
Courses
People
Projects
Page
Edit Page
Rename Page
Attach File
Printable
Wiki Source
More ...
Web
Recent Changes
Notify Service
News
Page Index
Search
More ...
Wiki
About TWiki
Text Formatting
Registration
Change Password
Reset Password
Users
Groups
Log In
or
Register
Kosice Course
Dos
<div class="newsbar"> ---++++ News %INCLUDE{KosiceNews}% [[KosiceNews][more ...]] </div> [ <a href="#ToPriject">Project</a> | <a href="#ToSlides">Slides</a> | <a href="#ToLiterature">Literature</a> | <a href="#Links">Links</a> | <a href="#Downloads">Downloads</a> ] #ToProject ---+++ Project The [[KosiceProject][description of the project]] for the course in KoĻice is on a [[KosiceProject][different page]]. #ToSlides ---+++ Slides The transparencies of the lectures will be put here as PDF files. #ToLectures || | *Lecture* | *Date* | *Subject* | *Slides* | *Extra Files* | | 1 | Feb 25 | Introduction | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides1x.pdf">Introduction</a> | | | 2 | Feb 26 | Java RMI | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides2x.pdf">RMI</a> | <a href="http://www.cs.uu.nl/docs/vakken/gob/RMI.zip">RMI example (zip)</a> | | 3 | Mar 4 | Corba | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides3x.pdf">Corba</a> | <a href="http://www.cs.uu.nl/docs/vakken/gob/Corba.zip">Corba examples (zip)</a> | | 4 | Mar 5 | XMLRPC/SOAP/Webservices | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides4x.pdf">XMLRPC/SOAP</a> | | | 5 | Mar *10* | Activation/POA | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides5x.pdf">Corba2/Activation</a> | <!-- <a href="http://www.cs.uu.nl/docs/vakken/gob/poa.zip">POA examples (zip)</a> --> | | 6 | Mar 12 | Corba/RMI-IIOP | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides6x.pdf">Corba 3</a> | <a href="http://www.cs.uu.nl/docs/vakken/gob/rmi-iiop.zip">RMI-IIOP example (zip)</a> | | 7 | Mar 18 | Tuple spaces and Object spaces | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides7x.pdf">Tuple spaces and Object spaces</a> | | | 8 | Mar 19 | Asynchronous Communication | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides8x.pdf">Asynchronous Communication</a> | <a href="/docs/vakken/gob/notify.zip">Notify examples (zip)</a> | | 9 | Mar 25 | Design Patterns 1 | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides9x.pdf">Design patterns</a>| <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/threadpool.zip">ThreadPool example (zip)</a>| | 10 | Mar 26 | Design Patterns 2 | <a href="http://www.cs.uu.nl/docs/vakken/gob/Kosice/slides10x.pdf">Reactor and Proactor patterns</a>| | #ToLiterature ---+++ Literature This literature is not required for the examination. The following books contain useful information: Robert Orfali, Dan Harkey, Jeri Edwards, The Essential Distributed Objects Survival Guide, Wiley, ISBN 0-471-12993-3 (A bit outdated, but this books gives a broad overview of the subject). Clemens Szyperski, Component Software, Beyond Object-Oriented Programming, Addison-Wesley, 1997-1999, ISBN 0-201-17888-5 Jon Siegel, Corba 3 Fundamentals and programming, second edition, Wiley, 2000, ISBN 0-471-29518-3. Michi Henning, Steve Vinoski, Advanced CORBA Programming with C++, Addison-Wesley, ISBN 0-201-37927-9. Markus Aleksy, Axel Korthaus, Martin Schader, Implementing Distributed Systems with Java and Corba, Springer, 2005, ISBN 3-540-24173-6 Bill <nop>McCarty, Luke Cassady-Dorion, Java Distributed Objects, Sams, 1999, 0-672-31537-8. (out of print) ---------------------------------------------------------------------- The following documents contain important information when you want to know more. <table border=1 width="100%"> <tr><td> ---++++ Lecture 1: RPC * [[http://www.cs.uu.nl/docs/vakken/gob/p39-birrell.pdf][Andrew D. Birrel and Bruce Jay Nelson, Implementing Remote Procedure Calls]] ---++++ Lecture 2: Java RMI * [[http://www.cs.uu.nl/docs/vakken/gob/wollrath.pdf][Ann Wollrath, Roger Riggs, and Jim Waldo, A Distributed Object Model for the Java System]] ---++++ Lecture 3: Corba * [[http://java.sun.com/developer/onlineTraining/corba/corba.html][Corba Tutorial]] ---++++ Lecture 4: XMLRPC/SOAP/Webservices * <a href="http://msdn.microsoft.com/msdnmag/issues/0300/soap/default.aspx">Don Box, A Young Person's Guide to The Simple Object Access Protocol</a> ---++++ Lecture 5: Activation/POA * <a href="http://www.cs.wustl.edu/~schmidt/PDF/C++-report-col11.pdf">Douglas C. Schmidt and Steve Vinoski, Object Adapters: Concepts and Terminology</a> * <a href="http://www.cs.wustl.edu/~schmidt/PDF/C++-report-col12.pdf">Douglas C. Schmidt and Steve Vinoski, Using the Portable Object Adapter for Transient and Persistent CORBA Objects</a> * <a href="http://www.cs.uu.nl/docs/vakken/gob/tn0050.pdf">POA Policy description</a> ---++++ Lecture 6: DII/Interface Repository * <a href="http://www.ddj.com/cpp/184403833">Douglas C. Schmidt and Steve Vinoski, The Dynamic Invocation Interface</a> * <a href="http://www.ddj.com/cpp/184403847">Douglas C. Schmidt and Steve Vinoski, The Dynamic Skeleton Interface</a> * <a href="http://www.ddj.com/cpp/184403854">Douglas C. Schmidt and Steve Vinoski, The Interface Repository</a> ---++++ Lecture 7: Linda/Jini * <a href="http://www.cs.uu.nl/docs/vakken/gob/p80-gelernter.pdf">David Gelernter, Generative Communication in Linda</a>. Only part I (pages 80-101). * <a href="http://www.cs.uu.nl/docs/vakken/gob/jini.pdf">Jim Waldo, The Jini Architecture for Network-centric computing. ---++++ Lecture 8: Corba AMI * <a href="http://www.cs.uu.nl/docs/vakken/gob/C++-report-col15.pdf">Douglas C. Schmidt and Steve Vinoski, An Introduction to CORBA Messaging</a> * <a href="http://www.cs.uu.nl/docs/vakken/gob/C++-report-col16.pdf">Douglas C. Schmidt and Steve Vinoski, Programming Asynchronous Method Invocations with CORBA Messaging</a> </td></tr> </table> ---------------------------------------------------------------------- <a name="Links"></a> ---+++ Links Here are some additional links with background info: <a name="LinksAlg"></a> ---++++ General * <a href="http://www.javaworld.com/javaworld/jw-04-2001/jw-0413-polymorph_p.html">An article about polymorphism (Java)</a></a> ---++++ Java RMI * <a href="http://java.sun.com/j2se/1.4/docs/guide/rmi/getstart.doc.html">Getting Started Using RMI</a> * <a href="http://java.sun.com/docs/books/tutorial/rmi/index.html">RMI Tutorial</a> (follow the links to get the whole tutorial). ---++++ Python * Python tutorial in <a href="http://www.python.org/doc/current/tut/tut.html">HTML</a> or <a href="http://www.network-theory.co.uk/python/manual/pytut.pdf">PDF</a>. * <a href="http://www.cs.uu.nl/docs/vakken/gob/slides4x.pdf"></a>[[http://www.ferg.org/python_slides/handouts.html][Python slides]] ---++++ Corba * An [[http://home.dei.polimi.it/picco/Teaching/distsys/slides/labs/CORBAbook.pdf][online Corba book]]: Corba Explained Simply by Ciaran Hale. * <a href="http://java.sun.com/j2se/1.4.2/docs/guide/idl/">Sun's Java/Corba documentation</a> N.B. The last document is very extensive and informative. If you use Corba it is especially useful to read the following parts: * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/GShome.html">Getting Started with Java IDL</A> * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/jidlExample.html">Java IDL: The "Hello World" Example</A> * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/jidlUsingCORBA.html">Using CORBA and Java IDL</A> * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/tutorial/GSserver.html">Developing the Hello World Server</A> * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/tutorial/GSapp.html" ">Developing a Client Application</A> * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/jidlClients.html">Developing Clients</A> * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/jidlInitialization.html">Initialization</A> * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/jidlNaming.html">Naming Service</A> * <A HREF="http://java.sun.com/j2se/1.4.2/docs/guide/idl/jidlDSI.html">The Dynamic Skeleton Interface (DSI)</A> * <a href="http://java.sun.com/j2se/1.4.2/docs/guide/idl/POA.html">The portable Object Adaptor</a> * <a href="ftp://ftp.omg.org/pub/docs/formal/00-10-07.pdf">Corba IDL specification</a> * <a href="http://developer.java.sun.com/developer/onlineTraining/corba/corba.html">Introduction to Corba (Java)</a> * <a href="http://www.javacommerce.com/CorbaFaq/index.html">Corba FAQ</a> * <a href="http://java.sun.com/j2se/1.4/docs/guide/rmi-iiop/index.html">RMI-IIOP</a> * <a href="http://www-106.ibm.com/developerworks/java/rmi-iiop/index.html">RMI over IIOP</a> * <a href="http://www.javaworld.com/javaworld/jw-12-1999/jw-12-iiop_p.html">RMI over IIOP</a> * <a href="http://www.cs.uu.nl/docs/vakken/gob/col9.pdf">Corba Event Service</a> * <a href="http://www.cs.uu.nl/docs/vakken/gob/arch-overview.pdf">Security Overview</a> ---++++ XML-RPC * <a href="http://www.xmlrpc.com/spec">XML-RPC specification</a> * <a href="http://www.oreillynet.com/pub/a/python/2000/11/22/xmlrpcclient.html">XML-RPC in Python</a> * <a href="http://www.oreillynet.com/pub/a/python/2001/01/17/xmlrpcserver.html">XML-RPC: It Works Both Ways</a> ---++++ SOAP The following documents are based on SOAP 1.1, while the current version is 1.2. * <a href="http://www-106.ibm.com/developerworks/webservices/library/ws-soap/index.html?dwzone=ws">Using WSDL in SOAP Applications</a> * <a href="http://static.userland.com/xmlRpcCom/soap/SOAPv11.htm">SOAP: Simple Object Access Protocol</a> * <a href="http://www.w3.org/TR/SOAP/">SOAP definition</a> * <a href="http://www.w3.org/TR/wsdl12">W3C WSDL definition</a> ---++++ Javaspaces * <a href="http://www.javaworld.com/jw-11-1999/jw-11-jiniology.html">Eric Freeman and Susanne Hupfer, Make room for <nop>JavaSpaces</a>, Part 1-5. ---------------------------------------------------------------------- <a name="Downloads"></a> ---+++ Downloads Please note: I have not checked if these links are still valid. * <a href="http://xml.apache.org/soap/">SOAP for Java</a> * <a href="http://www.pythonware.com/products/soap/">SOAP for Python</a> * <a href="http://www.pythonware.com/products/xmlrpc/index.htm">XML-RPC for Python</a> * Free Corba implementations: * <a href="http://omniorb.sourceforge.net">omniORB</a> with bindings for C++ and Python. Runs on Linux, various Unix systems (incl. Mac OS X) and Windows * <a href="http://www.labs.redhat.com/orbit/">ORBIT</a>, an implementation for Linux and Windows, with bindings for C, C++, Perl, Python, Tcl and others. * <a href="http://openorb.sourceforge.net/">OpenORB</a>, a Java implementation. * <a href="http://jacorb.inf.fu-berlin.de/">JacORB</a>, another Java implementation. * <a href="http://sourceforge.net/projects/fnorb">Fnorb</a>, a Python implementation. * <a href="http://home.t-online.de/home/Martin.Both/vborb.html">An ORB in Visual Basic!!</a> * Furthermore see the <a href="http://adams.patriot.net/~tvalesky/freecorba.html">Free Corba page</a> and <a href="http://www.infosys.tuwien.ac.at/Research/Corba/software.html">CORBA Software</a></a> ---------------------------------------------------------------------- <!-- * Set TABLEATTRIBUTES = tableborder="1" cellpadding="3" cellspacing="0" headerbg="#d9e3ea" headercolor="#005aa0" databg="#ececec,#f6f6f6" --> -- Main.PietVanOostrum - 25 Feb 2009