Dr.Dahlia McGregor, Principal
AP Computer Science A
Course Syllabus
COURSE DESCRIPTION:
This computer programming course will provide deeper study of Java Programming, including program design, program implementation, program analysis, methodology, algorithms, and data structures. This course is a year-long (two semesters) that will prepare the student for AP Computer Science A College Board exam. The course terminates into the AP Computer Science Exam and all students are required to take the AP College Board exam for Computer Science A. Students will gain an in-depth knowledge of how computers execute programs. Students will be given plenty of classroom time to work on projects. Since the software is free, students will also be able to work at home. After the AP Test, students will pick a topic of their choosing such as game programming, swing classes, and data management. This class feeds into either AP Computer Science AB or other Information Technology classes.
Course Objectives:
-
The student will be able to use and understand computer systems and how ethical and social implications affect the use of computer and information systems.
-
The student will be able to understand and utilize the Java programming language through the JCreator, and Net Beans programming environment.
-
Understand the main principles of object-oriented software design and programming
-
Learn to code fluently in Java in a well-structured fashion that includes style, documentation, and code clarity
-
Learn to use Java library packages and classes within the scope of the AP Java subset
-
Understand the concept of an algorithm and be able to implement algorithms in Java using conditional and iterative control structures and recursion
-
Learn common sorting and searching algorithms including Sequential and Binary search, and Selection, Insertion, and Mergesort
-
Understand one- and two-dimensional arrays and the ArrayList class
-
Use object-oriented approach to solving programming problems
-
The student will be able to effectively create a graphical user interface
-
Grid World Case Study
-
Prepare for the AP exam in computer science
Texts:
John Lewis, William Loftus, and Cara Cocking. Java Software Solutions for AP Computer Science. 2nd ed. Upper Saddle River, NJ: Prentice Hall, 2007.
GridWorld Case Study.The College Board, 2006.
Additional Resources:
John Lewis and William Loftus. Java Software Solutions, Foundations of Programming Design. Seventh Edition. Addison – Wesley.
Tony Gaddis, Starting out with Java from Control Structures through Objects, Fourth Edition. Addison – Wesley.
Wanda Dann, Stephen Cooper, Barbara Ericson. Exploring Wonderland Java programming Using Alice and Media Computation. Prentice Hall
Kim B. Bruce, Andrea PohoreckyjDanyluk, Thomas P. Murtagh. Java: An Eventful approach.
Prentice Hall,Upper Saddle River, New Jersey 07458.
H.M. Dietel, P.J. Dietel. Small Java How to program. Sixth Edition.Prentice Hall,Upper Saddle River, New Jersey 07458.
Lab Facilities
This course is taught in a fully functional computer lab. The class is able to flow seamlessly between lessons, presentations, and work on labs. Issues that arise during a lab can easily be addressed by calling the whole class together for an explanation, refinement of ideas, or just to demonstrate an elegant solution that a particular student has developed. Each student is assigned a computer, and they develop their own programs, but I encourage collaboration, discussion, and helping others, particularly in program development and in debugging. Students who finish early are encouraged to enhance their programs, do extra-credit programs, help others, or make additional contributions to the class.
Strategies
-
Strong emphasis on code reading and writing
-
Teacher-presented lessons: full lessons and mini-lessons
-
Warm-ups: 1 to 3 good questions/problems with class discussion, comments, ideas, solutions. Questions are taken from a variety of resources, including College Board, AP Central website, the AP test prep books and AP Released Books
-
Teacher-led discussions and analysis of code examples from text and other sources
-
Use Java API for learning about Java Standard classes, reference, practice reading and interpreting documentation, and examples of correct code documentation and the importance of well-written comments.
-
Compare and discuss examples of students' code: debugging, commenting, differing methods/algorithms/approaches to program development, great solutions, interesting ideas
-
Most students who sign up for programming classes have also taken our Robotics programming class, and/or are members of the school's robotics team; examples from robotics are used consistently throughout the course. This provides students with a concrete, visual reference point for the behavior of programs.
Grading Policy:
Tests and Quizzes- 40%
Homeworks-10%
Class Participation-10%
Assignments and Projects-40%
Weeks
|
Topic: Computer Systems
|
Required
Reading & Major Concepts
|
Major Assignments & Assessments
|
Goal1a: The student will be able to use and understand computer and information systems.
Goal 1b: The students will be able to understand how social and ethical implications affect the use of computer and information systems.
|
|
Objectives: The student will be able to:
|
Essential Questions & Skills
|
|
|
Week1
Week 2
| -
Identify and understand the elements of a computer system including memory location, translators, compilers, virutual machines, and operating systems
-
Comprehend how information is represented in computer memory.
1.3 Understand files and
the operating system
1.4 understand how
computers are
connected together into
networks to share
information vs. single-
user systems
5understand the difference and the importance of the Internet and the World Wide Web
6represent numbers in different bases
-
Understand binary and hex number system and its significance
7differentiate between analog and digital technology
8ASCII/Unicode
1.10 demonstrate legal and ethical behaviors when working with information and technology resources
1.11 Understand Copyright Laws and Ethical Considerations Respect for ownership Respect for privacy
1.12 identify Fair Use Guidelines for short printed works, computer software and licenses, Images, sound files, and video may be downloaded off the Internet to be used in the classroom by students and teachers
1.13 understand and discuss consequences of misuse of these resources.
1.14 identify harmful web sites and computer applications.
| -
How does a computer work? What are its main components?
-
How do computers communicate on a building level? On a global level?
-
What are the different number bases? Why would it be advantageous to use a base other than base 10?
-
How has technology evolved over the years? Why is present day technology clearer and easier to use?
-
What is Educational Fair Use?
-
How can you benefit from the legal use of resources such as print, CD, software use and software programs,the Internet and online journal articles?
-
How copyright laws are designed to protect the intellectual property of authors, artists, filmmakers, web designers, etc., so that their own work isn’t stolen for someone else’s profit.
|
Chap. 1
(Java Software Solutions Foundations of Programming Design)
Pages 1-25
and handouts.
Computer Processing
Hardware Components
Networks
Peer to peer network
Client/server network
Analog and Digital signals
Baseband transmission
Broadband
transmission
Computer Ethics
Computer and Information Ethics
Computing and Human Values
Computers in the Workplace
Computer Crime
Spywares
Malwares
Computer viruses
Privacy and Anonymity
Protection of privacy
Intellectual Property
Public safety
Professional Responsibility
Globalization
|
Homework questions:
Pgs. 52-53(Java Software Solutions Foundations of Programming Design)
EX 1.1, 1.2, 1.4, 1.5, 1.7, 1.8, 1.9,1.10,1.11, 1.12
Describe the advantages of networked computing relative to standalone computing.
Distinguish between client/server and peer-to-peer computing.
Describe several specific uses for a network.
Quiz no.1
Test 1
Write a research paper on the use of computer information ethics and social values and responsibilities. The research paper should include but not limited to the benefits of copyright laws, plagiarisms, cyber crimes, and internet securities.
Create a PowerPoint presentation based on your research and
Present to the class.
Students will be given a rubric in preparing for their PowerPoint presentation.
|
Weeks
|
Topic: Introduction to the Programming Environment
|
Required
Reading & Major Concepts
|
Major Assignments & Assessments
|
Goal 2: The student will be able to understand and utilize the Java programming language through the JCreator, and Net Beans programming environment.
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
Homework questions
|
Week 3
Week 4
| -
create a Java program
-
distinguish between different programming levels
-
Distinguish between source and object code, compilers and interpreters
-
Recognize common compile errors
-
Understand Computer Code of Conduct and Lab Procedures
-
Use identifiers, and keyword.
-
use comments effectively
-
distinguish between syntax and semantics
|
How does JCreator and NetBeans create, compile, and execute Java programs?
-
Why would a programmer use comments, and what is the appropriate way to word comments? Who are they for?
-
How is learning a new language and a programming language similar? What do you need to do to learn any new language?
|
Pages 36-46
(Java Software Solutions Foundations of Programming Design)
Java
Programm-ing
Languae.
Proram
Developm-ent
Object
Oriented
Programm-
ing
|
pgs. 45-52 (Java
Software Solutions for AP Computer Science)
Programming Projects:
#1-6, pgs 52-53 (Java
Software Solutions for AP Computer Science)
Supplement questions,
materials, and video
viewings from
http://academicearth.org/
subjects/computer-science
Chapter 1 Quiz
|
Weeks
|
Topic: Objects and Primitive Data
|
|
|
|
Goal 3: The student will be able to create and use objects and primitive data..
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
Homework questions
|
Week 5
Week 6
Week 7
| -
define the difference between primitive data and objects
-
use string literals
-
understand escape sequences
-
declare variables
-
recognize and use different primitive data types
-
perform mathematical computations
-
convert data types
-
create objects
-
understand wrapper classes
-
create constant variables
-
access and use class libraries and packages including the String, Random, and Math class
| -
What is an object? What is the difference between a floating point value variable and a String variable?
-
What is a String literal? Does it change by for each programming language?
-
Why are escape sequences standard in the Java language? What is their importance?
-
What is the difference between declaring and initializing variables? Why is it necessary to declare variables?
-
Name the different primitive data types?
-
Do primitive data have default types?
-
What are the mathematical operands used the Java programming language?
-
Why would you want to change the data type of a variable?
-
What is the data type of the quotient when you divide two integers?
-
Why is creating objects different from creating primitive data?
-
What key words are necessary to use when creating objects and why?
-
When would you want primitive data to become an object?
-
What is auto boxing? Why do you think Java made it standard?
-
What is the standard way to create a constant variable?
-
When would it be advantageous to use constant variables?
-
What is a major difference between using the String class and the Math class?
|
Chap. 2
(Java Software
Solutions for AP
Computer Science)
Parts of Programm
Character string.
Variable and Assignment.
Primitive data type.
Expressions
Data Conversion
Interactive Programs
Scanner Class
Dialo Boxes
String Class
Random Class
Math Class
Wrapper Class
|
pgs. 119-120
(Java Software
Solutions for AP
Computer Science)
Programming Projects:
, PP 2.4, TempConverter
PP 2.5 MileConverter
PP 2.6 TimeConverter
PP 2.7 RevTimeConverter
PP 2.9 Sphere
PP2.13 RandomPhoneNo
Supplement questions,
materials, and video
viewings from
http://academicearth.org/
subjects/computer-science
Programming projects:
Lab 1C Two Meanings of Plus
Lab: Experimenting with the Integer Class
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
Review Packet
Chapter 2 Assessment
|
Weeks
|
Topic: Decision Control Structures
|
|
|
Goal 4: The student will be able to understand and use decision control structures.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
|
Week 8
Week 9
| -
define conditional statements
-
use if statements
-
apply equality and relational operators to their programs
-
use if – else statements
-
identify the necessity of using block statements
-
use nested if statements
-
apply logical operators to the if statements
-
compare characters and strings
-
use increment and decrement operators
| -
What is a conditional statement?
-
Name two different types of conditional statements that you have learned in the past.
-
What are the main components that should be present in an if statement?
-
What is the difference between equality operators and relational operators?
-
What is the difference between multiple if statements and if-else statements?
-
Give a situation when you would use each one of them.
-
How do you nested if statements?
-
What are the advantages of nested if statements and what are the disadvantages?
-
Explain the differences between characters and Strings.
-
What is the difference between an accumulator and a counter? What is the easiest way to create a counter?
|
Chap. 3
(Java Software
Solutions for AP
Computer Science)
The if Statemrnt
The if-else Statement
Nested if Statement
Logical Operators
Comparing String Objects
The switch Statement
The print f Method
Increment and decrement operators.
|
Homework questions
pgs. 187-89
(Java Software
Solutions for AP
Computer Science)
Programming Projects:
PP 3.2 & 3.3, LeapYear
PP 3.6, Digits
PP 3.10, Hi-Lo
PP 3.11, PalindromeTester
Lab 1C, Activities at Lake Lazy Days
Lab 1D, Rock, Paper, and Scissors
Lab 1E, Date Validation
Lab 3B, Powers of 2
Supplement questions,
materials, and video
viewings from
http://academicearth.org/
subjects/computer-science
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
Review Packet
Chapter 3 Assessment
Assessment
Observation
Discussion
Quiz
Test
Program Projects
|
Weeks
|
Topic: Repetition Control Structures
|
|
|
|
Goal 5: The student will be able to understand and use repetition control structures.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
Homework questions
|
Week 10
Week 11
| -
define loop or repetition statement
-
create a program using the while statement
-
understand sentinel value
-
define infinite loop
-
use nested loops
-
use the for statement
-
distinguish between using the while loop and the for loop
-
discuss pre-conditions and post-conditions
-
analyze algorithms including calculations of statements execution counts
| -
Name three different repetition structures.
-
When does a programmer use a sentinel value? What is its significance?
-
List three examples when a infinite loop can occur.
-
What are some foreseen problems that can occur from nested loops?
-
What are some of the benefits of a for loop?
-
Is it necessary to use curly braces in a for loop? What happens if you don’t?
-
When would it be advantageous to use a for loop instead of a while loop?
-
What is the difference between a pre-condition and a post-condition? What would be a good situation to use a post-condition?
-
Create an algorithm showing how to find the alphabetical order of three Strings.
|
Chap. 5
Pgs 230-239
Chap 6
Pgs 275-284
(Java Software Solutions Foundations of Programming Design)
Loops
The while loops
The do-while loops
The for loops
Nested loops
Sentinel Values
Comparing loops
|
Pgs 294-295
Ex 6.1 to Ex 6.17
Programming Projects:
Pgs 296-297
PP 6.1
PP6.4
PP 6.8
PP 6.9
PP 6.10
Midterm Review
Packet for
Fall Semester
Fall semester Midterm Exam (Part 1:
Multiple-Choice and
True/False, Part 2:
Programs to complete
on computer)
|
Weeks
|
Topic: Writing Classes
|
|
|
Goal 6: The student will be able to write classes.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
|
Week 12
Week 13
Week 14
| -
define classes that are made of variables and methods
-
explain encapsulations and the Java modifier
-
understand the anatomy of a method
-
use the return statement
-
understand parameters
-
understand and use constructors
-
explain and use method overloading
-
divide complicated methods into simpler, supporting methods
-
understand object relationships
GridWorld Case Study Lesson 1
| -
Explain the difference between variables and methods that are declared as private, public, and that do not have a visibility modifier.
-
Explain which part of the method header conveys to the program.
-
Does a method need a return statement? What is the purpose of a return statement?
-
How parameters are passed to methods and if their values are changed in the method are the values also changed in the driver class?
-
Constructors are called automatically when an object is created. What is their purpose?
-
Give several examples of when a programmer would need to use method overloading?
-
Methods are an objects behavior. Why is it beneficial to have simplistic methods versus complicated ones?
-
Define aggregation.
-
Define association.
|
Chap. 4
(Java Software
Solutions for AP
Computer Science)
Class and Objects
Encapsulation
Anatomy of a Method
Return Statement
Parameters
Constructor
Overloading Method and Constructor
GridWorld,
Chap 1
|
Homework questions
p. 251
PP 4.3, 4.4, 4.5 use of Die class
(Java Software
Solutions for AP
Computer Science)
Programming Project:
#8, pg 251 (Java
Software Solutions for
AP Computer Science)
Lab 1
Phase 1 & 2 Using the Coin Class
Lab 2A Bank Account
Lab 3 Phase 1 Tracking Grades
Lab 4 Representing Names
GridWorld, Reflection 1: Chap. 1, exercises
1,2,3 & 4, p. 8
Supplement questions,
materials, and video
viewings from
http://academicearth.org/
subjects/computer-science
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
Review Packet
Chapter 4 Assessment
|
Weeks
|
Topic: Design and Implement Classes
|
|
|
|
Goal 7: The student will be able to design and implement classes.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
|
Week 15
Week 16
Week 17
| -
define reference aliases including the null reference and this reference
-
pass object references as parameters
-
define static variables and static methods
-
use the static modifier
(static variables and static methods)
-
understand and throw an exception
-
define formal interfaces and their class implementations including the Comparable interface, List interface, and the Iterator and ListIterator interfaces
-
choose appropriate data representations and algorithms
-
discuss object-oriented development
-
discuss top-down development
GridWorld Case Study Lesson 2
| -
There are two circumstances where a programmer needs to use the reference. Explain and give an example of each.
-
What is the difference between passing objects as parameters and primitive data as parameters?
-
What is the benefit of having a static method? If you had a class representing a bank, which methods would you make static and which would you not?
-
Create a program that demonstrates the use of a static method.
-
What is the difference between an error and an exception? Name a few possible exceptions that you can receive and why you would get them.
-
What is the method of the comparable interface and what does it do?
-
List the steps a programmer should take to problem solve.
-
There are two different
ways to develop a Java program; object-oriented and top down. Explain the difference between them. Which method do you prefer and why?
|
Chap. 5
(Java Software
Solutions for AP
Computer Science)
Object Reference
Passing Object Reference as Arguments
Throw an exception
Iterator and ListIterator
Object-oriented Development
Topdown Development
GridWorld,
Chap 2
|
Homework questions
p. 310, PP 5 Lockable
(Java Software
Solutions for AP
Computer Science)
Programming Projects:
#3, 8, pgs 310-311
(Java Software
Solutions for AP
Computer Science)
LLC Labs:
Lab1, References
Lab 2, Parameter Passing
Lab 3A, Using the Comparable Interface
Lab: Opening and Closing Accounts
Lab 3D, Counting Transactions
Supplement questions,
materials, and video
viewings from
http://academicearth.org/
subjects/computer-science
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
Grid World, Reflection 2, exercises 1,2,3,
Chap 2, pp. 12 – 13
Review Packet
Written test Chapter 5
|
Weeks
|
Topic: Arrays
|
|
|
|
Goal 8: The student will be able to understand and use arrays including sorting and searching arrays.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
|
Week 18
Week 19
Week 20
| -
define arrays
-
declare and use arrays
-
pass arrays as parameters
-
create arrays of objects
-
For Each Loop
-
search arrays using a binary or sequential search
-
sort arrays using a selection sort, insertion sort, and merge sort
-
compare sorts
-
understand and use two-dimensional arrays
-
use the ArrayList class
| -
In what ways do arrays simplify code?
-
What is important to understand when comparing arrays? Is there a default value for primitive data when an array is declared and not initialized? What about for objects?
-
When arrays of primitive data are passed as a parameter, they behave like an object. Why?
-
Can an array be created of any type of object? What is the difference between an array of primitive data and an array of objects?
-
What is the difference between a for loop and a for each loop? What is the limitations on a for each loop?
-
Explain the sequential search and the binary search. Explain when it is appropriate to use each type of search.
-
Use the following list of elements of an integer array: 5, 7, 89, 34, 2, 56, 12. Sort each of these using the selection sort, insertion sort, and merge sort.
-
When is it necessary to use a two-dimensional array?
Compare and contrast an array and an ArrayList. Explain when each should be used.
|
Chap. 6
(Java Software
Solutions for AP
Computer Science)
Array
Array Elements
Arrays of Objects
Binary or sequential search
String Arrys
Sort Arrays
Compare Sorts
Two-Dimensional
Arrays
ArrayList
|
Homework questions
p. 381, PP 4 Asterisks
p. 382, PP 9 & 10 Quiz
p. 385, PP 11 CDSorts
Lab 1A Tracking Sales
Lab 1B Grading Quizzes
Lab 1C ReverseArray
Lab 3 A Shopping Cart
Lab 4A Shopping Cart Using ArrayList Class
Lab: Magic Squares
(Java Software
Solutions for AP
Computer Science)
Worksheets on sorts
Supplement questions,
materials, and video
viewings from
http://academicearth.org/
subjects/computer-science
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
Review Packet
Written Test 6
|
Week 21
|
Fall semester Final Exam Break
|
Review Chapters 1-6
Practice AP Questions
|
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
Fall Semester Final Review Packet
Final Exam (Part 1:
Multiple-Choice and
True/False, Part 2:
Programs to complete
on computer)
|
Weeks
|
Topic: Inheritance
|
|
|
Goal 9: The student will be able to understand and use inheritance to organize and create classes.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
|
Week 22
Week 23
Week 24
| -
derive new classes from existing ones
-
use the keyword super as a reference
-
define multiple inheritance
-
override methods
-
add and modify methods in child classes
-
design class hierarchies
-
define and use polymorphism
-
use polymorphism with interfaces
-
discuss abstract classes
-
understand encapsulation and information hiding
GridWorld Case Study, Lesson 3
|
.
-
Why is it beneficial to create subclasses that can access the parent class?
-
What is the purpose of the super reference? When is the super class called by default without the super reference?
-
What is multiple inheritance? Does the Java programming language support it?
-
The Whale class extends the Mammal class. What methods would you add to the Whale class? Which of these methods would override methods in the parent class?
-
Explain how to cast in polymorphism. Why can you cast down but it is not necessary to cast up?
-
How can polymorphism be done using interfaces?
-
What is the difference between an interface and an abstract class?
-
Give an example of when a programmer would not want a child class to see a method or variable in the parent class.
|
Chap. 7
(Java
Software Solutions for
AP Computer Science)
Inheritance
Super Class Constructor
Override method
Class Hierarchies
Polymorphism
Abstract Classes
Encapsulation
And Information hiding
GridWorld,
Chap 3
|
Homework questions
(Java
Software Solutions for
AP Computer Science)
Chapter 7 Definitions
worksheet, worksheets
on inheritance
Lab 1, Phase 1A, Exploring Inheritance Lab 1
Phase I B– A Sorted IntegerList
Lab 1 Phase II B – Overriding the equals
method
p. 457, PP 7.4,
SportsStatistics
GridWorld, Reflection 3, Group Activity, pp.
24-25
Supplement questions,
materials, and video
viewings from
http://academicearth.org/
subjects/computer-science
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
Review Packet
Written Test 7
|
Weeks
|
Topic: Recursion
|
|
|
|
Goal 10: The student will be able to understand and use recursion in programming.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
|
Week 25
Week 26
Week 27
| -
explain the underlying ideas of recursion mathematically
-
understand recursive methods and processing steps
-
define infinite recursion and discuss ways to avoid it
-
compare recursion versus iteration
-
compare direct and indirect recursion
-
use recursion in sorting and searching
10.7 use recursion to solve the Towers of Hanoi puzzle
GridWorld Case Study, Lesson 4
| -
Explain recursion mathematically in your own words.
-
How does recursion work in Java?
-
What is a base case? Why is it needed for recursion?
-
When is recursion necessary? When should it be avoided and iteration used instead?
-
Method 1 calls method 2, method 2 calls method 3, and method 3 calls method 1 again. Is this an example of direct recursion or indirect recursion?
-
Explain the general approach to solving the Towers of Hanoi puzzle. How does it relate to recursion?
|
Chap. 8
(Java Software
Solutions for AP
Computer Science)
Recursion
Recursive Method
Infinite Recursion
Recursion versus Iteration
Direct and Indirect Resursion
Sorting and Searching
GridWorld,
Chap 4
|
Homework questions
pgs. 500-505, 507-511
(Java Software
Solutions for AP
Computer Science)
Programming Project:
# 2, pg. 505
Chapter 8 Definitions
worksheet, worksheets
on recursion
Lab 1A, Computing Powers
Lab 1B Counting and Summing Digits in an
Integer
Lab 2, Phase 1 Palindromes
Lab 3, Phase 1A Recursive Sequential Search
Lab3 Phase II Recursive Binary Search
Supplement questions,
materials, and video
viewings from
http://academicearth.org/
subjects/computer-science
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
Midterm Review
Packet for
Spring Semester
Spring Semester Midterm Exam (Part 1:
Multiple-Choice and
True/False, Part 2:
Programs to complete
on computer)
|
Weeks
|
Topic: Grid World Case Study
|
|
|
Goal 11: The student will be able to understand the case study for the Advanced Placement Test.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
|
Week 28
Week 29
| -
use and modify existing classes
-
understand intercommunicating objects
-
use inheritance
-
understand interfaces and abstract classes
11.5 use arrays
| -
Place a rock directly in the cell in front of a bug. Invoke the canMove() method. What value is returned from this method? What type is this value?
-
Create a method called leftTurn()that turns left 45 degrees using only the methods defined in the bug class.
-
Which methods inherited from the Actor class are invoked in the canMove() method?
-
Why was the Grid Interface created? Where can you find the code for the methods that are declared in this interface?
-
All methods that return multiple objects return them in an ArrayList. Do you think it would be a better design to return the objects in an array? Explain your answer
|
Grid World,
Chap 4
|
GridWorld, Reflection 4, Chap 4, exercises 1 -
6, p32
Mock AP Exam
|
Week 30
week 31
|
Review for AP Exam
|
|
Chapters 1-
8
GridWorld
Chapters 1-
8
|
Practice AP questions
from AP* Test Prep
Series: Computer
Science A and AB and
from Be Prepared for
the AP* Computer
Science Exam in Java
|
Weeks
|
Topic: Graphics
|
|
|
|
Goal 12: The student will be able to effectively create a graphical user interface.
|
|
|
|
Objectives: The student will be able to:
|
Essential Questions
|
|
Homework questions:
|
Week 32
Week 33
Week 34
| -
comprehend the relationship between coordinate systems and graphics
-
distinguish between a Java application and a Java applet
-
create graphical programs that draw shapes
-
create graphics-based objects
-
create a basic graphical user interface (GUI)
-
create a GUI that has checkboxes and radio buttons
-
use the GUI component class hierarchy
12.7 understand recursion in fractals
| -
The pixels of a color picture can be represented using three numbers called the RGB value. What do the three numbers represent? What are their possible values?
-
Define the difference between a Java application and a Java applet.
-
What is often used to defin ethe position and size of curved shapes such as ovals?
-
In what ways is a graphics-based object similar to a non graphics based object?
-
Define a GUI component, an event, and a listener?
-
What is the difference between a radio button and a check box? How are each created?
-
State the class hierarchy that the GUI components are organized into.
How many line segments are used to make a Koch snowflake of order N?
|
Chapter 7 and 13, 14
(Starting out with Java from Control Structures through Objects)
|
Pgs 483-485
Questions 1-4
Programming challenges: 3, 4,and 5.
Smile program – Create an applet that draws a smiling face. Give the face a nose, ears, a mouth, and eyes with pupils.
Circle program – Design and implement an applet that draws 100 circles of random color and random diameter in random locations. Make sure that in each case the whole circle appears in the visible area of the applet.
Add/Multiply program – Create an application that uses two dialog boxes to get two integer values and display the sum and product, and uses another dialog box to ask whether the user wants to process another.
|
|
|
|
|
|
Week
35-37
|
Team Projects:
• Java Graphics
• Java GUIs
• Java Game Programming
|
|
(Java Software
Solutions for AP
Computer Science)
and
Supplementary
Materials
|
AP CS Exam
|
Week 38-39
|
Final Project and Final Exam
|
|
|
Review packet for Final
Review Previous 8
chapter tests
Final Exam (Part 1:
Multiple-Choice and
True/False, Part 2:
Programs to complete
on computer)
|
Share with your friends: |