AP Computer Science A

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

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

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

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)

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

AP Computer Science A Course Syllabus

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

AP Computer Science A Syllabus

AP Computer Science in Java Course Syllabus

Spring 2018 El Camino College E. Ambrosio. Course Syllabus

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

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

AP Computer Science A Skyline High School Mr. Coupland

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

AP Computer Science AB

HOUSTON COMMUNITY COLLEGE BUSINESS TECHNOLOGY NORTHEAST COLLEGE-NORTHLINE LOCATION COURSE SYLLABUS FALL 2011 COMPUTER APPLICATION I POFI 1301

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

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

TeenCoder : Java Programming (ISBN )

San Jose State University - Department of Computer Science

AP COMPUTER SCIENCE A: SYLLABUS

San José State University Computer Science Department CS49J, Section 3, Programming in Java, Fall 2015

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

AP Computer Science A Sample Syllabus 4

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

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

Syllabus Honors Java Programming 1 & 2

CompuScholar, Inc. 9th - 12th grades

IMACS: AP Computer Science A

You must pass the final exam to pass the course.

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

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

San José State University Department of Computer Science CS049J, Programming in Java, Section 2, Fall, 2016

CSC 210 COMPUTER SCIENCE II

ITT Technical Institute. SD1420 Introduction to Java Programming Onsite and Online Course SYLLABUS

San José State University Department of Computer Science CS-144, Advanced C++ Programming, Section 1, Spring 2018

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017

CS 241 Data Organization using C

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1, 2, and 3, Spring 2018

University of Asia Pacific (UAP) Department of Computer Science and Engineering (CSE)

CO Java SE 8: Fundamentals

CSE 114, Computer Science 1 Course Information. Spring 2017 Stony Brook University Instructor: Dr. Paul Fodor

AP Computer Science A (Java) Scope and Sequence

Introduction to Programming System Design CSCI 455x (4 Units)

AP Computer Science A Syllabus

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

AP Computer Science A Syllabus

Homeschool Programming, Inc.

ESET 349 Microcontroller Architecture, Fall 2018

INTRODUCTION TO COMPUTER SCIENCE - JAVA

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus

AP Computer Science Course Syllabus

San José State University Department of Computer Science CS151, Section 04 Object Oriented Design Spring 2018

CS 235AM, Mobile Application Development: Android Spring 2016

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

Updated: 2/14/2017 Page 1 of 6

Instructor: Anna Miller

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

PC Applications IT102 estart Fall 2014

ITT Technical Institute. ET2560T Introduction to C Programming Onsite and Online Course SYLLABUS

Introduction to Computer Science using JAVA

AP Computer Science A Syllabus

Fundamentals of Computer Science CSCI 136 Syllabus Fall 2018

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

Plymouth Canton Educational Park Canton High School 8415 Canton Center Rd. Canton, Michigan Course Syllabus

COURSE OVERVIEW. Successful completion of this course may provide one semester of college credit for computer science.

San José State University Department of Computer Science CS151, Object Oriented Design, Section 04, Fall, 2016 (42968)

ICS111 Introduction to Computer Science

Compulsory course in Computer Science

CIS Computer Concepts & Programming

The Oracle Academy Supports 1.5 million students in 95 countries

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

CMPT 126: Introduction to Computing Science and Programming Fall 2007, Harbour Centre

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS 3D MODELING & ANIMATION CGT 2160

CS 241 Data Organization. August 21, 2018

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

CS2013 Course Syllabus Spring 2018 Lecture: Mon/Wed 2:00 P.M. 2:50 P.M. SH C259 Lab: Mon/Wed 2:50 P.M. 4:00 P.M. SH C259

JOHNSON COUNTY COMMUNITY COLLEGE COURSE SYLLABUS WEB CRN Web Scripting: JavaScript I

ITT Technical Institute. SD2720 Advanced Software Development Using Java Onsite and Online Course SYLLABUS

Preface A Brief History Pilot Test Results

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1 and 2, Spring 2016

Syllabus COSC-051-x - Computer Science I Fall Office Hours: Daily hours will be entered on Course calendar (or by appointment)

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

San José State University College of Science/Department of Computer Science CS 152, Programming Language Paradigms, Section 03/04, Fall, 2018

Programming 2. Outline (112) Lecture 0. Important Information. Lecture Protocol. Subject Overview. General Overview.

