﻿<?xml version="1.0" encoding="utf-8" ?> 
<?xml-stylesheet type="text/xsl" href="../../webpages/courses.xsl" ?>
<!--
/////////////////////////////////////////////////////////////////////////////
//  CSE687codeL1.xml - provides links Lecture #1 materials                 //
//                     on the ECS college server                           //
//                                                                         //
//  Jim Fawcett, CST 2-187, Syracuse University, jfawcett@twcny.rr.com     //
/////////////////////////////////////////////////////////////////////////////
-->

<courses name="Fawcett">

  <btitle>CSE687 Lecture #1</btitle>
  <theme src="../../webpages/CodeTheme.css" />

  <visible>
  <title>CSE687 - Object Oriented Design</title>
  <subtitle>Lecture #1 - Introduction to OOD</subtitle>
  <revised>13 January 2009</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/CSE687CodeL1.xml</ifile>&#32;
    <ifile title="Lecture #02">../lectures/CSE687CodeL2.xml</ifile>&#32;
    <ifile title="Lecture #03">../Lectures/CSE687CodeL3.xml</ifile>&#32;
    <ifile title="Lecture #04">../Lectures/CSE687CodeL4.xml</ifile>&#32;
    <ifile title="Lecture #05">../Lectures/CSE687CodeL5.xml</ifile>&#32;
    <ifile title="Lecture #06">../Lectures/CSE687CodeL6.xml</ifile>&#32;
    <ifile title="Lecture #07">../Lectures/CSE687CodeL7.xml</ifile>&#32;<br/>
    <ifile title="Lecture #08">../Lectures/CSE687CodeL8.xml</ifile>&#32;
    <ifile title="Lecture #09">../Lectures/CSE687CodeL9.xml</ifile>&#32;
    <ifile title="Lecture #10">../Lectures/CSE687CodeL10.xml</ifile>&#32;
    <ifile title="Lecture #11">../Lectures/CSE687CodeL11.xml</ifile>&#32;
    <ifile title="Lecture #12">../Lectures/CSE687CodeL12.xml</ifile>&#32;
    <ifile title="Lecture #13">../Lectures/CSE687CodeL13.xml</ifile>&#32;
    <ifile title="Lecture #14">../Lectures/CSE687CodeL14.xml</ifile>&#32;<br/>
    <ifile title="Lecture #15">../Lectures/CSE687CodeL15.xml</ifile>&#32;
    <ifile title="Lecture #16">../Lectures/CSE687CodeL16.xml</ifile>&#32;
    <ifile title="Lecture #17">../Lectures/CSE687CodeL17.xml</ifile>&#32;
    <ifile title="Lecture #18">../Lectures/CSE687CodeL18.xml</ifile>&#32;
    <ifile title="Lecture #19">../Lectures/CSE687CodeL19.xml</ifile>&#32;
    <ifile title="Lecture #20">../Lectures/CSE687CodeL20.xml</ifile>&#32;
    <ifile title="Lecture #21">../Lectures/CSE687CodeL21.xml</ifile>&#32;<br/>
    <ifile title="Lecture #22">../Lectures/CSE687CodeL22.xml</ifile>&#32;
    <ifile title="Lecture #23">../Lectures/CSE687CodeL23.xml</ifile>&#32;
    <ifile title="Lecture #24">../Lectures/CSE687CodeL24.xml</ifile>&#32;
    <ifile title="Lecture #25">../Lectures/CSE687CodeL25.xml</ifile>&#32;
    <ifile title="Lecture #26">../Lectures/CSE687CodeL26.xml</ifile>&#32;
    <ifile title="Lecture #27">../Lectures/CSE687CodeL27.xml</ifile>&#32;
    <ifile title="Lecture #28">../Lectures/CSE687CodeL28.xml</ifile>&#32;
  </hilight>

  <hilight>
    <html><a href="#Content">Content</a></html>&#32;
    <html>
      <a href="../../webpages/cse687.xml#Syllabus">Syllabus</a>
    </html>&#32;
    <ifile title="SG - Design">StudyGuideDesign.xml</ifile>&#32;
    <ifile title="SG - Templates">StudyGuideTemplates.xml</ifile>&#32;
    <ifile title="SG - Class Relationships">StudyGuideClassRelationships.xml</ifile>&#32;
  </hilight>
  
  <section title="Web Resources:">
    <ilink title="Stroustrup's Home Page">www.research.att.com/~bs/homepage.html</ilink>,
    <ilink title="Assoc. of C/C++ Users">www.accu.org</ilink>,
    <ilink title="C++&#160;at&#160;Microsoft">www.gotw.ca/publications/standard_c++_meets_managed_c++.htm</ilink>, 
    <ilink title="Code&#160;Project">www.codeproject.com</ilink>,
    <ilink title="Sells&#160;Brothers">www.sellsbrothers.com</ilink>,
    <ilink title="Guru&#160;of&#160;the&#160;Week">www.gotw.ca</ilink>,
    <ilink title="C/C++&#160;User's&#160;Journal">www.cuj.com</ilink>,
    <ilink title="devCentral">devCentral.iftech.com</ilink>,
    <ilink title="Dr.&#160;Dobb's&#160;Journal">www.ddj.com</ilink>,
    <ilink title="Boost&#160;Library">www.boost.org</ilink>,
    <ilink title="techNetCast">technetcast.ddj.com</ilink>
  </section>
  
  <isection title="Office Hours:">
    <ifile title="Instructor &amp; TAs">../../webpages/officeHours.xml</ifile>
  </isection>
  
  <section title="Content:">
  <html><a name="Content" id="Syllabus"/></html>
  This lecture is an introduction to the CSE687 course.  Today we discuss topics to be covered
  in this course, its 
  projects, examinations, and grading.  We then introduce the notion of modules and discuss
  common notation to be used throughout the course.
    <olist>
      <litem>
        <ifile title="Office Hours">../../webpages/officehours.xml</ifile>
      </litem>
      <litem>
        <note>Starting this Friday</note>, I will hold help sessions from 9:00am until 11:45am each Friday in CST 4-201.<br/>
        <note>Starting Friday next week</note>, the TA's will also hold
        "surviving OOD help sessions each Friday at 4:00pm, also in CST 4-201.
      </litem>
      <litem>
        Survey student background
      </litem>
      <litem>
        Strategy versus Tactics
      </litem>
      <litem>
        <ifile title="Why C++?  Why not C#?">../presentations/CPPvsDotNet.ppt</ifile>
      </litem>
      <litem>
        <ifile title="C++, An Assessment">../presentations/assessmentCPP.ppt</ifile>
      </litem>
      <litem>
        <html>
          <a href="../../webpages/cse687.xml#Syllabus">Syllabus</a><br/>
          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>
        There are two ways to retrieve example code from the college server.<p/>The easiest is to go to the class code folder:<br/>
        <ilink title="http://www.ecs.syr.edu/faculty/fawcett/handouts/CSE687/code">www.ecs.syr.edu/faculty/fawcett/handouts/CSE687/code/</ilink>,<br/> 
        browse to the folder of the code you want, and right-click on the zip file in that folder and save-target.<p/>
        Another way is to use a secure FTP client like <ilink title="FileZilla">filezilla-project.org/</ilink>
      </litem>
      <litem>
        <ifile title="Project #1 Specification">../projects/Pr1s09.doc</ifile>
      </litem>
