CS161 is designed to introduce students to object-oriented programming. As with CS160, the course interleaves theory, programming, and architecture concepts as needed to motivate and explain problem solving using object-oriented programming. The core of the course is explaining objects: how they represent data and how they are defined and used in Java. Fundamental concepts such as inheritance and polymorphism are introduced and explained in the context of programming assignments. Another major programming topic is recursion and its relationship to mathematical induction.
A student completing this course should be able to: implement object-oriented programs and understand the underlying principles such as encapsulation, abstraction and reuse; design and build more complex programs (multiple files and multiple objects) by dividing problems into parts that are easily solvable; and relate concepts from theory to programming and architecture, such as how recursion is programmed and implemented.
This course is essential for majors and other students who intend to use object-oriented programming to solve problems and who intend to write complex software. The course would be useful to any student intending to pursue Computer Science or Information Technology as a career. /p>
CS160 or CS153 with a C or better; M124, M126 (both with a C or better).
|L02||Mon||4:30pm - 6:10pm||Cole Frederick||COMSC 215|
|L01||Tue||4:30pm - 6:10pm||Cole Frederick||COMSC 215|
|L02||Wed||4:30pm - 6:10pm||Cole Frederick||COMSC 215|
|L01||Thu||4:30pm - 6:10pm||Cole Frederick||COMSC 215|
|Assignments||30%||Programming and written homework|
|Recitations||10%||Attendance and completion|
|Quizzes||10%||In class quizzes (paper and iClicker)|
|Midterm 1||15%||First midterm (in second recitation during 3rd week)|
|Midterm 2||15%||Second midterm (in class)|
|Final Exam||20%||Comprehensive final exam (in class)|
In order to get a C in the course the weighted average of your exam scores needs to be passing grade (60 and above).
As discussed in the policies page, there are no makeups for missed quizzes or recitations. To take into account circumstances in which you have to miss class, we will drop the two lowest recitation grades and adjust the quiz grades.
The Teaching Assistant will grade written assignments, recitations, and paper quizzes. If you believe you have been graded unfairly, talk to the TA first. The Instructor will use auto-grading for the programming assignments and iClicker quizzes. Use the course email address or talk to the instructor directly for concerns on grading programming assignments.
|Last day to drop||June 22|
|Last day to withdraw||July 13|
|First midterm||Week 3, second recitation (CSB 215)|
|Second midterm||Week 6, Thursday, July 23, in class (CSB 130)|
|Final Exam||Week 8, Thursday, Aug 6, in class (CSB 130)|
You must read and be aware of the course policies.