Course website : http://blogs.cofc.edu/olmsteda
Email: Please use firstname.lastname@example.org with Subject = CSCI221
Office: J. C. Long Building 226
Office hours: TR 9:00 – 10:00 AM
Class place and time
Classroom: J.C. Long Building 220
M TWRF 1:45 3:30 PM
CSCI 221 Computer Programming II 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. Data structures include lists,
stacks, and queues. Algorithms include searching and sorting. Prerequisites: CSCI 220 and
CSCI 222. Prerequisite or Co-requisite: MATH 207.
- Classify the activities of the software development process into its component parts.
- Apply the components of the software development process in developing software solutions to problems.
- Apply lists implemented as arrays, ArrayLists and other Java Collections classes.
- Develop algorithms to compute the min/max or sum of lists of numerical values stored in.
- Develop algorithms to search for needed values, and insert records in some order.
- Apply classes in program development including object instantiation, system drivers, constructors, method types (mutators, accessors, predicates, toString, finalizer), static versus nonstatic methods/variables, access qualifiers, garbage collection, use of the this reference.
- Develop well-designed methods.
- Apply class relationships including dependency, aggregation, and inheritance and illustrate such relationships using UML diagrams.
- Apply polymorphism through inheritance and interfaces in problem solving and program development.
- Develop well-designed classes.
- Apply exceptions in program development.
I am assuming because you are in this class you want to learn about object-oriented
programming. Therefore, it is my job to use the 40 hour long classes and 80 hours of outside
work to get you there.
Object-Oriented Programming and Java, by Danny Poo, Derek Kiong and Swarnalatha Ashok,
2010. Retail Price $54.95. This book is available electronically from the library at http://www.springerlink.com.nuncio.cofc.edu/content/ju830v/#section=352235&page=1
100-90 (A); 87-89 (A-); 86-84 (B+); 83-80 (B); 79-77 (C-); 76-74 (C+); 73-70 (C); 69-67 (C-); 66-60 (D); else (F)
20% Programming Project
Each student will choose a semester long project from the course discussion board. You will be
required to implement this project over the semester and present 4 times:
– 1st Presentation (3 Minutes) – Show the class your object model design
– 2nd Presentation (3 Minutes) – Show the class your object model implementation
– 3rd Presentation (3 Minutes) – Show the class your implementation with console IO
– Final Presentation (8 Minutes) – Show the class your GUI/Web Implementation
Each chapter of the book has a series of exercises that builds on previous chapters from the book. You are encourages to work through the exercises by the class time on the following Class after the material has been covered. A small subset of the homework will be used as a basis for a 15 minute quiz at the beginning of every other class. We will have 13 quizzes and the lowest grade will be dropped automatically. There will be no makeups for any reason. So if you miss class during quiz time this will become your lowest grade.
We will have one comprehensive final during finals week covering the material for the whole course.
Please read the College of Charlestons Student Code of Conduct. When you come to class
please turn off your cell phones and all other electronic communication devices. I do encourage
discussion so if you have a question do not hold back from interrupting me if you are afraid I
have moved on. If it is something I will talk about a little later I will note it on the board so we do not forget.
If you have a documented disability and are approved to receive accommodations through
SNAP Services, please contact me.
Student Honor Code
I expect you to abide by the Honor Code and the Student Handbook: A Guide to Civil and
Honorable Conduct. If you have a question about how to interpret the Honor Code, ask before
acting! I encourage collaboration, but you must document it. Thus, each student will submit
their own homework and, when collaborating, provide a reference to those people and