Advanced Placement Computer Science A



Download 59.23 Kb.
Date31.01.2017
Size59.23 Kb.
#13930

Advanced Placement Computer Science A




Course Syllabus




Course Resources


[ PRIMARY TEXT ]

Fundamentals of JavaTM AP® Computer Science Essentials for the A and AB Exams, Lambert, Kenneth & Osborne, Martin, 3rd Ed., 2007, Thompson Course Technology.
[ WORKBOOK ]

Fundamentals of JavaTM AP® Computer ScienceReview Companion Workbook, Adelman, Nicholas & Nagan, Paul, 2007, Thompson Course Technology.
[ Online CourseWare]

Java Curriculum for Advancd PlacementTM Computer Science, Institute of Computer Technology, Version 2.0, 2006, Institute of Computer Technology.

AP® GridWorld Case Study



AP® Readiness Program @ UCLA jointly sponsored by the UCLA Graduate School of Education & Information Studies, UCLA Center X and the Los Angeles Unified School District and Los Angeles County Office of Education.

Computer Lab at LACES

The Advanced PlacementTM Computer Science A course is taught on a modified block schedule with classes meeting three times per week with one 62 minute and two 82 minute class periods one week alternating with three 82 minute periods the following week. The class is taught in a computer lab setting where each student has individual access to a computer workstation equipped with sufficient available hard drive space and RAM memory to run the GridWorld Case Study and complete programs written in Java. This lab is open for student use daily before school from 7 AM till 8:AM, during the student’s nutrition (mid -morning break), and lunch periods. In addition, our school’s library is usually open a minimum of 8 hours per week and has computer workstations on which students can create and save Java files to portable USB flash drives.



Software


The Institute of Computer Technology course and assignments are provided on CD_ROM in both text and HTML versions for each student. Each computer in the lab has installed on its hard drive a working copy of the latest version of the Java computer programming language from files downloaded from SUN Microsystems and includes a variety of text editors. The operating system in use on each of these workstations is a licensed copy of Microsoft Windows 2000 Professional.

Course Overview

Students enrolling in our AP Computer Science A course represent a mixed group with a variety of different ages. Our students bus into our campus from over 24 other high school attendance areas from throughout the greater Los Angeles Area. Students entering AP Computer Science have already taken an algebra course and are concurrently enrolled in algebra II or geometry.


We are a Title I school, where more than 60 % of our students qualify for free lunch. All areas of the school include a strong academic emphasis and highly motivated students.
Strong academic support programs provide tutoring for those who need it. Los Angeles Unified School District, in partnership with UCLA and the LA County Office of Education provides a monthly Saturday AP Readiness program for interested students and their teacher. The UCLA experience includes both lecture and lab activities and gives AP Computer Science students an opportunity to interact withUCLA Computer Science faculty and AP students from other schools.

Teaching Methods

AP Computer Science is taught through teacher directed PowerPoint lessons, class discussion, small group projects, individual and small group presentations, computer science-specific roll playing games, writing problems, predicting program segment outcomes, verifying program correctness, and other computer lab activities.


The Institute of Computer Technology Java Curriculum for Advanced Placement Computer Science provides students with a high quality AP computer science course. The course features 33 lessons, each available in HTML and text formats. Each lesson includes handouts, lab assignments, worksheets, and quizzes. The teacher has a comprehensive teacher guide with teaching tips, online links to in-depth tutorials for specific topics, worksheet answers, lab assignment answers, and review sheet and quiz solutions. Teacher prepared powerpoint lessons present key topics for each lesson in a lecture-discussion format. The ITC curriculum has an emphasis on subject areas actually covered in the AP Computer Science Syllabus (A and AB) that align with the AP testing standards, to prepare the students for the AP Exam.
In addition to the ITC’s Java Curriculum, each student has a textbook and companion workbook and is expected to complete daily section-questions and programming problems as homework. Students work independently and with a partner in the computer lab at least two times a week. The textbook includes a number of Case Studies which are analyzed and later modified. Each case study is a complete Java program and gives a larger analysis and in-depth discussion of a single problem. Case Studies emphasize the importance of the software development life cycle using object oriented programming methodology and are presented in the form of a user request followed by analysis, design, and implementation with specific problem solving tasks performed at each stage.

Student Assessment

