Exam Tips: Computer Science AB
|
|
|
 |
by Debbie Carter Lancaster
Country Day School Lancaster, Pennsylvania
 |
|
 |
Before The
Exam
- Allow more than one night to review. If you have questions,
you'll have time to ask someone else for help.
- Review the information about course content in the Course
Description for Computer Science.
- "Topic Outline" lists the major topics (not necessarily
language-specific) covered on the AP CS Exam.
- "Commentary on the Topic Outline" explains the Topic Outline
more fully and gives some Java-language examples.
- "AP Computer Science Java Subset" (Appendix A) lists Java
language features that will be tested.
- "Standard Java Library Methods Required for the A (Appendix
B) or AB (Appendix C) exam." You will be given reference guides
to the classes when you take the exam, but being aware of the
existence of some of the less common class methods might save
you time on the exam.
- Implementation classes for linked list and tree nodes
(Appendix D, AB-level)
- Interfaces for stacks, queues, and priority queues (Appendix
E, AB-level)
If you find anything in these sections that
is not familiar to you, ask your teacher for clarification.
- Review the Marine Biology Simulation Case Study. During the
exam, you will be given
- All source code for the visible classes (Appendix B).
- Summary class documentation for the Environment interface and Marine Biology
Simulation utilities classes covered in Chapters 1 - 4: Debug, Direction, EnvDisplay, Locatable, Location,
and RandNumGenerator. (Appendix C)
- Source code for Environment
implementations covered in Chapter 5 (BoundedEnv and UnboundedEnv)and summary class documentation
for the black box SquareEnvironment
class. (Appendix D, AB-level)
- Index for the source code found in Appendix B and D.
Being familiar with these documents, as well as some of
the more unusual details, will save you time on the exam.
- Review all of your old tests from your AP CS course.
- Work sample problems from the Course Description and AP CS
Exam review books.
- Don't spend time memorizing specific code, e.g. searches and
sorts. Recognizing a binary search will help you analyze it more
quickly, but no questions will require regurgitation of specific
code.
- Get a good night's sleep before the exam.
- Bring pencils and a watch to the exam.
General Tips
- Problems are usually placed on the exam in order of perceived
difficulty. However, some topics that are generally considered
difficult might be easier for you than some others; make sure you
allow yourself time to try all problems.
- If you get stuck on a problem, don't waste time. Circle the
number in the booklet and come back to it later.
- Glance at your watch periodically, especially if you find
yourself having difficulties or getting distracted. That should
help to get you back on track!
- Consult the Quick Reference documents during the exam. Be sure
to call all methods with the correct parameters.
- Use the case study code as a syntax and logic guide for all
problems, not just case-study problems. You can find examples of
almost every kind of syntax you'll need to write or interpret.
Multiple-Choice Questions
- Know when to guess. If you can eliminate one or two of the
choices, the odds are in your favor.
- Work backwards, if possible, to eliminate some answers.
- Read all of the answers before making your final decision.
Free-Response Questions
- Make sure you have answered the problem.
- As you first read the problem, underline, circle, or star
important details.
- Watch out for "You will receive no credit if..." or "You
will not receive full credit if..."
- Reread the problem definition after you think you've
finished writing the code, paying close attention to the details
you marked.
- Write your code to satisfy the formal definition of the
problem, but check your code with all the examples provided.
(They are usually chosen by the test developers to illustrate
some of the special cases, and you're wasting a valuable
resource if you ignore them.)
- Sometimes the pre-conditions and post-conditions outline the
algorithm to solve the problem. Do not ignore them.
- Never let the beginning of a problem prevent you from getting
points at the end.
- Most problems have multiple sections, and sometimes the
later sections are easier than the earlier ones.
- Frequently, you will be told that you may make calls to one
or more methods that you were asked to write in previous
sections of the problem. The instructions might say, for
example, "Assume that [method] works as specified, regardless of
what you wrote in part (a). Solutions that reimplement
functionality provided by this method, rather than invoking it,
will not receive full credit." The best solution will probably
include a call to the method written in part (a). You may earn
credit for calling the method correctly, even if the code for
the method you wrote for part (a) was incorrect or blank.
However, if you copy the code from that method into the new
section, even if it's completely correct, you will not earn full
credit for your code.
- Aim for clarity in your programming.
- Organize, indent, assign meaningful variable names, and
write neatly. (If you accidentally omit a curly brace, but your
indentation clearly conveys your intent, you'll be given the
benefit of the doubt.)
- Remember that humans will be grading your work. Be legible.
- Commenting will not help your score, except perhaps if your
code is confusing and the comment enlightens the reader about
what you were trying to accomplish. (However, comments are not a
substitute for correct code!)
- Never give a "recipe" for the answer. If you know how to do
even part of the problem, write code for the part you know.
Partial credit is often awarded for having the correct loop
bounds, initialization in the presence of an attempt to sum values
in an array, and so on. Credit is not given for writing a
description of what you would do if you had time.
- Occasionally, you'll be asked to "justify your answer." You
generally won't earn any credit without a justification -- a
sentence or phrase is often sufficient.
- If you write two solutions to a problem, cross out the one you
don't want to have graded. Don't waste time erasing it; a simple X
is sufficient. (If a reader finds two solutions to a problem, and
neither one is crossed out, the first one will be graded.)
- Don't waste time copying the method header or pre- and
post-conditions; start writing the code just below them.
- If you run out of room:
- Find a blank page and continue your code.
- Indicate clearly what you've done, both on the page where
you started the response and on the page where you continued it.
- Avoid using classes that aren't specifically given to you as
part of the exam and aren't part of the Java language or the case
study. While you may have developed or used other classes in your
AP course (such as date or sort), don't use them in your responses
on the AP CS Exam. Good luck, and do your best!
Good luck,
and do your best!
Call
for Submissions
AP Central
welcomes submissions of exam tips. If you have tips you would like
to submit, please e-mail them to ExamTips@collegeboard.org.
Debbie
Carter is a computer coordinator at Lancaster Country Day School in
Lancaster, Pennsylvania, where she teaches computer science and
assists faculty with technology integration. She is a Question
Leader for the AP Exam.
|
 |
| |