At Whitney Young, most people take this course as their second programming course. Review the course page for Intermediate CS and make sure you are comfortable with the concepts in that course before asking about a placement test. In our experience, a 6 week summer camp is not usually enough background to be successful in AP CS A at Whitney Young. (Varies by individual.) People from Intermediate CS have at least 35 weeks of programming experience.
Have you ever heard of Java? In this unit, you will start with the fundamentals of Java by learning about the main method, various types of inputs, and variables. A firm foundation in Java will assist in learning more complex and practical methods later in this course.
After learning about primitive data types in the first unit, you will then learn how reference data types work. You'll learn about the Math and String classes, which are far more practical.
Conditional statements and Boolean expressions give the program the ability to decide and respond to different types of data input. You'll learn proper syntax and advanced Boolean expressions.
There are two main types of iteration used in Java: while and for loops. Using Booleans learned in the previous unit in conjunction with standard algorithms will make your program more efficient.
In this unit, you will take a more practical approach at programming by designing your own classes based off of real-world patterns.
Arrays in Java rely on the creation of new data structures that focus on using single variables instead of multiple variables. You will learn how to use the standard algorithms you learned in previous units to make your array much more efficient.
Although arrays used in previous units have limited sizes, ArrayLists have dynamic sizes and it is much easier to manage and organize data within these ArrayLists.
If you want to store two types of data as opposed to the single type of data in most arrays, you could use 2-D arrays to represent a data table.
In this unit, you will learn how to categorize classes into hierarchies to include new behaviors without altering the code. You will also learn about subclasses and superclasses.
Computers love doing repetitive tasks (well, not literally but they're better at them then we are). In this unit, you will learn to make small tasks that can be amplified into an interative solution done by the computer.