Instructors
- Lecturer - Charlie Roberts -
Office Hours - MTW 2:30 - 3:30 South Hall Rm 4430 - TA - Taylor Ettema -
Office Hours - TBA
Description
CS10 is designed for CS pre-majors to introduce students to core programming concepts using the Java programming language. This class will move quicker and cover more ground than CS 5; students in this class are encouraged to either have previous programming experience or to be open to experimentation / hacking. This course is not designed for people who are intimidated by computers or programming.
The course will be augmented by guest lectures and student presentations.
Textbook
Savitch, Walter. Absolute Java: 3rd Edition, Boston: Pearson Education, 2008.
Grading
All grades are curved. Grades breakdown as follows:
- Homework assignments (4 - 5) :: 15%
- Projects (4) :: 30%
- Midterm :: 15%
- Final :: 25%
- Participation / Pop Quizzes :: 15%
Honor Code Policy
You can't learn programming if you don't do your own work. Really. Please review the honor code policy to see what is acceptable and unacceptable aid on assignments.
Attendance
Missing more than 3 classes without prior notification to the instructor will drop your grade by 10%. This reduction will occur after the grading curve is applied. You will not be able to pass the class if you miss more than 6 sessions.
Course Outline
-
Week 1
- Course Introduction
- Introduction to Java / Processing
- Control structures
-
Week 2
- The Unix shell
- Using the Java compiler
- Core Java Packages Part 1: Data Structures
- Classes
-
Week 3
- Object Oriented Programming in depth
- Design Patterns
- Core Java Packages Part 2: I/O (files and basic networking)
-
Week 4
- Testing and Assertions
- Events, GUI, Swing
- Advanced Processing
-
Week 5
- Applets
- Review
- Miscellaneous topics as requested by students