Student progress reports go home every five weeks. The fourth and eighth reports are the final grades for the fall and spring semester. Each Advanced Placement student’s progress report assessment will be divided between lab assessments and completion of sectional tests and quizzes. Students will be evaluated by the quality of the programming assignments, participation in group presentations and discussions, quizzes, homework, class exercises and unit exams. Rubrics are applied to all projects and presentations.


AP Computer Science A Course Syllabus



Curriculum Components:
Lesson A1, A2, and so forth, refer to the student lessons and topics in ICT’s Java Curriculum (version 2.0).

Similar references are to ICT’s Lesson Handouts (e.g., A.1), Worksheets (e.g., A.1), and Lab Assignments (e.g., A.1).


Elements of the required GridWorld case study are also called out.
AP Topic I, AP Topic II, and so forth, refer to the AP Computer Science Course Description Topic Outline posted on the College Board Advanced Placement website.
Abbreviations Used Below:

class discussion [cDisc]

student reading [sRead]

lecture [lect]

programming assignment [pAssign]

teacher directed program completion [tDirPC]

teacher directed activity [tDirAct]

group project [gProj]

discussion circle [dCircle]

student essay / outline / writing piece [sEssOutWrite]




Week(s)

Description
of Learning


Outcomes of Learning Assignments
and Evaluation


1-2

  • Use of computers in the lab

  • Lesson A1 - Introduction to Object Oriented Programming (OOP)
    (AP Topic III. C-D)
    (AP Topic II A)

  • Lesson A2 - Object Oriented Programming
    Source Code – Bytecode – Virtual Java Machine
    (how to write a Java program)
    (AP Topic I. A)

  • Lesson A22 - General Computer Knowledge
    (AP Topic VI. A-D)
    Piracy and Acceptable Computer Use
    (AP Topic VI. D)

  • Package creation, jar files

  • Lesson A7 - Simple I/O
    (AP Topic Optional)

  • identify computer components [sRead] [cDisc]

  • login and use the computer in the room [tDirAct]

  • understand and articulate the process for writing a Java program [tDirPC]
    Handout A.1 [sRead]
    Worksheet A.1 [tDirAct]
    Lab A1.1 – DrawHouse [pAssign - 1 day]
    Handout A.2 [sRead]
    Worksheet A.2 [sRead]
    Lab A2.1 – Benzene [pAssign - 1 day]

  • describe legal issues involving piracy and the acceptable use policies in computer science [sRead] [lect]

  • use simple I/O to create a rudimentary Java program
    Lab A7.1 – GroceryList [pAssign - 2 days]

3

  • Lesson A3 - Primitive Data Types
    (AP Topic II B.1)
    (AP Topic IV A)
    (AP Topic III B)
    (AP Topic III H.2)

  • declare variables, store values in them, learn operations to manipulate and use those values, and print out the values using the System.out object. [sRead] [tDirAct]
    Handouts A3.1, A3.2 [sRead]
    Worksheets A3.1-A3.4 [tDirAct]
    Lab A3.1 – Easter [pAssign - 2 days]
    Lab A3.2 – Coins [pAssign - 2 days]

3

  • Lesson A3 - Primitive Data Types
    (AP Topic II B.1)
    (AP Topic IV A)
    (AP Topic III B)
    (AP Topic III H.2)

  • declare variables, store values in them, learn operations to manipulate and use those values, and print out the values using the System.out object. [sRead] [tDirAct]
    Handouts A3.1, A3.2 [sRead]
    Worksheets A3.1-A3.4 [tDirAct]
    Lab A3.1 – Easter [pAssign - 2 days]
    Lab A3.2 – Coins [pAssign - 2 days]

4

  • Lesson A4 - Object Behavior
    Java Software conventions
    (AP Topic II. B.1-2)
    (AP Topic I B)



  • understand Java conventions and rationale for object-oriented programming [sRead] [cDisc] [tDirPC]
    Lab A4.1 – MPG [pAssign - 2 days]

  • develop a program
    Lab A4.2 – Rectangle [pAssign - 2 days]

5

  • Lesson A5 - Designing and Using Classes
    (AP Topic I B.1,3)

  • design your own classes and determine object behavior [sRead] [cDisc] [tDirPC]
    Worksheet A5.1, A5.2 [tDirAct]
    Lab A5.1 - PiggyBank [pAssign - 2 days]
    Lab A5.2 – Müller [pAssign - 3 days]