COURSE SYLLABUS AND INSTRUCTOR PLAN

CISC 3130 Data Structures Fall 2018

School of Computing and Information Sciences. Course Title: Data Structures Date: 3/30/2010 Course Number: COP 3530 Number of Credits: 3

ENGR 102 Engineering Lab I - Computation

Object-Oriented Programming for Managers

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department

CS 200, Section 1, Programming I, Fall 2017 College of Arts & Sciences Syllabus

San José State University Department of Computer Science CS-174, Server-side Web Programming, Section 2, Spring 2018

CS Computer Science I

COSC 115A: Introduction to Web Authoring Fall 2014

COWLEY COLLEGE & Area Vocational Technical School

FORM I: SUMMARY PAGE FOR PROPOSAL # CSCI

AP Computer Science A (APCS) James Madison High School - Career & Technical Education Course Syllabus and Guidelines

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus


Transcription:

AP Computer Science A Couse Information: Couse Title: AP Computer Science A Couse Number: 8317 Length of Course: Full year No. of Credits: 1.0 Instructor Information: Instructor: Michael George Email: georgem@wlwv.k12.or.us Classroom: F 101 Phone: (503) 673 7800 Course Description: AP Computer Science A is a college prep level course which is intended to help students build a solid foundation in programming and working with complex data structures. The class introduces students to the concepts of object oriented programming using the Java language. At the end of the year, students should have a strong understanding of programming basics, including data structures, control statements, objects, arrays, and sorting. Students should be able to analyze and understand existing code structures, adapt and modify code, and apply their analytical skills learned for Java to new situations and/or other programming and coding languages. Finally, students should be prepared and able to complete the AP Computer Science A Exam with a 3 or better. Students will complete a variety of small skill based exercises in the class, as well as two semester group projects and the collection of Grid World Case Studies from the College Board. Each student should have access to a computer every day and should learn and practice effective data management techniques which will allow them to work on the same files at school and at home. Students will be expected to read from the textbook at home and complete programming exercises as homework. Lab time will be provided for in class assignments and group projects but students are expected to program at home using open source applications that can be downloaded from the class website. Essential Questions: What is a computer program and what are its basic characteristics? What is object oriented programming? What are the basic programming components of an object oriented language? What is Java and how does it work? How do we apply analytical thinking skills to solve real world problems through programming? What are our ethical and responsible obligations when working with technology? How do we work with other programmers to produce high quality collaborative projects? How can we apply and extend skills learned with Java to other technologies?

Ethics and Technology: In addition to the above, this class will emphasize the importance of ethical practices when working with technology. This is an important area, which deserves special attention, and will be woven throughout the framework of the course. My intention is to address each of these issues numerous times, touching on at least one issue per lesson, and to use case studies and examples as discussion points. The ethical areas that this class will look at are: Responsible and Ethical Use Privacy Economic and Legal Implications Safety and Harassment Intellectual Property Rights Student Learning Objectives: Upon completion of this course the student will be able to: Identify the basic characteristics of a computer program. Display an understanding of object oriented programming. Apply advanced logical and mathematical principles. Apply analytical thinking skills to solve real world problems through programming. Collaborate with other programmers. Demonstrate an understanding of ethical and responsible use in the digital realm. Apply and extend skills to other technologies. Prerequisites: None. Grading: Classwork/Homework: 20% Projects: 30% Quizzes: 20% Tests/Exams: 30% Grading Information: Grades will be updated regularly and should be accessible online at least every two weeks. Students seeking help can visit during office hours or by appointment. Students may also get help at the Academic Center, after school on Tuesdays, Wednesdays, and Thursdays from 3:30 to 5:00.

