AP Computer Science A. Course Syllabus. Jackson County High School Instructor: LaDonna Woods School Year

Similar documents
Boca Raton Community High School AP Computer Science A - Syllabus 2009/10

College Board. AP CS A Labs Magpie, Elevens, and Picture Lab. New York: College Entrance Examination Board, 2013.


AP Computer Science A Skyline High School Mr. Coupland

AP Computer Science A Syllabus DRAFT 0.3 June 27th, 2015 Course Overview

Curriculum Map Grade(s): Subject: AP Computer Science

Bloss, Adrienne and N. Jane Ingram. Lab Manual to Accompany Java Software Solutions. New York, New York: Pearson Education, Inc, 2003.

AP Computer Science A Course Syllabus

AP Computer Science AB

AP Computer Science A Syllabus

IMACS: AP Computer Science A

5/23/2015. Core Java Syllabus. VikRam ShaRma

CompuScholar, Inc. 9th - 12th grades

Building Java Programs


AP Computer Science A

AP Computer Science A Syllabus


Introduction to Programming Using Java (98-388)

3D Graphics Programming Mira Costa High School - Class Syllabus,

NJCCCS AREA: Mathematics. North Brunswick Township Public Schools AP COMPUTER SCIENCE. Acknowledgements. Vivian Morris, Mathematics Teacher

AP Computer Science Course Syllabus

COURSE TITLE. Introduction to Java LENGTH. One Semester Grades DEPARTMENT. Computer Department Barbara O Donnell, Supervisor SCHOOL

Mathematics/Science Department Kirkwood Community College. Course Syllabus. Computer Science CSC142 1/10

Course materials Reges, Stuart, and Stepp, Martin. Building Java Programs: A Back to Basics Approach. 2d ed. (Boston: Addison-Wesley, 2011).

TeenCoder : Java Programming (ISBN )

(1) Students will be able to explain basic architecture and components of digital computers and networks, and basic programming language features.

CONTENTS. PART 1 Structured Programming 1. 1 Getting started 3. 2 Basic programming elements 17

SY nd Sem Syllabi-All Courses.xlsx - 2S-APCSA Page 1 of 5

Java Software Solutions for AP Computer Science 3rd Edition, Lewis et al. 2011

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)

This course supports the assessment for Scripting and Programming Applications. The course covers 4 competencies and represents 4 competency units.

Contents Chapter 1 Introduction to Programming and the Java Language

This page intentionally left blank

1 Epic Test Review 2 Epic Test Review 3 Epic Test Review 4. Epic Test Review 5 Epic Test Review 6 Epic Test Review 7 Epic Test Review 8

COURSE OF STUDY UNIT PLANNING GUIDE COMPUTER SCIENCE 1 FOR: 5 CREDITS GRADE LEVEL: 9-12 FULL-YEAR COURSE PREPARED BY: SUSIE EISEN

CO Java SE 8: Fundamentals

HUDSONVILLE HIGH SCHOOL COURSE FRAMEWORK

AP Computer Science A Sample Syllabus 4

Computer Programming C++ (wg) CCOs

Exam 1 Prep. Dr. Demetrios Glinos University of Central Florida. COP3330 Object Oriented Programming

Index COPYRIGHTED MATERIAL

AP Computer Science in Java Course Syllabus

Language Features. 1. The primitive types int, double, and boolean are part of the AP

Course: AP Computer Science A Description and Syllabus Description of Course:

COWLEY COLLEGE & Area Vocational Technical School

B. Knowledge of basic algebra and experience in problem solving is beneficial. Students should also possess competence in written communication.

Curriculum Mapping for National Curriculum Statement Grades R-12 and Oracle Academy.

Student Performance Q&A:

B. Subject-specific skills B1. Problem solving skills: Supply the student with the ability to solve different problems related to the topics

Contents. Figures. Tables. Examples. Foreword. Preface. 1 Basics of Java Programming 1. xix. xxi. xxiii. xxvii. xxix

(800) Toll Free (804) Fax Introduction to Java and Enterprise Java using Eclipse IDE Duration: 5 days

MyProgram m i ng Lab. get with the programming. Through the power of practice and immediate personalized

[CHAPTER] 1 INTRODUCTION 1

Prerequisite: Computer Science 2 (CS2) with a grade of B+ or better

