Read Microsoft Word - Computer Science A text version

AP Computer Science A

Syllabus

Course Design: The proposed syllabus is for a two-semester course, assuming 30 weeks are available prior to the AP exam. The course meets for five 44-minute class periods per week. The course includes several individual programming projects assigned for one or two weeks each. The time after the AP CS Exam is devoted to a team project and enrichment activities. The course includes an optional enrichments unit on files, graphics, and GUI, which is not required for the AP exam. Prerequisite: Introduction to Computer Science and Geometry. Course Objectives: · · · · · · · · · · Understand the main principles of object-oriented software design and programming Learn to code fluently in Java in a well-structured fashion and in good style; learn to pay attention to code clarity and documentation Learn to use Java library packages and classes within the scope of the AP/A Java subset Understand the concept of an algorithm; implement algorithms in Java using conditional and iterative control structures and recursion Learn common searching and sorting algorithms: Sequential Search and Binary Search; Selection Sort, Insertion Sort, and Mergesort Understand arrays and the ArrayList class Acquire skills in designing object-oriented software solutions to problems from various application areas Learn the GridWorld case study and accompanying exercises and questions provided by the College Board Discuss ethical and social issues related to the use of computers Prepare for the A-level AP exam in computer science.

Texts and Supplementary Materials: Litvin, Maria, and Gary Litvin. Java Methods A&AB: Object-Oriented Programming and Data Structures, AP Edition, Andover, Mass.: Skylight Publishing, 2006. Litvin, Maria, Roger Frank, Judy Hromcik, Gary Litvin, Dave Wittry. Be Prepared for the AP Computer Science Litvin, Maria, and Roger Fr Exam in Java, 3rd Edition, Andover, Mass.: Skylight Publishing, 2007. The College Board's GridWorld case study. Horsmann, Cay. Java Concepts for the Advanced Placement Computer Science. Hobolen, NJ.: John Wiley & Son, Inc, 2007 Current magazine and Internet articles discussing ethical and social issues related to computer use. Ancillary materials: Java Methods Student Disk, Teacher Disk, PowerPoint slides, Test Package, additional resources at http://www.skylit.com/javamethods and http://www.skylit.com/oop. The College Board's GridWorld Teacher Manual.

Course Outline: Chapter numbers for readings and exercises refer to Java Methods A&AB, AP Edition. The labs, case studies, and projects proposed below come from Java Methods and serve only as examples of possible assignments; the teacher's favorites may be used instead. GridWorld refers to the College Board's GridWorld case study narrative.

Unit 1: Review of the Introductory Material (5 weeks) 1. Introduction to hardware, software, the Internet, and the ethical and social implications of computer use (Week 1; duration 1 week)

Elements of a computer system. How information is represented in computer memory. A glimpse of binary and hex systems and ASCII / Unicode. Students will research then discuss social and ethical implication of computer.

Reading and exercises: Chapter 1. Internet research of different violations of computer usage . 2. Software development environment (Week 2; duration .5 week)

Getting familiar with the software development process. Compilers and interpreters. JDK tools (javac, java, appletviewer, javadoc). Running a Java program in a command-line environment (optional). Using an IDE. Java classes and source files. A brief introduction to OOP.

Reading and exercises: Chapter 2. Lab: Compile and run simple programs using command-line JDK tools or an IDE (Section 2.4). Lab: Compile and run simple GUI applications and an applet (Section 2.6). 3. Review of Java syntax and style (Weeks 2-3; duration 1.5 weeks)

Import statements and library classes. Comments. Indentation and braces. Primitive data types. Declaring fields and local variables. Arithmetic operators. Boolean expressions, relational and logical operators.

Reading and exercises: Chapters 5-7, Appendix A. Labs: Exercises and/or free-response questions from the Test Package for chapters 5-7. 4. Review of Algorithms (Week 4; duration 1 week)

Algorithms using iterations and recursion.

Reading and exercises: Chapters 4 and 8. Labs: Exercises and/or free-response questions from the Test Package for chapters 4 and 8.

5.

Review of classes and objects (Week 5; duration 1 week)

Classes and objects. Fields, constructors and methods. An introduction to inheritance. First Steps case study review.

Reading and exercises: Chapter 3. Lab: "Bystander" in the First Steps (Exercise 3-12). Unit 2: Classes, Class hierarchies, GridWorld (7 weeks) 6. An introduction to GridWorld (Week 6; duration 1 week)

Experimenting with the GridWorld GUI. An overview of the classes and objects involved. Role-play exercise.

Reading and exercises: GridWorld Part 1. Lab: Set up a GridWorld project and run BugRunner. Lab: Simple extensions of the Bug class. 7. Details of defining classes and using objects (Weeks 7-8; duration 2 weeks)

Public and private fields and methods. Constructors and the new operator. References to objects. Calling methods and accessing fields. Passing parameters to constructors and methods. return statement. Overloaded methods. Static fields and methods. GridWorld continued.

Reading and exercises: Chapter 9; GridWorld Part 2. Lab: Snack Bar. Lab: GridWorld exercises for Part 2 (page 12). 8. Strings (Week 9; duration 1 week)

String objects. Literal strings. Immutability. String methods. Converting strings into numbers and numbers into strings. The Character class and its methods. Reading and exercises: Chapter 10. Lab: Lipograms (Section 10.8). 9. Class hierarchies, abstract classes, and interfaces (Weeks 10-12; duration 3 weeks)

Class hierarchies. Polymorphism. Abstract classes. Invoking superclass's constructors and calling superclass's methods. Case Study: Dance Studio. Interfaces.

Reading and exercises: Chapter 11, GridWorld Part 3. Lab: Dance Studio. Lab: Past free-response questions on class hierarchies and polymorphism. Lab: Creating a subclass of Actor, GridWorld Part 3 group activity (p. 24).

Unit 3: Arrays, ArrayLists, searching and sorting (13 weeks) 10. Arrays (Week 12; duration 1 week)

One-dimensional arrays. Arrays as objects. Declaring and initializing. Indices. Length. IndexOutOfBoundsException.

Reading and exercises: Sections 12.1-12.3. Lab: Fortune Teller (Section 12.3). 11. ArrayLists. Array and ArrayList algorithms (Weeks 14-15; duration 2 weeks) List interface. ArrayList's constructors and methods. Traversals and the "for each" loop. Finding the largest and the smallest element. Inserting and removing elements. ArrayLists in GridWorld. Reading and exercises: Sections 12.4-12.9, GridWorld Part 4. Lab: Creating an Index for a Document (Section 12.9). Lab: Past free-response questions on arrays and ArrayList. Lab: GridWorld Part 4 exercises (p. 32). 12. Two-dimensional arrays (Optional; Weeks 16-17; duration 2 weeks)

Declaring 2-D arrays. Indices. Accessing the number of rows and columns. Traversals.

Reading and exercises: Sections 12.10-12.11. Lab: Chomp (Section 12.11). 13. Searching and Sorting (Weeks 18-20; duration 3 weeks)

Comparing objects. The equals method and the Comparable interface. Sequential and Binary Search. Selection Sort, Insertion Sort, and Mergesort. The java.util.Random class.

Reading and exercises: Chapter 13. Lab: Chapter 13 exercises (e.g., 13-4, 13-9). Lab: Keeping Things in order (Section 13.4). Lab: Benchmarks (Section 13.9). Unit 4: Enrichment (optional, 4 weeks) 14. Streams and files (Weeks 20-21; duration 2 weeks)

Text and binary files. Streams vs. random-access files. Java I/O package. The Scanner class. Checked exceptions.

Reading and exercises: Chapter 14. Lab: Dictionary for Ramblecs (Section 14.5). Lab: Exercises and projects from the Test Package for Chapter 14.

15. Graphics and GUI (Weeks 22-23; duration 2 weeks)

Computer graphics concepts. The Java Graphics class. GUI components and their events. Layouts. Handling mouse and keyboard events.

Reading and exercises: Chapters 15, 16, 17. Lab: Pieces of the Puzzle (Section 15.7). Programming project: Ramblecs (Section 16.6). Programming project: Drawing Editor (Section 17.4). Unit 5: Review (6 weeks) 16. GridWorld review (Weeks 24-26; duration 3 weeks)

Review of the GridWorld classes and interfaces. Modifications and exercises.

Reading and exercises: GridWorld Parts 1-4; Be Prepared Chapter 7. Labs: GridWorld Enhancements (from suggested exercises for Part 4, p. 32, and Be Prepared). 17. Review and Practice for the Exam (Weeks 27-30; duration 3 weeks) Reading: Be Prepared Chapters 1-5; Be Prepared Chapter 8 (past free-response questions and solutions), Be Prepared practice exams, 175 Multiple-Choice Questions in Java. Unit 6: After the AP Exam (Duration varies) 18. Lists and iterators (Weeks 31-32; duration 1.5 weeks)

Singly-linked lists. Traversals and iterators. Do-it-yourself linked list. Linked list with a tail. Doubly-linked lists. Circular lists.

Reading and exercises: Chapter 20; Lab: Implementing a singly-linked list (Section 20.4). Lab: Teletext (Section 20.7). 19. Students will work on three projects. 1. Students will prepare a lesson on an advanced Java the topic. This should include overhead slides and/or a PowerPoint presentation as well as a worksheet and/or a program for the class to complete after the lesson. 2. Women in Computer Science (Past and Present). You will be assigned 1 Women from the Past and 1 Women from the Present. Create 1-4 slides using PowerPoint on each women. 3. Students will work on a team project.

Time Frame

1.5 Weeks

Topic

Introduction to hardware, software, the Internet, and the ethical and social implications of computer use.

Essential Questions

How does a computer read values? How do we convert values from binary and hex systems? Why are the names of files case sensitive?

Enduring Understandings

Student will understand the basic process that a computer runs through. Java class are saved with the .java extension.

TEC.9-12.8.1.12

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills Learning Activities

To be able to work with a computer PowerPoint Lab

Assessments

Test/Quiz Textbook Exercise

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

3.5 Weeks

Topic

Review of Algorithms, Syntax, Style, Classes and Objects

Essential Questions

Why does the name of classes begin with a capital letter? Why does the name of each variable begin with a lower case letter? What are comments used for? What is the basic set up for a class?

Enduring Understandings

The complier follows syntax. Style is used for the programmer only. Inheritance Usage of the proper loop.

TEC.9-12.8.1.12

To be able to follow a flow chart. Field Constructor Method Loops

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills

Learning Activities

PowerPoint First Step Lab

Assessments

Textbook Exercises Lab Test/Quiz

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

2 Weeks

Topic

Introduction to GridWorld (AP Case Study)

Essential Questions

What is the Bug class? What do rocks do?

Enduring Understandings

The case study is used only for the AP exam to test their knowledge on predefined program.

TEC.9-12.8.1.12

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills Learning Activities

Read the codes from different class Add methods GridWorld Part 1 Questions GridWorld Part 2 Questions

Assessments

Sample multiple choice question from the AP exam

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

2 Weeks

Topic

Implementing Class and Using Objects

Essential Questions

How do you invoke a class's constructor? How do you access other method within a class? Why are objects passed as references?

Enduring Understandings

Object access method using dot notation. Every time a constructor is invoked new values are stored. Constructors can have different parameter. Some parameter are passed as by value and some are passed as reference.

TEC.9-12.8.1.12

References Constructor Public Method Private Method Static Method

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills

Learning Activities

Power Point Snack Bar Lab

Assessments

Textbook Exercises Test

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

1 week

Topic

Strings

Essential Questions

What is the difference between a string literal and a string variable? How is the "concat" method different from the "+" in a print line? How do you combine a string literal with a string variable? How does the "compare to" method work? What is a NullPointerException?

Enduring Understandings

Strings are objects. Strings are immutable. There are several ways to create a string. The "compare to" method check the values lexicographically.

TEC.9-12.8.1.12

String class Concatenation String Literals References

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills

Learning Activities

PowerPoint Lipogram Lab

Assessments

Textbook Exercises Test

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

3 Weeks

Topic

Class Hierarchies and Interfaces

Essential Questions

What is the difference between an Abstract and an Interface? If a class extends other class why does it inherit all its methods? Why would a subclass and a superclass have the same method but do different thinks?

Enduring Understandings

The Subclass inherits all the method from the super class. "super" is the reserved work to access the superclass methods. An interface acts as a guideline for other class to follow.

TEC.9-12.8.1.12

Superclass Subclass "super" Extend Implement

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills

Learning Activities

PowerPoint Dance Studio Lab

Assessments

Textbook Exercises Test

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

6 Weeks

Topic

Arrays and Array List

Essential Questions

How is an array declared? How is data put into the array? What is an initializer list? What is an ArrayIndexOutOfBoundsException? What is the different between an array and a two-dimensional array? How is an Array different than an Array List?

Enduring Understandings

Arrays are used to store data. Arrays can hold primitive data and objects. An array can only hold one type of data. Arrays are zero based. Array List can be resized.

TEC.9-12.8.1.12

For loops Declaring variables Zero-Based

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills

Learning Activities

PowerPoint Fortune Teller Lab Creating and Index for a Document Lab Chomp Lab

Assessments

Textbook Exercises Test

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

3 Weeks

Topic

Searching and Sorting

Essential Questions

How do you put value in order? What is the difference between a Binary and Sequential Search? Why does a Merge sort call a different sort?

Enduring Understandings

Binary and Sequential Search are a couple of ways to search for a particular value. Selection and Insertion Sorts both have similar efficiency. Merge Sort is the best method when sorting a large list.

TEC.9-12.8.1.12

ArraysList If Statement Binary and Sequential Search Select, Insertions, and Merge Sort

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills

Learning Activities

PowerPoint Keeping Things in Order Lab Benchmarks Lab

Assessments

Textbook Exercises Test

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

2 Weeks

Topic

Streams and Files

Essential Questions

How can you read data from a file? How do you take in data from a file?

Enduring Understandings

The Scanner Class is a huge and useful package.

TEC.9-12.8.1.12

Importing packages

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills Learning Activities

PowerPoint Choosing Words Lab

Assessments

Exercises Test

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

2 Weeks (Chapters 15, 16 and 17)

Topic

Graphics and GUI

Essential Questions

How does a programmer activate a mouse when programming a game? How does a programmer use the arrow key when programming a game?

Enduring Understandings

The Graphic class is use like any other class. Graphs play an important role in programming.

TEC.9-12.8.1.12

Graphics class

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills Learning Activities

PowerPoint Pieces of the Puzzle Lab

Assessments

Exercises Ramblecs Lab Test

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

6 Weeks

Topic

Review for AP Computer Science Exam

Essential Questions

What concepts am I weak on? Do I need practice with multiple choice question or free response questions?

Enduring Understandings

Comprehensive course requirements. Command over Java. Full understanding of GridWorld.

TEC.9-12.8.1.12

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills Learning Activities

Topic for the AP Computer Science Exam Released free-response questions Released multiple choice questions Questions from Java Concepts for the Advanced placement Computer Science book

Assessments

Practice questions

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Time Frame

3 Weeks

Topic

List and Iterators

Essential Questions

How is a linked list different than an Array? What is a node? Why are their different types of linked lists?

Enduring Understandings

Linked list is another data structure that holds data. A linked list is especially useful in adding data in the beginning or the end of the list.

TEC.9-12.8.1.12

Singly-linked list Doubly-linked list Iterator

Alignment to NJCCCS TEC.9-12.8.2.12 Key Concepts and Skills

Learning Activities

PowerPoint Presentations Teletext Lab

Assessments

Test

x Creativity x Life & Career Skills

21st Century Skills x Critical Thinking x Communication x Collaboration x Information x Media Literacy Literacy Interdisciplinary Connections

Connection with Math and Business Curriculum

Technology Integration

Use of internet, personal commuter and various software resources

Information

Microsoft Word - Computer Science A

17 pages

Report File (DMCA)

Our content is added by our users. We aim to remove reported files within 1 working day. Please use this link to notify us:

Report this file as copyright or inappropriate

186401


Notice: fwrite(): send of 203 bytes failed with errno=104 Connection reset by peer in /home/readbag.com/web/sphinxapi.php on line 531