﻿<?xml version="1.0" encoding="utf-8" ?> 
<?xml-stylesheet type="text/xsl" href="../../webpages/courses.xsl" ?>
<!--
/////////////////////////////////////////////////////////////////////////////
//  CSE687codeL4.xml - provides links Lecture #4 materials                 //
//                     on the ECS college server                           //
//                                                                         //
//  Jim Fawcett, CST 2-187, Syracuse University, jfawcett@twcny.rr.com     //
/////////////////////////////////////////////////////////////////////////////
-->

<courses name="Fawcett">

  <btitle>CSE687 Lecture #4</btitle>
  <theme src="../../webpages/CodeTheme.css" />

  <visible>
  <title>CSE687 - Object Oriented Design</title>
  <subtitle>Lecture #4 - Abstract Data Types</subtitle>
  <revised>24 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="#Contents">Contents</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.htm</ifile>
  </isection>
  
  <section title="Content:">
  <html><a name="Contents" id="Syllabus"/></html>
    This lecture discusses the notion of an <u>A</u>bstract <u>D</u>ata <u>T</u>ype.  We demonstrate how to use the C++ language
    to implement an ADT.
    <olist>
      <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>
        The book C++ Primer Plus, by Stephen Prata, is now in the Sci-Tech library, on reserve, for your use.  You will find this
        text very readable, with tons of small code fragments that show you how to do almost any basic operation you may need to do.
        You can not take this book home, but may use it in the library for several hours.
      </litem>
      <litem>
        <file title="Code Page">../../webpages/code.xml#cse687</file>
        This link takes you to a web-page index into code resources.
      </litem>
      <litem>
        <file title="Project #1">../projects/Pr1s09.doc</file>
        This project introduces you to XML DOM and scopes, modules, encapsulation, and XML analysis applications.
      </litem>
      <litem>
        <file title="VSHelpS09, useful for Project #1">../code/VSHelpSp09</file>
      </litem>
      <litem>
        <file title="Project #2">../projects/Pr2s09.doc</file>
        This project introduces you to code analysis, graphs, and uses your XML processing.
      </litem>
      <litem>
        <ifile title="Build Tools">../../coretechnologies/buildtools</ifile>,
        <ifile title="startup.bat">../../coretechnologies/buildtools/startup.bat.txt</ifile>,
        <ifile title="VS Help">../../coretechnologies/buildtools/VS2008Help.doc</ifile>
      </litem>
      <litem>
        <ifile title="Equivalent Syntaxes">../code/equiv</ifile><br/>
        Shows how to call constructors in a variety of contexts.
      </litem>
      <litem>
        <ifile title="object layout">../presentations/classLayout.vsd</ifile><br/>
        Fundamental information about how objects work.
      </litem>
      <litem>
        <ifile title="Abstract Data Types Presentation">../presentations/abstype.ppt</ifile><br/>
        What does it take to make objects of your class behave like built in types?
      </litem>
      <litem>
        <file title="STR class">../code/STR</file>
        This is a good example of an ADT.  It is presented as a nice example.  You should prefer the
        std::string class for all your development work.
      </litem>
      <litem>
        <ifile title="C++ Operators">../presentations/CppOperators.ppt</ifile>
      </litem>
      <litem>
        <ifile title="vector3D">../code/vector3d</ifile><br/>
        An example of an Abstract Data Type that is rich in operators.  Shows the accepted style for
        building ADT classes with mathematical operations.
      </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).
      </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">bdn.borland.com/article/0,1410,31863,00.html</ilink>&#32;
      </litem>
      <p/><hr/>
<!--
       <litem>
        <ifile title="Lecture #4 folder">../Lecture4</ifile><br/>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>
-->
    </olist>
  </section>  
  </visible>
</courses>