Course Expectations: Students will be required to work on programming both in class and at home. Students should either have a google drive account or usb flash drive for easy access to projects from anywhere. Be respectful we will be sharing and reviewing each other's work and it is essential that we maintain a safe, positive, and constructive atmosphere at all times. Be on time coming in late can be very disruptive. Please do not interrupt the class. If you come in late, it is your responsibility to make sure that you clear the tardy with the attendance office and bring me an admit slip. Be careful abusing or misusing computers will not be tolerated. Do not download anything onto the computers unless you are explicitly told to do so. NO FOOD OR DRINK IN THE COMPUTER LAB EVER! 20 Minute Rule School policy requires that we remain in the classroom for the first 20 minutes of each period, so use the restroom during your passing time. Breaks Only 2 students may leave the classroom at a time. No Exceptions! Students will use the sign out sheet and hall pass when leaving the classroom for any reason. Breaks must be limited to 5 minutes or less, anything more will be considered an absence. Appreciations and Concerns This is an important element of our class and will be essential for establishing the positive and safe atmosphere that we need to work well together. You are not required to contribute anything to the A&C session, but you are required to be polite and respectful when others are speaking. Watching videos, playing games, or other inappropriate use of computers during class time will result in a referral. Plagiarism of any kind, including attempting to pass off someone else's code as your own will result in an automatic zero for the assignment and a referral. Attendance is mandatory. Students who miss class for any reason are expected to make up missed work on their own time. Required Supplies: Students will provide their own book covers for textbooks. Students should have a three ring binder for handouts, notes, and assignments. Students should have either a google drive/dropbox account or usb flash drive. Students will need to have reliable access to a computer outside of class. Course Resources: Horstmann, C. Java Concepts for AP Computer Science, 5th ed. Hoboken, NJ: Wiley, 2008. College Board. AP GridWorld Case Study. New York: College Entrance Examination Board, 2006. Sierra, K. and B. Bates. Head First Java. Sebastapol, CA: O Riley Media, 2003. The Java Language Specification. http://java.sun.com/docs/books/jls/

Java Platform Standard Edition 7 API Specification. http://docs.oracle.com/javase/7/docs/api/ BlueJ Interactive Programming Environment. http://www.bluej.org/ College Board. Computer Science A Course Description, Appendixes A and B. York: College Entrance Examination Board, 2010. Methodology The class will be broken up into units which are intended to address particular elements of the AP Computer Science A course. Each unit includes at least one programming project and a variety of smaller day to day exercises. The Hortsmann text, the major text for the class, will be included in each unit. Students will be expected to do assigned reading outside of class. Students will work on individual small projects and will work together as members of small teams on some larger projects. Group work is intended to help students learn about proper documentation, creating good program flow charts and JavaDocs, bug testing, and interpreting and modifying code written by other programmers. The Semester projects will each be group projects and will include project proposals, planning, and implementation. Each unit will end with a quiz that will address the concepts from that unit and provide practice for the AP Test. There will also be cumulative exams at the end of each quarter. The second to last unit, which focuses on review and preparation for the AP Test will include a practice test that will incorporate elements from each of the previous lessons. In addition to exercises, projects, and quizzes, students will complete a variety of Ethics and Technology projects and case studies throughout the course. Students will have individual access to computers every day and should spend a major portion of most class periods interacting with the BlueJ programming environment to implement the Java SE JDK. Students will also utilize the GridWorld Case Study, which will help them interact with existing code and work within a graphical environment. By the end of the first semester, students should be comfortable enough with the code to adopt and adapt portions of it for their own purposes in the final programming project.

Class Procedures: Warm Up Phase (5 10 min) Every class will start with time to complete a warm up assignment. Upkeep Phase (5 10 min) Immediately following the warm we will spend time addressing any of the following issues: Homework questions Turn in homework Class Business School Business Lesson Phase (10 25 min) This is the phase where new CS concepts are introduced. All students are expected to take notes and complete activities. Work Phase (10 30 min) This is the phase where you practice, apply, and begin to understand the new concepts. After the lesson phase students will be given the opportunity to practice the lesson. Students will work individually or in groups (teacher determined) to complete projects and exercises. End Phase (5 10 min) The last few minutes of class a reserved to complete the following tasks: Clean up Assign Homework Exit Ticket