Data Structures and Abstractions with Java

ощ 'ршорвшэш! цвн-эориэу ощ 'sajbpossv # PIPG DUJ 'ssjmoossv ^ PIPG pipa w н OX ЛЮН VAV

Java Training JAVA. Introduction of Java

Course: Honors AP Computer Science Instructor: Mr. Jason A. Townsend

Homeschool Programming, Inc.

Big Java Late Objects

JAVA CONCEPTS Early Objects

AP Computer Science A Mira Costa High School - Class Syllabus,

About this exam review

Unit Overview. Concepts & Understandings. Learning Targets

Java Fundamentals p. 1 The Origins of Java p. 2 How Java Relates to C and C++ p. 3 How Java Relates to C# p. 4 Java's Contribution to the Internet p.

CS 210 Algorithms and Data Structures College of Information Technology and Engineering Weisberg Division of Engineering and Computer Science

Pace University. Fundamental Concepts of CS121 1

Absolute C++ Walter Savitch

Java for Non Majors. Final Study Guide. April 26, You will have an opportunity to earn 20 extra credit points.

Chapter 2 Using Data. Instructor s Manual Table of Contents. At a Glance. A Guide to this Instructor s Manual:

AP Computer Science A Syllabus

WA1278 Introduction to Java Using Eclipse

Syllabus & Curriculum for Certificate Course in Java. CALL: , for Queries

AP Computer Science A Syllabus

Weiss Chapter 1 terminology (parenthesized numbers are page numbers)

Full file at

Preface A Brief History Pilot Test Results

CS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Fundamentals (2014)

COP 3330 Final Exam Review

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++

Reviewing for the Midterm Covers chapters 1 to 5, 7 to 9. Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013

KLiC C Programming. (KLiC Certificate in C Programming)

Syllabus Honors Java Programming 1 & 2

AP CSA 3rd Period MR. D. Course Map

Object Oriented Programming: In this course we began an introduction to programming from an object-oriented approach.

Samples of Evidence to Satisfy the AP Computer Science AB Curricular Requirements

Java Programming Training for Experienced Programmers (5 Days)

Al al-bayt University Prince Hussein Bin Abdullah College for Information Technology Computer Science Department

Fast Track to Core Java 8 Programming for OO Developers (TT2101-J8) Day(s): 3. Course Code: GK1965. Overview

CGS 2405 Advanced Programming with C++ Course Justification

INTRODUCTION TO COMPUTER SCIENCE - JAVA

Chapter 6 Introduction to Defining Classes

AP COMPUTER SCIENCE A: SYLLABUS

11/19/2014. Objects. Chapter 4: Writing Classes. Classes. Writing Classes. Java Software Solutions for AP* Computer Science A 2nd Edition

Cowley College & Area Vocational Technical School

AP Computer Science A (Java) Scope and Sequence

Java 1.8 Programming

Chapter 2 Using Data. Instructor s Manual Table of Contents. At a Glance. Overview. Objectives. Teaching Tips. Quick Quizzes. Class Discussion Topics

What did we talk about last time? Examples switch statements

Transcription:

AP Computer Science A Course Syllabus Jackson County High School 606-287-7155 Grade Level: 10-12 Course Length: 36 weeks Instructor: LaDonna Woods School Year 2013-2014 Email: LaDonna.Woods@jackson.kyschools.us Planning: 5th Block 1:00-1:55 Description of Course AP Computer Science is an introductory course in computer science that focuses on using computer programs and parts of programs to solve given problems. Java is the computer language of choice and object-oriented design is the primary paradigm. Students are introduced to the development and analysis of algorithms, fundamental data structures, and standard algorithms for searching, sorting, and operating upon data. They also become familiar with the basics of hardware and software components and the ethical responsibilities of both programmers and users. Throughout the course students plan and write code to solve a variety of different types of problems. Pre-requisites of the Course The necessary prerequisites for entering the AP Computer Science A course include knowledge of basic algebra and experience in problem solving. A student should be comfortable with functions and the concepts found in the uses of functional notation, such as f(x) x +2 and f(x) = g(h(x)). It is important that students understand that any significant computer science course upon a foundation of mathematical reasoning that should be acquired before attempting such a course. Resources Resources Software Textbook: John Lewis, William Loftus, and Cara Cocking. Java Software Solutions for AP* Computer Science 3 rd Edition. Boston, Massachusetts: Addison-Wesley, 2011. Print. Cook, Charles. Blue Pelican Java. Virtualbokworm.com Publishing Inc., 2005. Print. Roselyn Teukolsky, M.S.. Barron s Ap Computer Science A. Hauppauge, New York: Barron s Educational Series, Inc., 2010. Print. Chris Nevison and Barbara Cloud Wells. GridWorld Case Study (2008 AP* CS Exam). The College Board, 2007. Print/Software. College Board AP Computer Science materials. DrJava, Greenfoot, and Alice3

Grades & Assignments All assignments will be uploaded using the student s blackboard account and all assignments will be available on their blackboard accounts. Each unit will consist of a reading assignment quiz, multiple choice and short answer assignments, students written java programs, and unit exam. Although it is not necessary to take notes as you read it is highly suggested to assist you. Many times the quiz may be open notes. Taking notes is always a good strategy especially for college courses as professors often do not give notes as a high school teacher would. 9 Weeks Final Grade 60% Exams 20% 1 st Nine Weeks Grade 40% Formative Assessment 20% 2 nd Nine Weeks Grade 20% 3 rd Nine Weeks Grade 20% 4 th Nine Weeks Grade 20% Final Exam Grading Scale: A(100-92) B (91-81) C (80-70) D (69-60) F(59-below) *** A student that does not take the AP Exam will be given a grade of F. *** The AP* Exam The AP Computer Science A Exam is 3 hours long and seeks to determine how well students have mastered the concepts and techniques contained in the course outline. The exam consists of two sections: a multiple-choice section (40 questions in 1 hour and 15 minutes), which test proficiency in a wide variety of topics, and a free-response section (4 questions in 1 hour and 45 minutes), which requires the student to demonstrate the ability to solve problems involving more extended reasoning. Students will be considered tardy if they are not in the classroom and prepared for class when the bell rings. Tardy discipline will follow the student handbook. Class Expectation: Students are expected to be prepared for class and do the best of their ability in class. Students should show respect to the teacher and their peers. Homework is assigned daily and will be checked in some fashion the following day. If there are any circumstances that may keep work from being turned in on time please discuss these with me. It is necessary if you are having trouble that you do not wait for a progress report or a test day before you come to ask for help. Seek help as soon as you have a misunderstanding. If you are absent you will be expected to get the make-up notes and work from me, a classmate, or from the blackboard. You will be required to turn in any missed assignments within one week of an absence. All other policies covered in the school handbook will be enforced in this classroom.

Course Outline Unit 1: Animation with Alice3 4 Weeks Lesson 1: Telling a Story Visually Lesson 2: Creating a Scene by Adding and Positioning Objects Lesson 3: Using Procedures Lesson 4: Declaring Procedures Lesson 5: Using Control Statements and Functions Lesson 6: Using the If and While Control Statements Lesson 7: Using Expressions Lesson 8: Using Variables and Keyboard Controls to Manipulate Lesson 9: Correlating Java Variables, Data Types, and Expressions with Alice3 Tools Lesson 10: Correlating Java Methods, Classes, and Other Structures with Alice3 Tools Unit 2: Introduction to Java Programming with Greenfoot 4 weeks Lesson 1: Getting to know Greenfoot Lesson 2: The First Program- Little Crab Lesson3: Improving the Crab Lesson 4: Finishing the Crab Game Lesson 5: Making Music Lesson 6: Interacting Objects Lesson 7: Collision Detection: Asteroids Unit 3: Objects and Primitive Data - 4 weeks Students learn about data types, primitive and object. They write their first driver classes and learn about program syntax, input/output, methods, assignments, declarations, and constructing instances of String, Scanner, and other commonly used Java classes, along with invoking methods on those objects. Visibility modifiers are introduced along with classifying identifiers as instance fields, local variables, constants, etc. Arithmetic operators and precedence are discussed along with static methods from the Math class. Students also learn to hand-trace code and to choose appropriate data for testing their classes. Java Software Solutions - Chapters 2 Objects and Primitive Data o Using Objects o String Literals o Variables and Assignments o Primitive Data Types o Arithmetic Expressions o Enumerated Types o Creating Objects o Class Libraries and Packages

o o o Interactive Programs Introduction to Applets Drawing Shapes Blue Pelican Lessons Lesson 1 Hello World Simple use of println, rems, remarks, comments, block rems. Project From Me to You Lesson 2 Variable Types- String, int, double, legal names, illegal names, declaring, initializing Lesson 3 Simple String Operations- Concatenation, length, substring, tolowercase, touppercase, escape sequences, backslash Project Name That Celebrity Lesson 4 Using Numeric variables- Assignment, ++, --, modulus, +=, -=, /=, *=, PEMDAS, increment, decrement, multiple declarations, remainder, compound operator, roundoff. Project Cheating on Your Arithmetic Assignment Lesson 5 Mixed Data Types, Casting, and Constants -final, mixed arithmetic, casting. Project Mixed Results Lesson 6 Math Class Methods- abs, pow, sqrt, ceil, floor, log, min, max, round, PI, sin, cos, tan, asin, acos, atan, todegrees, toradians. Project Compute This Lesson 7 Input from the Keyboard - Scanner class, nextint, nextdouble, next, nextline, Projects Going in Circles What s My Name? Unit 4: Program Statements- 4 weeks Students learn the basics of logic along with relational and logical operators. They learn to evaluate Boolean expressions using truth tables. Boolean methods and variables are discussed and written, and their connection to the binary number system becomes obvious. The IF/ELSE control structure is examined and students learn to create interactive menus and handle input errors. Other types of error recognition and handling are also presented along with general documentation needs including preconditions and post conditions. The two types of loops, for loops and while loops, are examined in various situations. Students learn to choose the best loop for a particular situation. Sentinels, nesting, break and continue statements are discussed. Traversing a String object, printing a pattern, creating a Round-Robin, and other common uses for looping are experienced. Java Software Solutions - Chapter 3 Program Statements o Program Development o Control flow o The if Statement o Boolean Expressions o More Operators o The While Statement o The For Statement o Drawing Using Conditionals and Loops Blue Pelican Lesson 8 boolean Type and Operators - AND, OR, NOT, precedence Lesson 9 if statement- equals, equalsignorecase. Project Even or Odd? Lesson 10 The switch Statement and char - switch, default, break, char. Project Weight on Other Planets Lesson11 The for Loop - Initializing, control, and step expressions. break, infinite loops, scope,

for-loop project Project Name Reversal Lesson12 while and do-while loops - Testing at top and bottom of loop, break, continue Lesson 32 Boolean Algebra and DeMorgan s Theorem - OR, AND, truth table GridWorld Case Study Part 1: Provides experiments to observe the attributes and behaviors of the actors. Part 2: Defines Bug Variations Unit 5: Classes 3 weeks The writing class chapter is a gentle introduction to object oriented design for students. This chapter explores some of the concepts of how to break code into usable pieces as well as some of the important features of designing abstract data types and data storage classes. A solid understanding of this material is crucial if the student is to move into more advanced concepts. Constructors, accessor methods, mutator methods, instance fields, static methods and fields, visibility modifiers, encapsulation, and scope are emphasized. The concepts of data abstraction and encapsulation are also presented. Java Software Solutions - Chapter 4 & Chapter 5 Classes o Objects o Anatomy of a Class o Anatomy of a Method o Method Overloading o Method Decomposition o Object Relationships o Applet Methods o Graphical Objects o References Revisited o The Static Modifier Blue Pelican Lesson 20 Static Methods and State Variables -Class methods and variables, static constants static imports. Project How Far To The Line? Lesson 21 Wrapper Classes - Converting primitives to objects and vice versa Lesson 22 More on Wrapper Classes - parseint, parsedouble, tohexstring, tooctalstring, tobinarystring, tostring, valueof Lesson 30 Random Numbers - nextdouble, nextint, Monte Carlo, simulations, Project Monte Carlo Technique Unit 6: Arrays & ArrayLists - 3 weeks Students work with 1-dimensional and 2-dimensional arrays, using loops to traverse. The abbreviated for loop is introduced. Students also work with ArrayLists and learn the advantages and disadvantages of arrays versus ArrayLists. Java Software Solutions - Chapter 6 Arrays o Arrays o Arrays of Objects o Searching

o Two-Dimensional Arrays o The ArrayList Class o Polygons and Polylines o Button Components Blue Pelican Lesson 18 Arrays - Declaring and initializing, length, parallel arrays, Out-of-bounds exception, passing an array to a method, automatic initialization, split, reg expr. Project Array of Hope Lesson 19 Advanced Array Concepts - Arrays of objects, comparison of array values, null pointer exception, different reference to same array, arraycopy, tochararray, logical vs physical size, Arrays class, sort, binarysearch, equals, fill, importing, command line arguments, enhanced forloop. Project Sorting a String Array. Two Orders for the Price of One Lesson33 Selection Operator -?: syntax Lesson 34 Passing by Value and by Reference - Arrays, primitives, objects, references. Project Pass the Gravy, Please Lesson 35 Two-Dimensional Arrays - Subscripted variables, matrix, initializing, Arrays class. Project Matrix Multiplication, Matrix Multiplication with File Input Lesson 43 ArrayList - advantages, disadvantages, Project Big Bucks in the Bank GridWorld Part 3: Explores the code that is needed to understand and create actors. Part 4: Defines classes that extend the Critter class. Unit 7: Interfaces, Inheritance, and Polymorphism - 4 weeks Interfaces and abstract classes are introduced along with abstract methods and the requirements for designing a subclass. Specific examples are provided that help clarify "is-a" and "has-a" relationships. The Object class and Comparable interface are discussed along with invocation and overriding of the equals, tostring, and compareto methods. Students learn about polymorphism and method calls in terms of compile-time and run-time. Java Software Solutions - Chapters 7 Inheritance o Creating Subclasses o Overriding Methods o Class Hierarchies o Indirect Use of Class Members o Designing for Inheritance o Polymorphism o Interfaces o Designing for Polymorphism o Inheritance and GUIs o Mouse Events Blue Pelican Lesson 36 Inheritance - Superclass, subclass, base class, derived class, abstract, final, overriding, shadowing, cosmic superclass, instanceof, Object, this, super Lesson 37 Exceptions - Checked, unchecked, try, catch, finally, throw, throws Project Keep Trying Lesson 38 Interfaces - Implementation perspective,objective perspective, instanceof, polymorphism, realizes, implements.

Project Linear Function Lesson 39 Complexity Analysis (Big O) - sequential search, binary search Lesson 42 List Interface - ArrayList, LinkedList, Vector Lesson 44 Iterator/ListIterator - stepping through a list Project Big Bucks Revisited

Unit 8: Recursion -2 week Students are introduced to the concept of recursion in a very general sense, and then more specifically, as an alternative to looping. They practice writing and tracing simple recursive math formulas, and they write and trace recursive methods. Advantages and disadvantages of recursive methods are discussed along with stacks and program execution order. Readings and Multiple Choice or Short Answer Review Questions Java Software Solutions - Chapter 8 Recursion o Recursive Thinking o Recursive Programming o Using Recursion o Recursion in Sorting o Recursion in Graphics Barron's Recursion chapter Blue Pelican Lesson Lesson 40 Recursion - Factorial, Fibonacci series Project Fibonacci Unit 9: Searching and Sorting Algorithms - 2 weeks Students learn about different searching algorithms, including sequential and binary searching. Sorting is discussed along with algorithms for the selection, insertion, and merge sorts. Analysis of algorithms and big-oh notation are introduced, and students learn to compare speed and space requirements based on design choice. They also look at the effect of the size of the data set. Blue Pelican Lesson Lesson 41 Sorting Routines - selection, insertion, quick, & merge sorts, partition, Big O chart, Project Multiple Key Sorting Barron's chapter on Searching & Sorting Unit 10: Exam Review and Practice - 3weeks Students will go through the AP Computer Science A Topic Outline item by item to make sure they understand all of the material to be tested. The Barron's review book will be used for summarizing all topics and practicing multiple choice and free response type questions. Barron's practice tests 2004 AP Computer Science A released exam 2009 AP Computer Science A released exam

Note to Parents Students may get extra help by scheduling a time before or after school with me. Parents will be responsible for picking the students up at the specified time. If your child has done something wonderful, made improvements or is having problems in class, I would like to contact you. Please provide the following information. Student Name: Contact Name: Daytime Phone: Evening Phone: If you would like to be put on the distribution list for this class, please give your email address. I will send notifications of upcoming events. Email: I will use email as the basic form of communication with you. Thank you, LaDonna Woods