6

  • Lesson A6 - Libraries and APIs
    (AP Topic II C)

  • GridWorld Narrative Chapter 1
    (AP Topic – Case Study)

  • learn how to read the APIs, use pre-written classes, and understand the elements of the AP Java Subset [sRead] [cDisc] [tDirAct]
    Worksheet A6.1, A6.2 [tDirAct]
    Lab A6.1 – Taxes [pAssign - 3 days]
    Lab A6.2 – RegularPolygon [pAssign - 3 days]

  • understand the creation of JavaDocs
    Handout A6.1 [sRead]

  • observe and experiment with the GridWorld GUI
    test Actors’ methods and determine the purposefulness of classes
    use the drop-down to call methods of executable classes
    GridWorld narrative [sRead]
    Do You Know Questions – Set 1, page 6 of GridWorld [cDisc]
    GridWorld Exercise Set, page 8 [tDirAct]

7

  • Lesson A8 - Control Structures
    (AP Topic II B.4)
    (AP Topic II A.1)
    (AP Topic IV B)

  • use conditional, relational, and logical operators to construct control structures in programs [sRead] [cDisc] [gProj] [tDirPC]
    Worksheet A8.1, A8.2 [tDirAct]
    Lab A8.1 – CheckMail [pAssign - 2 days]
    Lab A8.2 – IRS [pAssign - 3 days]

  • use the switch statement to control a programs flow (AP optional)

8

  • Lesson A9 – Recursion
    (AP Topic II B.4.e)

  • anticipate the outcomes of recursive methods, understand the process of the recursive method [sRead] [cDisc] [tDirAct]
    Worksheet A9.1 [tDirAct]
    Lab A9.1 – Fibonacci [tDirPC]

  • write simple recursive methods to perform tasks (AP optional)
    Lab A9.2 – KochCurve [pAssign - 1 day]

9-10

  • Lesson A10 – Strings
    (AP Topic I B.1,3,4)
    (AP Topic III A, F)
    (AP Topic IV B)

  • understand what an immutable object represents, use a variety of methods from the String class, understand what object references are [sRead] [cDisc] [tDirPC] [dCircle]
    Worksheet A10.1, A10.2 [tDirAct]

  • solve string-processing problems
    Lab A10.1 – StringUti [pAssign - 1 days]
    Lab A10.2 – CarRental [pAssign - 2 days]
    Lab A10.3 – RomanNumerals [pAssign - 3 days]

11-12

  • Lesson A11 – Inheritance
    (AP Topic III F)
    (AP Topic III A)
    (AP Topic VI D)
    (AP Topic II B.2)

  • GridWorld Narrative Chapter 2
    (AP Topic – Case Study)

  • use single inheritance, use inheritance to build class hierarchies in a program, use method overriding to modify the behavior of a subclass [sRead] [cDisc] [tDirAct]
    GridWorld narrative [sRead]
    Lab A11.1 – BackToSchool [tDirAct]
    Lab A11.2 – GraphicPolygon [pAssign - 2 days]
    Do You Know Questions – Set 2, Page 11 of GridWorld [cDisc]
    GridWorld Exercise Set, Page 12-13: 1,2,3 [pAssign - 3 days]

13-14

  • Lesson A12 – Iterations
    (AP Topic II B.4)

  • write an iterative block of code using the for control structure, nested loops, while loop, do-while control structure [sRead] [cDisc] [tDirAct]

  • use boundary conditions [sRead] [cDisc] [tDirAct]

  • demonstrate an understanding for using different loop types [sRead] [cDisc] [tDirAct]

  • Handout A12.1 [sRead]
    Worksheet A12.1,2,3 [tDirAct]
    Lab A12.1 - FunLoops [pAssign - 1 day]
    Lab A12.2 - Pictures [pAssign - 1 day]
    Lab A12.3 - Loan Table [pAssign - 1 day]
    Lab A12.4 - Grades [pAssign - 2 days]
    Lab A12.5 - Payments [pAssign - 1 day]
    Lab A12.6 - ParallelLines [pAssign - 1 day]
    Lab A12.7 – GameLand [pAssign - 1 day]




15

  • Lesson A13 - Exceptions and
    File I/O

    (AP Optional – I/O)
    (AP Topic III B, E)

  • understand and describe exception handling; create try-catch blocks to use exception handling [sRead] [cDisc] [tDirAct]
    Worksheet A13.1 [tDirAct]
    Lab A13.1 – ErrorCheck [tDirAct]
    Lab A13.2 - Average [pAssign - 1 day]
    Lab A13.3 – Squeeze [pAssign - 2 days]

