Students will be learning about basic to intermediate level programming strategies, data types, and algorithms by using the Java programming language. The major focus of the course will be preparing the students for the AP Computer Science A test. Students will write weekly lab programs in Java, which will reinforce the lessons being taught in the text, and students will take tests that cover the chapter content of the respective weeks. All the while, we will be learning about computer logic and problem solving strategies that the student can apply to programming and to all of life's situations. The course sequence is an accelerated one such that the student will complete the course content in time for the APCS A test which is offered during the first or second week of May. If the student wants to take the APCS A test, he/she will need to follow the accelerated pace, otherwise, he/she can complete the lessons in a way that will result in course completion within the allowed time frame.