Enter Store - AP Online Classes - Who We Are - Volleyball - PHAA diploma Program
AP Computer Science-- What this about a 'Case Study'???
Cynthia Lang is a homeschool mother of several PHAA graduates, and computer science instructor at various colleges. She is completing her first year of returning to lead AP Computer Science with PA Homeschoolers AP Online, after taking a number of years off while her own children were in high school at home. She is an exceptional teacher, and shares here about a unique aspect of the AP Computer Science course and exam-- the 'case study'. For more info, see the link at the very bottom of the article. Cynthia will also soon be writing an article on how to know if your son or daughter is ready for the challenge of AP Computer Science.
The Role of the Case Study in AP Computer Science
As you would expect considering the subject matter, the AP Computer Science curriculum changes periodically with trends in the industry. For example, there have been 3 programming languages used in AP Computer Science since 1998: Pascal, C++ and most recently, Java. The last two languages have been object-oriented, rather than procedural, languages. As computers, particularly personal computers, evolved to have graphical user interfaces, the computer programs that produce such user friendly interfaces have become increasingly large and complex. For example, Microsoft Word had 27,000 lines of code in the first version. That’s a lot, but it's now about 2 million! Object-oriented programming languages such as Java use polymorphism, inheritance, and encapsulation to make large programs easier to produce and maintain. This is why object-oriented programming languages have largely superseded procedural languages. Students who eventually go on to careers in computer science will most likely work in teams on large programs coded in these object-oriented languages. Consequently, the College Board wanted high school students to have the experience of working with a large program, rather than being limited to the small programs that are normally assigned in computer science courses. To achieve this goal, the College Board develops a case study every few years that is coded by master programmers. The objectives for the case study are as follows (source: College Board)
This year, the case study is called GridWorld. As the name suggests, GridWorld is a graphical world consisting of a grid where various actors move and interact. Although the interface the user sees (below) is deceptively simple, GridWorld consists of twenty classes (Java programs) working together. Students are given 21 pages of documentation and code excerpts from the case study to use during the AP Computer Science exam. This is the same documentation available to the students throughout the school year, so they have plenty of time to familiarize themselves with the content. Roughly five of the 50 multiple-choice questions in Sections I of the AP Computer Science Exam are devoted to the GridWorld Case Study, and it is the topic of one of the four free-response questions in Section II.
GridWorld is an excellent tool for teaching inheritance in object-oriented programming. The actors that inhabit GridWorld have some traits in common and some traits that differ. They inherit their common traits from a “parent” class. This enables students to see how a parent-child relationship is established in object-oriented programming.
Another side benefit to the case study is that the documentation given to students entering the exam can be used as a legal crib sheet. If a student forgets the Java syntax for coding a particular statement, the case study code supplied in the exam may very well contain an example, which the student can use for a model. This minimizes that amount of memorization that is required to score well on the AP Computer Science exam.
Although I have taught AP Computer Science previously, this is my first year teaching this particular case study. To help me prepare, I have already completed two workshops for teachers on the case study, and I am registered for a third next month. These workshops supply teachers with ideas for weaving GridWorld into many aspects of the AP Computer Science curriculum, not just those dealing with inheritance. Examples of good design decisions and concise coding abound in GridWorld. It is a very appealing and interesting teaching tool. And I know that students will appreciate having a familiar set of programs handed to them when they go in to sit for the AP Exam!
For more information, see the College Board link:
Contests and Scholarships
Evaluations & Portfolios
High School Conference
Math by Kids
Museums and PA Resources
PA Cyber Charter Schools
PHAA Diploma Program
PreK - 6th grade
Sports and Fitness
Writing Club Ideas