AP Computer Science A

Course Outline

Rick Styner

Web Site: http:// www.slhscompsci.net

 

     TEXTS:                    Fundamentals of Java: AP* Computer Science Essentials for the A & AB Exams, Third Edition by Richard Lambert and Martin Osborne, Thomson Course Technology.

                                                                               
Grid World Case Study for AP Computer Science by AP Central
Required Materials(due by Mon, August 30)               
Supplimental Book: Barron’s Review Book for AP Computer Science. (Available at Barnes and Nobels or Amazom.com)
A USB flash drive for backup ($2.95 and up at Fry’s Electronics)
Dedicated Computer Science binder with 4 sections:
Handouts (Syllibus, etc.)
Notes (Lecture notes, dated and in order)
Not yet turned in homework/Assignment sheet
Assessment (All returned homework, tests and quizzes, in order)

INSTRUCTOR contact information:      Mr. Richard Styner
(510) 290-5217
Styner@hotmail.com

COURSE OVERVIEW:        
The purpose of this class is to introduce the student to the object oriented programming paradigm using the Java language. Concepts such as classes, objects, inheritance, polymorphism, and code reusability will be covered. Individual hands-on laboratory work will help solidify each concept taught. Students will complete a long-term programming project and will create a formal presentation demonstrating the project.

COURSE OBJECTIVES:            
The student will:
1.         develop an understanding of the concept of a class and an object
2.         develop an understanding of how objects model real world objects
3.         implement inheritance to construct an object hierarchy
4.         implement polymorphism to process collections of objects
5.         study and extend the “GridWorld” case study project
6.         design and implement a long-term programming project and formally present the project.


Grading Criteria: (percentages approximate)
Tests: 30%
Programs: 20%
Projects: 25%
Homework: 15%
Participation: 10% (see below)

GRADING SCALE:

A+           98-100%    C         72-74%  
A             92-97%     C-        68-71%    
A-            88-91%   D+       65-67%  
B+            85-87%    D         62-64%     
B              82-84%    D-        58-61%     
B-             78-81%    F          57% - BELOW    
C+           75-77%        

                                                

Tutorials:  Every Tuesday will be a manditory tutorial to review for the weekly quiz or test. All APCS students must attend or will lose quiz points. Non-attendance excused only with a parent-signed note.                     

AP Exam: Each student taking AP computer science is required to take the AP Computer Science A Exam on May 4, 2011. 

Independent Projects: Students will write two independent projects for this class using the concepts from this class. These projects are to be done outside of class time. The first will be due 1 week following winter break.  Students will build upon this program for the final project, due April 27th. This project will be useds to review for the AP test.

Daily warm-ups: Every day Mr. Styner will give a daily warm-up activity the first 5 minutes of class. This activity will be worth 3 points and count as a test.  Anyone not in their seat at the tardy bell may not turn in the activity. These activities can not be made up.

Tardy and Unexcused Absence policy: The schools tardy policy will be strictly enforced and all tardies will be reported. Any work missed while tardy can not be made up.  Work missed because of a Cut will receive a zero, and points will be taken from your Personal Points.  Parents will be informed of any tardies or cuts.

Make-up Policy: Any work missed due to an excused absence may be made up within one week of the absence.  Makeup tests may be made up only on the Tuesday after the absence after school at the tutorial.

Barthroom Passes: Bathroom passes will not be given in this class. Take care of it during passing period.

 


Advanced Placement Computer Science

Personal Point Agreement

I, ________________________, understand that at the beginning of each semester I will receive 100 personal points, which is part of my total point total for the semester. I will be able to maintain my 100 points of “personal points” unless the any one of the following rules are violated:

Please initial each violation in the left hand margin
as they are read in class.

  • No Computer Science Book book in class (or leaving class to get it from locker).
  • No notebook in class (or leaving class to get it from locker).
  • No pencil in class (or leaving class to get it from locker).
  • Not taking notes in class (doing other non-CS work, doing nothing).
  • ANY type of talking, muttering, etc., during lectures.
  • Eating in class.
  • Drinking of any liquid (i.e. sodas, juice, seltzer water, …) in class with the exception of bottles.
  • Any inappropriate language in class.
  • Leaving class to go the bathroom.
  • Leaving class to get a drink of water.
  • Any horseplay in classroom/lab.
  • Sleeping in class.
  • Reading any other materials not related to CSs in class (e.g. magazines, English books, yearbooks).
  • Not attending an appointment (makeup test/quiz, makeup video, makeup lab, study session…) without prior notification.
  • Intragroup/Intergroup non-CS Discussion
  • Using software other than compilers (Internet, Word, Excel, Paint, …)

