Date: Wed, 20 Nov 1996 22:32:49 GMT
Server: NCSA/1.5.1
Last-modified: Wed, 13 Nov 1996 15:14:22 GMT
Content-type: text/html
Content-length: 8616
C212 Intro to Software Systems
C212 Intro to Software Systems (4 cr.) -- Fall 1996
- Lecture (sction 1130)
- 9:30A-10:45A TR WH007
- Discussion (section 1131)
- 8:00A-8:50A F LH019
- Discussion (section 1132)
- 9:00A-9:50 F BU427
- Discussion (section 8458 & 8458)
- 10:10A-11:00A F BU 427
Contents
General Information
- Instructor
-
Dennis Gannon, email: gannon.cs.indiana.edu
Office Hours: Tues,Weds,Thurs 11:30-12:30.
- Associate Instructors
-
Jeremy D. Frens, email: jfrens.cs.indiana.edu
Office Hours: Tues 8-9, Weds 8-9, 3-4, Thurs 1-3.
-
Michael Roberts, email: mirobert.cs.indiana.edu
- Prerequisites
- C211.
- Local newsgroup
- ac.csci.c212
check your grades with:
Course Gradebook.
Course Description
This course is an introduction to applications programming. It will be
based on C++ in the Unix environment, but if you have a PC or MAC with
a good C++ compiler, you can do your work there. However, if you do
use the MAC or PC, you will still need to learn Unix. As time permits
we will also introduce programming in Java.
Topics include:
- C++
- Object Oriented Programming.
- Unix file system operations.
- Basic network operation and programming.
- C++ templates.
- Java class and applet design
Course Materials
- Required Text
- Dietel & Dietel C++,
Also read the web tutorial on Makfiles
Syllabus
Week 1 Ch. 1. Basic Concepts.
Week 2 Ch. 2. Control Structures.
Conditionals and iteration:
if, if/else, while, for.
Array intro: Chapters 4.1-4.3.
Week 3 More on Control.
switch, do/while, break, continue.
logical operators.
Week 4 Ch. 3. Functions.
basic libraries, prototypes, header files,
recursion.
recursion vs. interation, Inline,
reference parameters, default arguments,
scope, overloading and templates.
Week 5. Ch. 4 Finish Arrays
passing arrays to functions.
sorting, searching.
2-D arrays.
Midterm 1 Oct. 10.
Week 7 Ch. 5 Pointers and Strings
Pointer types, operators, pointer arithmetic.
Pointers and arrays.
The string library.
Week 8. Ch. 6 Classes and Data Abstraction
Struct members: data and function encapsulation.
controlling access in classes.
Constructors and destructors.
Week 9. Ch. 7. More on Classes.
nesting classes, "this" pointer.
new and delete.
data abstraction.
Week 10 Ch. 8. Operator Overloading.
an array class. a string class.
Ch. 9. Inheritance.
base classes and derived classes.
Using member Functions.
Midterm 2. Nov. 21
Week 12 Java part 1.
Java vs. C++.
classes, inheritance and interfaces.
Week 13 Java part 2.
Applet design.
The User Interface Library,
the Graphics library.
Week 14 Java part 3.
The Net library.
Week 15. C++ and Java. Making them work together.
Final Exam.
Lecture Notes
Assignments
Assignments will be given each week. You will receive each assignment
on Thurday and it will be due the following Friday at 4:30pm
of the following week. The best way to hand in your assignments
is to give them to the teaching assist. in section on friday.
However, you may also deposit them in the homework box in lindley
hall, second floor up to 4:30 pm on Friday.
You will always turn in a hard copy of the source with comments
and a script of the compilation and execution and output.
(See the instructions in Assignment 1 below.)
Grading Policy: Each assignment will be graded on a scale of 0 to 10.
If the program fails to compile it will receive 0 points. Late assignments
will receive 0 points.
Communication
The course newsgroup, ac.csci.c212,
will be
used to post announcements, such as assignments, exams, and any exceptions
to our usual office hours. You are also encouraged to use it to post
questions related to the course or share related information with the
class. Make a habit of looking for new notes a few times each week.
On individual matters, please feel free to contact your instructor or
associate instructor via email.
This course description is accessible as an HTML (hypertext markup
language) file on the WWW (World Wide Web) with the URL (Universal Resource
Locator) http://www.cs.indiana.edu/l/www/classes/c212. It
will be updated with additional information as the course progresses.
To view a resource given its URL, use the Netscape program on a
networked PC or Mac. Netscape underlines HTML hypertext links. To
follow a link, click on it. The URL for the computer science
department's home page is
http://www.cs.indiana.edu/home-page.html, from which all sorts of
information can be obtained.
Evaluation
- 20% -- Homework
- 25% -- Exam 1,
- 25% -- Exam 2,
- 30% -- Final Exam,
Policies
Attendance
Class attendance will not be monitored although regular attendance and
class participation are strongly recommended. Attendance at examinations
is compulsory and make-up examinations will normally not be given. No
special assignments or projects will be given to help students raise their
grades.
Academic Integrity
Read the Computer Science Department's Statement on Academic
Integrity to be sure you understand the rules under which computer
science courses operate. Cases of academic dishonesty will be reported
to the Office of Student Ethics, a branch of the Office of the Dean of
Students.
Withdrawal
Withdrawal after Wednesday, October 25th, requires concurrence of the Dean
based on extenuating circumstances.
Incomplete grade
An incomplete (I) final grade will be given only by prior arrangement in
exceptional circumstances conforming to university and departmental policy
in which the bulk of course work has been completed in passing fashion.