16

  • Lesson A14 - Boolean Algebra and Loop Boundaries
    (AP Topic II B.4)

  • write negations of Boolean assertions, use DeMorgan's Laws to solve Boolean algebra problems, establish post condition assertions for conditional loops, build boundary conditions for conditional loops using assertions and DeMorgan's Laws. [sRead] [cDisc] [tDirAct]
    Handout A14.1 [cDisc]
    Worksheet A14.1 [tDirAct]
    Lab A14.1 [pAssign - 1 day]




17-19

  • Lesson A15 – ArrayList
    (AP Topic IV)
    (AP Topic V A,B)

  • Lesson A19 - Searches - Sequential and Binary
    (AP Topic V B)

  • understand Abstract Data Types (ADTs) and how an array implements the List ADT, create objects of type ArrayList using generics, use methods of ArrayList to access, add and remove elements, learn casting [sRead] [cDisc] [tDirAct] [gProj] [dCircle]
    Handout A15.1 [sRead]
    Worksheet A15.1 [tDirAct]
    Lab A15.1 – IrregularPolygon [tDirPC]
    Lab A15.2 – Permutations [pAssign - 2 days]
    Lab A15.3 – Statistics [pAssign - 1 day]

  • use searches to find elements within data structures
    Worksheet A19.1 [sEssOutWrite]
    Worksheet A19.2 [sEssOutWrite]
    Lab A19.1 [pAssign - 2 days]
    Lab A19.2 [pAssign - 2 days]
    Lab A19.3 [pAssign - 2 days]



20-22

  • Lesson A16 - Single Dimensional Arrays
    (AP Topic IV C)
    (AP Topic V A,B)
    (AP Topic I B.3,4,5)

  • GridWorld Narrative Chapter 2
    (AP Topic – Case Study)

  • GridWorld Narrative Chapter 3
    (AP Topic – Case Study)

  • declare and create single-dimension arrays and use them in programs; fundamental algorithms by programming arrays for insertion, deletion, and traversal [sRead] [cDisc] [tDirAct] [gProj]
    Handout A16.1 [sRead]
    Worksheet A16.1 [tDirAct]
    Lab A16.1, Statistics [pAssign - 2 days]
    Lab A16.2, Compact [pAssign - 2 days]

  • use an array to implement Bug exercise [sRead] [cDisc] [tDirAct]
    GridWorld Exercise Set, Page 13-14: 4,5 [pAssign - 3 days]
    GridWorld Exercise Set, Page 13-14: 4,5 [sEssOutWrite]

  • understand API class specifications and relationships between classes, use and understand the Location and Actor class, explore the Grid interface [sRead] [cDisc] [tDirAct]
    Do You Know Questions – Set 3, Page 18 of GridWorld [cDisc]
    Do You Know Questions – Set 4, Page 20 of GridWorld [cDisc]
    Do You Know Questions – Set 5, Page 22 of GridWorld [cDisc]
    Do You Know Questions – Set 6, Page 24 of GridWorld [sEssOutWrite]
    Group Activity, Page 24 [gProj]

  • Lab assignments used in the ArrayList lesson can be modified to use single dimensional arrays.

23-24

  • Lesson A17 - Quadratic Sorting Algorithms
    (AP Topic V C.1,2)
    (AP Topic III G)




  • trace the execution of quadratic sorting algorithms, write programs to use sorts, determine efficiency of sorting algorithms [sRead] [cDisc] [tDirAct]
    Worksheet A17.1,2,3 [tDirAct]
    Lab A17.1 [pAssign - 2 days]
    Lab A17.1 [pAssign - 2 days]




25

  • Lesson A18 - Merge and MergeSort
    (AP Topic V C.3)
    (AP Topic III G)




  • write a function to merge data, write a recursive mergeSort routine, determine efficiency of sorting algorithms [sRead] [cDisc] [tDirAct]
    Worksheet A18.1 [tDirPC]
    Lab Assignment A18.1 [pAssign - 2 days]
    Lab Assignment A18.2 [tDirAct]

26

  • Lesson A21 - Number Systems
    (AP Topic III H)

  • will be able to convert between binary, octal and hexadecimal number systems, understand how numbers are stored in a computer, and recognize the limitations of finite representations [sRead] [cDisc] [tDirAct]
    Worksheet A21.1 [tDirAct]
    Lab A21.1 [pAssign - 2 days]