The first violation of these rules will result in a 10 point deduction from your “personal point” total. Each successive violation will result in a deduction of points in a geometric fashion (i.e. second violation = -20 points, third violation =   -40 points, fourth violation = - 80 points, fifth violation = -160 points…).

It is therefore possible to have a negative “personal point” total which will be averaged in to your point total for the semester (i.e. severely damage your grade).

I completely understand the above violations and rules for point deductions.
Name: (print) ______________________________________
Name: (sign) _______________________________________
Date: ______________________________________________

 



AP COMPUTER SCIENCE HONOR CODE


(Adopted from the University of Michigan School of Engineering Honor Code)

The AP Computer Science Honor Code outlines policies for the ethical conduct of students in AP Computer Science at Loyola High School.

The policies include:

  • Students in AP Computer Science should be honorable and trustworthy persons.
  • Personal integrity should be of the highest priority. This includes performance on tests, homework, and laboratory assignments.
  • It is the responsibility of both the teacher and students of the class to uphold the principles and policies of the Honor Code.
  • It is dishonorable and a violation of the Honor Code to receive credit for work that is not the result of their own efforts.
  • Students are responsible to understand the Honor Code and its implementation in this class.

When Taking an Examination
The Honor Code is based upon the principle that students can be trusted to take examinations without cheating. Therefore, the instructor need not monitor examinations. Remember, “…the true character of a man is what he does when no one is looking…”

However, to reduce the temptation for cheating, students should allow at least one empty seat between themselves and their neighbors. This will also help to ensure comfort during the exam. All questions about the exam should be directed to Mr. Lew.

After each exam, students must write the Honor Pledge on their test sheets and sign their names under it. The Honor Pledge is as follows:

“I have neither given nor received aid on this individual examination.”

Note: Mr. Styner is not required to grade tests in which the signed Honor Pledge does not appear.

Homework and Laboratory Assignments
The principles of the Honor Code apply to homework and laboratory assignments as well as to examinations. The Honor Code must be written on each homework and laboratory assignment.

A deliberate attempt to present as one's own work any material copied from another student, done jointly with another student, or copied from an unacknowledged source is a violation of the Honor Code. Remember, “…the true character of a man is what he does when no one is looking…”

Papers Projects and Reports
It is a violation of the Honor Code for students to submit, as their own, work which is not the result of their own labor and thoughts. Work which includes material derived in any way from the efforts of another author, either by direct quotation or paraphrasing, should be fully and properly documented. The basic principle is to tell the reader enough to locate the quoted material in the original source. Remember, “…the true character of a man is what he does when no one is looking…”

I, ___________________, have read the Honor Code policy and understand it fully.

 

Name (printed) :    __________________

Name (signed):      __________________

Date:                         __________________

 

“…the true character of a person’s is what he does when no one is looking…”


Course Outline:


Unit 1: Background

  • History of Programming
  • Intro to Objects
  • History of Computers
  • Number Systems
  • Computer Parts

Unit 2: Java Basics

  • Java Virtual Machines
  • Basic parts of a program
  • Applications vs. Applets
  • Edit à Compile  à Execute
  • System Input and Output

Unit 3:  Java Syntax and Bugs

  • Java Elements
  • Data types Primatives, Objects and Literals
  • Terminal I/O
  • Comments and Doumentation
  • Errors and Debugging

Unit 4: Control Statements

  • Math and Random classes
  • Conditionals
  • Loops
  • Nesting and break
  • Using text files
  • Loop errors

Unit 5: Introduction to Classes

  • Classes and Objects
  • Method behavior
  • Scope and Lifespan of Variables

Unit 6: More Control

  • Logical Operators
  • Nested If statements
  • Flow Charts
  • Nested Loops
  • Testing Loops and Ifs

Unit 7: Improving Output

  • Repeating Inputs
  • Using menus
  • Printf command
  • catching errors

Unit 8: Java and the World Wide Web

  • Html Overview
  • Applets

Unit 9: Arrays

  • Intro to Arrays
  • Simple Array manipulation
  • stepping though Arrays
  • Array Declaration
  • 2D Arrays
  • The enhanced For loop
  • Arrays and Methods

Unit 10: advances Classes and OOP

  • static variables and methods
  • Interface method
  • Implementing Interfaces
  • Inheritance
  • Abstract Classes
  • Parameters and Return
  • Error handling
  • javadoc

Unit 11: Advanced Arrays

  • String manipulations
  • Searching methods
  • Sorting
  • Arrays of Objects
  • ArrayList Objects
  • Wrapper Classes: Prmiatives and objects

Unit 12: Robotics