AP Computer Science A: self-study friendly?

<p>Question - Can a student with no previous programming experience self-study APCS and easily ace the AP exam?</p>

<p>Situation (optional to read) - I am an artistic/musical person who's never taken a programming course before. Due to budget cuts, the original CS teacher was replaced with a PE teacher who doesn't know anything about Java...so this class will basically be a self-study. As a rising sophomore, this will also be my first AP course.</p>

<p>Can I realistically study for the AP exam and score a 5? Also, what study materials would you recommend for APCS? </p>

<p>Thanks for helping out a fellow CCer!</p>

<p>lol PE teacher. Well, the Java covered in the AP Exam(Its all Java) for me was really easy, but thats because I already had experience with different languages.</p>

<p>If you have good logical understanding I guess it will be easy.</p>

<p>Thanks, Jorghi. Are there any books or prep materials you recommend for learning Java?</p>

<p>A good Prep book would be Barron’s AP Computer Science A.
NetBeans is an easy to use IDE. Most developers use an IDE instead of using programs like Notepad.</p>

<p>Once you know the basics you should start actual programming.</p>

<p>How to setup Java for NetBeans: [Java</a> SE Downloads - Netbeans + JDK Bundle](<a href=“http://www.oracle.com/technetwork/java/javase/downloads/jdk-netbeans-jsp-142931.html]Java”>Welcome to Apache NetBeans)</p>

<p>How to use NetBeans: [NetBeans</a> IDE 6.9 Java Quick Start Tutorial](<a href=“http://netbeans.org/kb/docs/java/quickstart.html]NetBeans”>Java Quick Start Tutorial)</p>

<p>It really depends. If you’re the logical/mathematical type of person who is good at problem solving, then it will likely be fairly easy for you to learn it. I learned another language prior to the year I learned java and took the exam, but it is very possible to go from knowing nothing to doing well on the exam. CS is similar to math in that it’s not a ton of memorization, it’s logic. You get better by practice and if you don’t understand the basics, then you won’t understand the higher level material.</p>

<p>I recommend either [Lawrenceville</a> Press - A Guide to Programming in Java](<a href=“http://www.lawrencevillepress.com/java.htm]Lawrenceville”>http://www.lawrencevillepress.com/java.htm) or [url=&lt;a href=“http://www.horstmann.com/bigjava.html]Big”&gt;http://www.horstmann.com/bigjava.html]Big</a> Java / Java Concepts<a href=“Java%20Concepts”>/url</a> as far as textbooks go. Don’t just rely on the Barron’s book to teach you everything you need to know. Don’t rush through learning the material in the textbook. Make sure you take the time to work on the programming exercises for all the concepts because that is the best way to learn about the subject. Reading the book isn’t going to cut it. In fact, I barely read the textbook. I would learn by looking at the examples in the book. When you’re doing the programming exercises, you’ll learn how certain changes can affect the whole program and result in an error.</p>

<p>You must learn about the GridWorld case study! It’s something like 25% of students who take the test have never looked at GridWorld before. I don’t recommend learning about it right away; wait until you’ve started learning about classes/objects/inheritance/etc. You can download the program from the CollegeBoard website and there is a packet that goes with it that has exercises. Make sure that you spend time observing the program and modifying it, since that will be one of you free-responses.</p>

<p>As Jorghi said, Barron’s is the best prep book, imo. I started working out of the book right away, so after I had learned all the material covered in the first chapter, I’d skim the Barron’s book and answer the questions at the end of the chapter. I also did all the practice tests and they were pretty accurate. Maybe a little on the challenging side, but not too overboard. Also do lots of the previous free responses that are available on the CollegeBoard website. After looking at the rubrics, you’ll get an idea for what will get you credit. If you don’t know the full answer to the problem, then you can still get partial credit if you attempt to implement certain things.</p>

<p>So basically to sum it up, the best way to learn CS is by practicing coding. There are very few, if any, questions on the exam that will be very factual. (ie: What is polymorphism?) The questions involve tracing through code and the free responses involve writing code, not writing an essay about polymorphism.</p>

<p>Thanks for the links! I just bought the Barron’s prep book for APCS A and will look into those books for further explanations. As for NetBeans, I am currently installing it into my laptop.</p>

<p>Thank you for your advice! Hopefully I will be able to help out other Comp Science CCers in the future as well.</p>

<p>I had no previous experience in programming yet I was very interested in how all of these people are getting rich of making farting apps for the iPhone.</p>

<p>Since I was taking AP Calc and AP Physics, I was in no mood to try to self study AP Computer Science. I had great success taking an online course from [HSCompSci</a> Online Computer Science for High School Students](<a href=“http://www.hscompsci.com%5DHSCompSci”>http://www.hscompsci.com). They used the Eclipse IDE since someone here posted about the Netbeans one.</p>

<p>I got a 5 on the APCS A exam this year.</p>