﻿
<?xml version="1.0" encoding="utf-8" ?> 
<?xml-stylesheet type="text/xsl" href="../../webpages/courses.xsl" ?>
<!--
/////////////////////////////////////////////////////////////////////////////
//  CSE681codeL5.xml - provides links Lecture #5 materials                 //
//                     on the ECS college server                           //
//                                                                         //
//  Jim Fawcett, CST 2-187, Syracuse University, jfawcett@twcny.rr.com     //
/////////////////////////////////////////////////////////////////////////////
-->

<courses name="Fawcett">

  <btitle>CSE681 Lecture #5</btitle>
  <theme src="../../webpages/CodeTheme.css" />

  <visible>
  <title>CSE681 - Software Modeling and Analysis</title>
  <subtitle>Lecture #5 - Sockets and Windows Communication Foundation</subtitle>
  <revised>30 September 2008</revised>
  
  <hilight>
    <ifile title="Home">../../webpages/FawcettHome.xml</ifile>&#32;
    <ifile title="Courses">../../webpages/Courses.xml</ifile>&#32;
    <ifile title="Code">../../webpages/Code.xml</ifile>&#32;
    <ilink title="Handouts">www.ecs.syr.edu/faculty/fawcett/handouts</ilink>&#32;
    <ifile title="CoreTech">../../webpages/CoreTechnologies.xml</ifile>&#32;
    <ifile title="Books">../../webpages/Books.xml</ifile>&#32;
    <ifile title="Articles">../../webpages/Articles.xml</ifile>&#32;
    <ifile title="Math">../../webpages/Mathematics.xml</ifile>&#32;
    <ifile title="Research">../../webpages/research.xml</ifile>&#32;
    <ifile title="Masters Projects">../../webpages/MastersProjects.xml</ifile>&#32;
    <ifile title="SWDev">../../webpages/swdev.xml</ifile>&#32;
    <ifile title="WebDev">../../webpages/webdev.xml</ifile>&#32;
    <ifile title="News">../../webpages/news.xml</ifile>&#32;
    <ifile title="OtherLinks">../../webpages/OtherLinks.xml</ifile>&#32;
    <ifile title="SiteDesign">../../webpages/SiteDesign.xml</ifile>&#32;
    <ifile title="Graduates">../../webpages/graduates.xml</ifile>&#32;
    <ifile title="AllPages">../../webpages/AllPages.xml</ifile>&#32;
    <ifile title="Office Hours">../../webpages/OfficeHours.xml</ifile>&#32;
    <notice title="Notices">../../webpages/notices.xml</notice>&#32;
    <html><a href="#contents">Contents</a></html>&#32;
  </hilight>

  <!-- <include src="CoursesNavBar.xml"/> -->

  <hilight>
    <ifile title="CSE681-SWMAA">../../webpages/CSE681.xml</ifile>&#32;
    <ifile title="CSE686-IP">../../webpages/CSE686.xml</ifile>&#32;
    <ifile title="CSE687-OOD">../../webpages/CSE687.xml</ifile>&#32;
    <ifile title="CSE775-DO">../../webpages/CSE775.xml</ifile>&#32;
    <ifile title="CSE776-DP">../../webpages/CSE776.xml</ifile>&#32;
    <ifile title="CSE778-AWP">../../webpages/CSE778.xml</ifile>&#32;
    <ifile title="CSE784-SWS">../../webpages/CSE784.xml</ifile>
  </hilight>

  <hilight>
    <ifile title="Lecture #01">../Lectures/CSE681CodeL1.xml</ifile>&#32;
    <ifile title="Lecture #02">../lectures/CSE681CodeL2.xml</ifile>&#32;
    <ifile title="Lecture #03">../Lectures/CSE681CodeL3.xml</ifile>&#32;
    <ifile title="Lecture #04">../Lectures/CSE681CodeL4.xml</ifile>&#32;
    <ifile title="Lecture #05">../Lectures/CSE681CodeL5.xml</ifile>&#32;
    <ifile title="Lecture #06">../Lectures/CSE681CodeL6.xml</ifile>&#32;
    <ifile title="Lecture #07">../Lectures/CSE681CodeL7.xml</ifile>&#32;<br/>
    <ifile title="Lecture #08">../Lectures/CSE681CodeL8.xml</ifile>&#32;
    <ifile title="Lecture #09">../Lectures/CSE681CodeL9.xml</ifile>&#32;
    <ifile title="Lecture #10">../Lectures/CSE681CodeL10.xml</ifile>&#32;
    <ifile title="Lecture #11">../Lectures/CSE681CodeL11.xml</ifile>&#32;
    <ifile title="Lecture #12">../Lectures/CSE681CodeL12.xml</ifile>&#32;
    <ifile title="Lecture #13">../Lectures/CSE681CodeL13.xml</ifile>&#32;
    <ifile title="Lecture #14">../Lectures/CSE681CodeL14.xml</ifile>&#32;<br/>
  </hilight>
  
  <hilight>
    <html><a href="#Contents">Contents</a></html>&#32;
    <html>
      <a href="../../webpages/cse681.xml#Syllabus">Syllabus</a>
    </html>&#32;
  </hilight>
  
  <section title="Web Resources:">
      <ilink title="UML">bdn.borland.com/article/0,1410,31863,00.html</ilink>&#32;
      <ilink title="XML,&#160;HTML">www.w3schools.com</ilink>&#32;
      <ilink title="Code&#160;Project">www.codeproject.com</ilink>&#32;
      <ilink title="Microsoft&#160;Developer's&#160;Network">www.msdn.microsoft.com</ilink>&#32;
      <ilink title="DevelopMentor">www.develop.com/devresources/default.aspx</ilink>&#32;
      <ilink title="XML">xml.com</ilink>&#32;
      <ilink title="Sells&#160;Brothers">sellsbrothers.com</ilink>&#32;
      <ilink title="Windows&#160;Developer's&#160;Journal">www.wdj.com</ilink>&#32;
      <ilink title="Windows&#160;Forms">windowsforms.net/</ilink>&#32;
      <ilink title="DotNetJunkies">www.dotnetjunkies.com</ilink>&#32;
      <ilink title=".Net Quickstarts">www.dotnetjunkies.com/quickstart/</ilink>&#32;
      <ilink title="C#&#160;Corner">www.c-sharpcorner.com</ilink>&#32;
      <ilink title="Mono&#160;Project">www.go-mono.com</ilink>&#32;
  </section>
  
  <isection title="Office Hours:">
    <ifile title="Instructor &amp; TAs">../../webpages/officeHours.xml</ifile>
  </isection>
  
  <section title="Content:">
  <html><a name="Contents" id="Syllabus"/></html>
  This lecture is an introduction to sockets and remoting via Remote Procedure Calls (RPCs).  
  Today we talk about Win32 sockets, .Net sockets, .Net Remoting, and give a lot of code examples.
    <olist>
      <litem>
        <html>
          The <a href="../../webpages/CSE681.xml#Syllabus">Syllabus</a> describes topics to be covered,
          reading material for you to digest <u>before coming to class</u>, and due dates
          for the assigned projects.
        </html>
      </litem>
