Spring 2013 CSCI 221

= Course Description = This course further develops object-oriented programming introduced in CSCI 220. Topics include file input/output, inheritance and polymorphism, exceptions, error handling, and algorithm analysis.

= Syllabus = [[Media:CSCI_221_Syllabus_Spring_2013.pdf|Download PDF version here]]

= Facebook Group = https://www.facebook.com/groups/214030042067396/

= Department of Computer Science = [[Media:Computer_Science_Guide.pdf|Guide to the Computer Science Department]]

= Videos = Folder containing all of the videos

Here are some videos found online

= Schedule = You are responsible for reading the chapters covered in lecture.

Week 1 (Jan 9, 11)

 * Chapter 1 - Introduction to Computers, Programs, and Java

Week 2 (Jan 14, 16, 18)

 * Chapter 2 - Elementary Programming

Week 3 (Jan 21, 23, 25)

 * Chapter 3 - Selections

Week 4 (Jan 28, 30, Feb 1)

 * Chapter 4 - Loops

Week 5 (Feb 4, 6, 8)

 * Chapter 5 - Methods

Week 6 (Feb 11, 13, 15)

 * Chapter 6 - Single-Dimensional Arrays

Week 7 (Feb 18, 20, 22)

 * Chapter 7 - Multidimensional Arrays

Week 8 (Feb 25, 27, Mar 1)

 * Chapter 8 - Objects and Classes

Week 9 (Mar 4, 6, 8)
Spring break

Week 10 (Mar 11, 13, 15)

 * Chapter 9 - Strings

Week 11 (Mar 18, 20, 22)

 * Chapter 14 - Exception Handling and Text I/O

Week 12 (Mar 25, 27, 29)

 * Chapter 10 - Thinking in Objects

Week 13 (Apr 1, 3, 5)

 * Chapter 11 - Inheritance and Polymorphism

Week 14 (Apr 8, 10, 12)

 * Chapter 15 - Abstract Classes and Interfaces
 * Recursion

Week 15 (Apr 15, 17, 19)

 * Chapter 18 - Applets
 * Presentations starting April 19th

Presentation
Each student will have to individually present their applet. You can use an applet that you find online as a base, but you must make the following additions to it: These additions must be functional and coherent with the point of the applet (i.e., don't just add a silly button and text box). The point is to have some fun and explore applet/GUI/event driven programming. During the presentation, you must do the following: This assignment will be worth 3 homework assignments, so you'll have a maximum score of 30/30.
 * 1) Add 1 or more new buttons
 * 2) Add 1 or more new text boxes
 * 1) Show the original applet without modifications
 * 2) Show the new applet as a demonstration
 * 3) Illustrate the changes that you made to the code

Week 16 (Apr 22, 24, 26)

 * Presentations on April 22 and 24
 * Last day of class on April 24th
 * Reading day on April 25th
 * Final exams begin on April 26th

Final Exam

 * MWF 8 AM Class: Friday, April 26 from 8 - 11 AM
 * MWF 1 PM Class: Friday, April 26 from 4 - 7 PM
 * This was originally scheduled on Friday, May 3 from 12 - 3 PM, but we are going to move the time. If this is a problem, please let me know ASAP.

= Assignments = Programming assignments will be graded every Friday, so your submissions are due at midnight on Thursday.