AP Computer Science

John Maxwell

256-6131 (w)

jmaxwell@mcquaid.org

 

Required:    Lambert & Nance, Fundamentals of Java, Comprehensive Edition,  2nd Edition, Southwestern Publishing.

                     Marine Biology Case Study, The College Board

                     Simple pocket folder(s) for assignments, tests and completed projects.

 

Useful Web Sites:

 

College Board: www.collegeboard.org      course description and exam info.

           

Description:

A continuation of the basic-level programming class, this course prepares students for the AP Computer Science A exam. This course will cover all of the topics included in the introductory course plus others from the AP Computer Science curriculum. Covered AP exam topics include arrays, strings, classes and objects, and selection and sorting techniques. This course requires the completion of the second-level Algebra course, an appropriate introductory computer course, and instructor permission. Taking the AP Computer Science Exam is required of all course participants

Outcomes and Means:

 

Students will be able to master the intricacies of object oriented programming by modifying existing examples of such code.  Eventually, students will be able to complete detailed and lengthy programming projects to create new, fully developed, class objects from scratch given broadly defined specifications.

 

Review and hands-on modification of the Marine Biology Case Study supplied by the College Board will enable students to better understand development of real-world simulations using a system of interlocking class objects.  Testing and projects will gauge the student’s ability to identify critical features and work within the marine biology simulated environment to make changes in important areas such as fish breeding, mortality, swim behavior, predation and reproduction.

 

Facility working with data storage and retrieval using array vectors and matrices will be honed through the evaluation of hands-on programming projects, homework and testing.  Special coverage of sorting and search routines will expose students to the advanced construct known as algorithm comparison.  The ability to identify code on tests and quizzes and to program “known” algorithms in practice that exhibit linear, quadratic and logarithmic efficiencies will be among expected student competencies.

 

Advanced students as identified by the instructor will be afforded an opportunity to master advanced subjects such as queues, stacks, linked lists and binary and search tree concepts through hands-on programming projects and significant directed “self study”.  These individuals will be allowed to sit for the AB level Computer Science exam.  All other students will take the A level Computer Science exam.

 

A brief look at the parts of the text that we will use reveals the following list.  Extensive use of outside materials such as the case study and other projects makes this a list somewhat incomplete.  Actual assignments will be posted on the course web page for each marking period.

·                     UNIT 1: Getting Started with Java
Lesson 1 Background
Lesson 2 First Java Programs
Lesson 3 Syntax, Errors, and Debugging
Lesson 4 Introduction to Control Statements

·                     UNIT 2: The Next Step with Java
Lesson 5 Introduction to User-Defined Classes
Lesson 6 More Operators and Control Statements
Lesson 7 Improving the User Interface

·                     UNIT 3: Arrays, Recursion, And Complexity
Lesson 8 Introduction to Arrays
Lesson 9 Classes Continued
Lesson 10 Arrays Continued
Lesson 11 Recursion, Complexity, Searching and Sorting

Grading

 

There will be frequent tests and quizzes during this course with some of the questions based on the text and others from an extensive exam prep question database.  Time will be allotted for short and long term programming assignments, some of which will be taken from the textbook.

 

Homework will accompany most assigned readings.  This is a good way to prepare for quiz and exam preparation. The homework will be reviewed in class and its completion, or lack thereof, will be noted.  As homework is reviewed on its due day in class, late assignments generally are not accepted for credit.

 

Major programming assignments will be also assigned on a regular basis. Typically, major assignments are graded while minor problems are merely noted for their successful completion.  Major projects will require students to devote the flex period immediately following the class to project completion.  This lab-flex period will normally occur once a cycle, and has a purpose of helping students deal with longer, detailed assignments.  Attendance at the flex lab is required.

 

The cumulative effect of answering lots of quiz, test and homework questions is that, hopefully, you will perform well on the AP Exam. 

 

Exams & Quizzes                     70%     approximately 50% tests/20% quizzes

Homework & Projects             30%     approximately 5% HW & 25% projects

 

For seniors, this class will never permit late arrival, and only rarely offer early dismissal.  Additionally, as seniors make up the minority of this class, work will continue during periods missed due to Magis service, however, major assignments, test or other integral work will not occur during this time.  Underclassmen should come prepared to work on Magis days.  For anyone missing class due to athletic, academic or service requirements, please check class board or the homework web site for the day’s assignments.

 

Class Rules               

 

·                    Respect others. Do not be abusive of others in language, physical contact or other interaction.

·                    Keep your work area neat and push your chair under the desk after each class.

·                    Cheating on major assignments and tests will result in immediate referral to the Assistant Principal for Academics, and shall be considered a violation of the school’s Student Conduct Code.  All major assignments will be submitted through www.turnitin.com.

·                    Work diligently on projects and avoid distracting others while working or after completion.

·                    Check the assignment board if you have missed a class.

·                    Make an honest effort. Don’t quit trying.