<!--
      <litem>
        <file title="Problem with Dependencies">../presentations/SoftwareStructureResearchExcerpts.ppt</file>
      </litem>
-->
      <litem>
        <file title="Visual Studio Help Notes">../projects/VCCHLP.doc</file>
      </litem>
      <litem>
        <file title="Visual Studio Help Session Notes">../Code/DemoVisualStudio/demoDocumentation.doc</file>
      </litem>
      <litem>
        ECS (College of Engineering and Computer Science) Computer clusters:
        <ulist>
          <litem>
            Visual Studio 2008 will be used in this class, and it is installed on all the ECS Clusters, but
            may not be on other university clusters.  So:
          </litem>
          <litem>
            You need an account - <ilink title="ECS Help Desk">helpdesk.ecs.syr.edu</ilink>.
          </litem>
          <litem>
            <u>Operational Quirks:</u><br/>
            Your home account is hosted on a drive mapped to H:.  However, Visual Studio thinks mapped
            drives are not secure, and does not happily let you work there.<p/>
            You can do all your work on the C: drive of whatever machine you are using, but that is always wiped
            clean when you log-off.  Thus, you may wish to work on the C: drive, save frequently to your home H:,
            and especially, save just before logging off.
          </litem>
          <litem>
            Help Session in CST 3-201 computer cluster.
          </litem>
        </ulist>
      </litem>
      <litem>
        <ifile title="Code Grade Sheet">../projects/PrGS687.doc</ifile>
      </litem>
      <litem>
        <ifile title="Submission Requirements">../projects/Submiss.doc</ifile>
      </litem>
      <litem>
        <file title="Parsing Prototype code - help for Project #1">../code/Project1HelpS06</file>
        This demonstration code illustrates how to use modules, gives several good examples of modules,
        and may be of significant help to you in developing Project #1.
      </litem>
      <litem>
        <file title="Parsing Prototype Structure">../code/Parser/ParserStaticStructure.vsd</file>
      </litem>
      <litem>
        <file title="Modules">../presentations/modules.ppt</file>
        A module is a physical package of code in files.  In this course, by module, we mean
        those source code files that constitute a compilable entity.  The result of compilation
        may be an execution image (exe), a dynamic link library (dll), or an object file (obj).
        <br/>
        A simple module example is provided in the code directory:<br/>
        <file title="HiResTimer">../code/HiResTimerNativeCpp</file>
      </litem>
      <litem>
        <file title="Notation">../presentations/notation.ppt</file>
        When discussing object oriented designs, we will often use a subset of the Universal
        Modeling Language (UML), described briefly in these notes.  You also may wish to 
        consult <ilink title="UML Tutorial">dn.codegear.com/article/31863</ilink>&#32;
      </litem>
<!--
      <litem>
        <ifile title="Design Note #1 - Prime Directives">dn1-PrimeDirectives.xml</ifile>:<br/>
        Several lectures will refer to Design Notes, like this.
        Design Notes are pages that each usually describe a single design principle, 
        dictum, or idiom that relates to lecture content.
      </litem>
-->
    </olist>
  </section> 
  <p/><hr/><p/> 
  </visible>
</courses>
