Instructors: R. Jordan Crouser and Ab Mosca
Course Meets: TTh 9:25-10:40AM EST (Section 01) / 10:50 - 12:05PM EST (Section 02)
Location: Bass 204
Jordan’s Office Hours: TBD
Ab’s Office Hours: TBD
TA Hours: Sundays 1-3pm EST, Sundays through Wednesdays 7-9pm EST in Ford Hall
This course emphasizes computational problem-solving using a typed object-oriented programming (OOP). Students will learn core computer science principles including: control flow, functions, classes, objects, methods, encapsulation and information-hiding, specification, recursion, debugging, unit testing, version control, using libraries and writing code in multiple files. Abstract data types and simple data structures will be used to illustrate concepts of OOP and solve computational problems through regular programming assignments (in Java and Python).
This course assumes prior programming experience including a basic understanding of branching (if-statements), iteration (loops), functions and simple data types (integers, strings, lists/arrays). Prerequisites: CSC 110 or equivalent. Cannot be taken concurrently with CSC 110.
Upon successful completion of this course, students will be able to: