|
|
|
 |
 |
 |
|
Computer Science AB Course Perspective
|
|
|  |
by Renee Ciezki Ironwood High School Glendale, Arizona
 |
|
|  | AP Computer Science AB includes all of the topics covered in AP Computer Science A, with more formal and in-depth study of algorithms, data structures, design, and abstraction. Students design, implement, and test computer-based solutions to a variety of problems in diverse application areas. These solutions are implemented using Java and are comparable to those in the introductory sequence of courses for computer science majors offered in college and university computer science departments. The course prepares students for the AB-level AP Computer Science Exam.
Since its inception in 1984, the programming language has changed from Pascal to C++ to Java. The original exam tested A and AB material. The format changed in 1988 to include an "A" subsection and then split into two separate A and AB exams in 1992. A case study was added in 1995. Java is the current implementation language, and the list of standard data structures for the AB course has expanded. It now includes two-dimensional arrays, linked lists, stacks, queues, trees, heaps, priority queues, sets, and maps. One thing that has remained constant, however, is the emphasis on problem-solving.
While this course could be offered to students with no prior knowledge of the subject, many schools offer an introductory computer science course. The content of the introductory course varies widely from an overview of computer science topics to "pre-AP" programming in Java and/or other languages. I have the luxury of teaching a group of students who have successfully completed the A course. This gives me the opportunity to have students develop a SinglyLinkedList class as one of their first major projects and to use it throughout the course. Students are already familiar with the GridWorld case study, and we are able to begin our study with Part 5, where students study and reimplement Grid data structures. Topics such as algorithmic analysis and design of class hierarchies are now explored in depth, and we have enough time to concentrate on every aspect of the development process. Mock grading of practice free-response questions and group projects give students opportunities to carry on valuable learning conversations and to critique their classmates' code. Increased attention to detail and levels of concern are only some of the benefits achieved. A highlight for me, personally, is that at some point in this course, almost every student realizes the value of planning and testing. Watching a student step through an algorithm or writing test cases before typing code is very rewarding.
The Course Description states, "Because of the dynamic nature of the computer science field, AP Computer Science teachers will continually need to update their skills." Opportunities for training abound. A week-long AP summer institute can equip a new teacher with enough knowledge and materials to teach both the A and AB courses. Other summer workshops are hosted by universities, and many of them are free. One and two-day workshops are offered in the fall and spring. I have found ACM's SIGCSE (Special Interest Group Computer Science Education) conference and the AP Reading to be particularly helpful. Subscribing to the AP CS Electronic Discussion Group provides answers to questions as well as classroom ideas.
Whether students go on to pursue a computer science degree or choose different majors, their experiences in AP Computer Science AB provide them with problem solving skills that can be applied to any field giving them a competitive edge in this information age.
Renee Ciezki teaches AP Computer Science A & AB, Windows Programming, and Computer Programming & Technology at Ironwood High School in Glendale, Arizona. She is also an adjunct faulty member at Estrella Mountain Community College and is a consultant for the College Board. She has been teaching teenagers and adults for more than 20 years and has served as an AP Reader and Question Leader. In her spare time, Renee enjoys traveling with her husband and playing games. More... See also... |
|
|
|
|
|