Course Outline: Fall Semester (18 weeks) Unit (Weeks) 1 Title, Topics, and Student Objectives Intro to Programming Object Oriented Programming Design Structure Variables Functions Properties Arithmetic Operators Primitives Relational Concatenation Resources, Assessments, and Strategies Using the BlueJ interface, students will be introduced to programming structure and flowcharts. Students will work on a variety of simple projects in BlueJ that are designed to illustrate programming methodology and OOP design. Create simple Input/Output, arithmetic, and random numbers Programming Project: Write Hello World program Ethics Project: Acceptable Use Policy 2 Java basics How Java Works Java Code Structure Pseudocode Debugging Design Structure Compiling Errors Input/Output Variables Number Types Arithmetic Operators Strings Primitives Increment, Decrement Escape Hortsmann, ch 1 & 2 Hortsmann, ch. 4 This will begin the Java programming portion of the class. Using BlueJ, students will become acquainted with the Java environment, writing pseudocode and comments, and creating simple code structures. Students will also learn how to debug common compiling errors. Programming Project: Students will create a simple Login Project that takes user input and returns output to the user. Java Interface Quiz 3 Objects Part 1 Objects Classes Subclasses Inheritance Variables Constructors Interface Reusing Code Interface Strings Hortsmann ch. 2 & 3 Hortsmann ch. 10 Sierrra and Bates: Chapter 2, 3 Complete Chapter 2, 3 Exercises Using BlueJ, students will begin by looking at existing objects and classes and discovering how to change and manipulate them. Students will create a simple program that uses the pet class to create animal objects: cat, dog, fish, and bird. Objects and Classes Quiz.

4 Control Statements and Iteration if if...else if...else if... for while switch break return statements Hortsmann, ch. 5 & 6 Sierrra and Bates: Chapter 1 Complete Chapter 1 Exercises Programming Project: Students will create a calculator program that performs simple mathematical operations based on user input. Ethics Case Study: User input and personal information. Loops Quiz. 5 Behavior, Input/Output, and Exceptions Methods Arguments and Return Types Getters and Setters Encapsulation Input/Output Exceptions Hortsmann, ch.11 Sierrra and Bates: Chapter 4 Complete Chapter 4 Exercises Review Computer Science A Appendix B Behavior Quiz 6 7 Advanced Math and Object Oriented Programmin g Recursion Floating Point Computation Round off Error Java Library (Java API) Project 1: Write a simple interactive program Booleans Hortsmann ch. 13 Discussion on when to use Recursion Sierrra and Bates: Chapter 10 Complete Chapter 10 Exercises Hortsmann, Appendix C. Sierra and Bates: Chapter 6 Java 2 Platform Standard Edition 5.0 API Specification. Programming Project: Write a simple interactive program Students will create a basic command line Battleship program that will take user input, call methods, and output valid responses. Spring Semester (18 weeks) Unit (Weeks) 8 Title, Topics, and Student Objectives Arrays List One dimensions Arrays Two dimensional Horstmann ch. 7 Grid World Case Study Part 2 Sierrra and Bates: Chapter 3, 9 Resources, Assessments, and Strategies

Arrays Array Lists Inserting/Deleting Arrays vs. ArrayList Discussion (Sierrra and Bates: pp 137 139) Programming Project: Dice Roller. Students will create a program that uses arrays and random number generation to roll dice and return a result. 9 (4 weeks) 10 11 (4 weeks) 12 Objects Part 2 Object Creation Object Interaction Class Specification Class Relationships Class hierarchy Class Design Data Structures Sequential Search Binary Search Selection Sort Insertion Sort Merge Sort HashSet HashMap Interfaces Interface GUI Inner Classes Animation Tiles Review and preparation for AP Exam Arrays Quiz. Hortsmann ch. 8, 12 Grid World Case Study Part 1 Ethics Project: Ensuring a safe interactive environment. Sierrra and Bates: Chapter 7, 8, 9 Complete Chapter 7, 8, 9 Exercises Objects Quiz #2 Hortsmann ch. 14, 15, 16 Sierrra and Bates: Chapter 16 Complete Chapter 16 Exercises Programming Project: Jukebox. Students will create a program that allows users to sort through a list of songs by title, genre, artist, or album. Users should also be able to add or delete songs. Sorting Quiz Hortsmann ch. 9 Grid World Case Study Part 3 Grid World Case Study Part 4 Sierrra and Bates: Chapter 12 Complete Chapter 12 Exercises Programming Project: Snake Game. Students will use a simple GUI and two dimensional array to build a grid, create snake and food classes, and program a user interface. Computer Science A Appendix A Review Practice Exam 13 Summative Programming Project: Students build a simple tile based game that relies on user input, collision detection, and simple physics. The game will be object oriented and will utilize two dimensional arrays for world building. A major goal will be to analyze how the Grid World objects were set up and then apply similar concepts to creating their own game objects. Ethics Case Study: Intellectual Property Rights