27-30

  • Lesson A20 - Inheritance, Polymorphism, and Abstract Classes
    (AP Topic I A.5)
    (AP Topic I B)
    (AP Topic III)

  • GridWorld Narrative Chapter 4
    (AP Topic – Case Study)

  • explain abstract methods and classes, describe and use polymorphism, read and understand interfaces, create inheritance from predefined classes [sRead] [cDisc] [tDirAct]
    Lab A20.1 [pAssign - 4 days]

  • use and understand the Critter class within a grid world, understand the behaviors of the Critter class when invoking methods, evaluate the effect of changes made when developing subclasses of the Critter class [sRead] [cDisc] [tDirAct]
    Do You Know Questions – Set 7, Page 28 of GridWorld [cDisc]
    Do You Know Questions – Set 8, Page 30 of GridWorld [cDisc]
    Do You Know Questions – Set 9, Page 31 of GridWorld [cDisc]
    GridWorld Exercise Set, Page 32, Exercises 1 – 6 [tDirPC] [pAssign - 4 days]
    Group Activity, page 33 of GridWorld [gProj]





Beginning Date Topics ICT Lesson # Programming

2007 – 2008 Text/

School Year

Week#


  1. 09/04/2007 OOP A1,A2 Ch.5 Intro. To Defining Classes Ch.2 First Java Program

2 09/10/2007 Object Programming A22, A7

3 09/17/2007 Primitive Data Types A3 Ch.3 Syntax, Errors and Debugging

4 09/24/2007 Object Behavior A4 Ch.5 Intro. To Defining Classes

5 10/01/2007 Using Classes A5 Ch.5 Intro. To Defining Classes

6 10/08/2007 Libraries and API A6 Ch.5 Intro. To Defining Classes

7 10/15/2007 Control Structures A8 Ch.4 Intro. To Control Statements



  1. 10/22/2007 Recursion A9 Ch.12 Recursion

  2. 10/29/2007 Strings A10 Ch.4 Intro. To Control Statements

  3. 11/05/2007 Strings A10 Ch.4 Intro. To Control Statements

  4. 11/13/2007 Inheritance A11 Ch.5 Intro. To Defining Classes

  1. 11/15/2007 Inheritance A11 Ch.5 Intro. To Defining Classes

  2. 11/19/2007 Iterations A12 Ch.4 Intro to Control Structures

14 12/03/2007 Iterations A12 Ch.4 Intro to Control Structures

15 12/10/2007 Exceptions,File I/O A13 Ch.6 Control Statements Continued



  1. 01/07/2008 Boolean algebra,Loops A14 Ch.6 Control Statements Continued

  2. 01/14/2008 Array Lists ADT A15 Ch.09 Intro to Arrays

  3. 01/21/2008 Search-Sequential A19 Ch.11 Arrays continued

  4. 01/28/2008 Search-Binary A19 Ch.11 Arrays continued

  5. 02/05/2008 Single Dim. Arrays A16 Ch.09 Intro to Arrays

  6. 02/11/2008 Single Dim. Arrays A16 Ch.09 Intro to Arrays

  7. 02/18/2008 Single Dim. Arrays A16 Ch.09 Intro to Arrays

  8. 02/25/2008 Quadratic Sorting A17 Ch.12 Searching and Sorting

  9. 03/03/2008 Sorting Algorithms A17 Ch.12 Searching and Sorting

25 03/10/2008 Merge and Merge Sort A18 Ch.12 Searching and Sorting

26 03/24/2008 Number Systems A21 Ch.01. Background

27 03/31/2008 Inheritance A20 Ch.12 Recursion, Sorting


  1. 04/07/2008 Polymorphism A20 Ch.12 Recursion, Sorting

  2. 04/14/2008 Abstract Classes A20 Ch.12 Recursion, Sorting

  3. 04/07/2008 Intensive preparation for Advanced Placement A Level Exam

  • APCS Exam Review Books

  • Prior APCS Free Response Questions

  • Review Sorting Algorithms

  • Review GridWorld Case Study

  • Review Text Case Study Projects

5/5/2008 Post APCS Exam Coursework



GUI Based Java Programming using Java and HTML
Download 59.23 Kb.

Share with your friends:




The database is protected by copyright ©ininet.org 2024
send message

    Main page