<!--
      <litem>
        <file title="Best Project #1s - Adam Weingarten">../BestProject1s/adweinga1.doc</file>
      </litem>
      <litem>
        <file title="Best Project #1s - Don McGarry">../BestProject1s/dpmcgarr1.doc</file>
      </litem>
-->
      <litem>
        <file title="OCD Problems">../projects/OCDProblemsPr1.doc</file>
      </litem>
      <litem>
        <file title="Another format for Uses">../projects/UseCasesForProject.doc</file>
      </litem>
      <litem>
        <ifile title="Project #1">../projects/Pr1F08.doc</ifile>, and <ifile title="Project #2">../projects/Pr2F08.doc</ifile><br/>
      </litem>
      <litem>
        <ifile title="Project #3">../projects/Pr3F08.doc</ifile>, and <ifile title="Project #4">../projects/Pr4F08.doc</ifile><br/>
      </litem>
<!--
      <litem>
        For anyone who is still struggling to get Project #2 together, I've put another prototype in
        <ifile title="cse681/code/DiagrammarDemo2">../code/DiagrammerDemo2</ifile>.  This shows how to build an in-memory
        representation of symbols, how to select them, how to drag them, and how to create new symbols from a context menu.
      </litem>
-->
      <litem>
        Evaluating code projects - Cyclomatic Complexity, Size, Manual and Maintenance Pages, demonstration of requirements
      </litem>
      <litem>
        <file title="compile and run batch files">../projects/compileandrun</file>
      </litem>
<!--
      <litem>
        <ifile title="Project #3 - Due 18 October 2005">../projects/Pr3F06.doc</ifile>, 
        <ifile title="Project #4 - Due 15 November 2005">../projects/Pr4F06.doc</ifile>, 
        <ifile title="Pluggable Remote Executor">../projects/PluggableRemoteExecutive.vsd</ifile>
      </litem>
      <litem>
        <file title="Repository Server Packages">../presentations/packages.vsd</file>
      </litem>
      <litem>
        <file title="Component Representation">../presentations/components.vsd</file>
      </litem>
      <litem>
        <file title="Test Harness Structure">../presentations/TestHarnessStructure.ppt</file>
      </litem>
      <litem>
        <file title="Test Harness Class Diagram">../presentations/TestHarness.vsd</file>
      </litem>
      <litem>
        <file title="Plug-in Demo">../code/PlugInDemo</file>
      </litem>
      <litem>
        <file title="Creating AppDomains Demo">../code/AppDomainDemo</file>
      </litem>
-->
      <litem>
        <file title="Win32 Sockets Presentation">../../coretechnologies/SocketsAndRemoting/Presentations/Win32Sockets.ppt</file>
      </litem>
      <litem>
        <file title="Win32 Sockets Code Demonstration">../../coretechnologies/SocketsAndRemoting/code/socketDemo_Win32</file>
      </litem>
      <litem>
        <file title=".Net Sockets Presentation">../../coretechnologies/SocketsAndRemoting/presentations/NetSockets.ppt</file>
      </litem>
      <litem>
        <file title=".Net TCPClient and TCPServer classes">../../coretechnologies/SocketsAndRemoting/code/TCPClientServer</file>
      </litem>
      <litem>
        <file title=".Net Sockets Code Demonstration">../../coretechnologies/SocketsAndRemoting/code/socketDemo_DotNet</file>
      </litem>
      <litem>
        <file title="Message Framing with sockets">../../coretechnologies/SocketsAndRemoting/code/MessageFraming</file>
      </litem>
      <litem>
        <file title="Message Framing, using threads and queues">../code/MessageFramingWithThreadsAndQs</file>
      </litem>
      <litem>
        <file title="Base64Encoding">../../coretechnologies/SocketsAndRemoting/code/Base64Encoding</file>
      </litem>
      <litem>
        <file title="WCF Presentation">../presentations/WindowsCommunicationFoundation.ppt</file>
      </litem>
      <litem>
        <ilink title="WCF Security Resource">www.codeplex.com/WCFSecurityGuide</ilink>
      </litem>
      <litem>
        <file title="WCF Self Host Service">../code/WCF_SelfHost</file>
      </litem>
      <litem>
        <file title="WCF Self Host Service_BasicHttp">../code/WCF_SelfHost_BasicHttp</file>
      </litem>
      <litem>
        <file title="WCF Instances">../code/WCF_Instancing</file>
      </litem>
      <litem>
        <file title="WCF Message Concurrency">../code/WCF_Concurrency</file>
      </litem>
      <litem>
        <file title="WCF Message Passing">../code/WCF_Message</file>
      </litem>
      <litem>
        <file title="WCF Comm Prototype">../code/WCF_CommPrototype</file>
      </litem>
      <litem>
        <file title="WCF Wizard-based Service">../code/WCF_Wizard_Service</file>
      </litem>
<!--
      <litem>
        <file title=".Net Remoting Presentation">../presentations/NetRemoting.ppt</file>
      </litem>
      <litem>
        <file title="Basic Remoting Demo">../code/RemotingDemo</file>
      </litem>
      <litem>
        <file title="Remoting Demo with Pass-by-Value Call">../code/Remoting_PassByValue</file>
      </litem>
      <litem>
        <file title="Remoting Demo with Pass-by-Reference Call">../code/Remoting_PassByRef</file>
      </litem>
      <litem>
        <file title="Remoting Demo with Client Activated Object">../code/Remoting_ClientActivated</file>
      </litem>
      <litem>
        <file title="Explaination of PBR File Transfer">../presentations/RemotingPrototype.ppt</file>
      </litem>
      <litem>
        <file title="Remoting Demo - PBR File Transfer">../code/Remoting_PassByRefFileXfer</file>
      </litem>
      <litem>
        <ifile title="Lecture #5 folder">../Lecture5</ifile> contains a page of links to 
        presentations and code discussed in this class.  The Lecture folders will occasionally
        hold physical files of interest as well.  Usually, however, all the materials 
        of interest to the class are in the <ifile title="presentations">../presentations</ifile>
        and <ifile title="code">../code</ifile> folders.  The contents of these folders will grow
        as you progress through the course.
      </litem>
-->
      <p/><hr/>
    </olist>
  </section>  
  </visible>
</courses>
