* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download AP Computer Science Principles
Survey
Document related concepts
Transcript
AP Computer Science Principles Piscataway High School Teacher: Ms. Your Name Email: Nameyourname@pway.org Course Title: AP Computer Science Principles Textbook: UTeach CS Principles Course Overview Full year course: 5.0 credits Prerequisite: Algebra 2 or Introduction to Computer Science Description: AP Computer Science Principles introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world. With a unique focus on creative problem solving and real-world application, AP Computer Science Principles prepares students for college and careers in a variety of fields. The course aligns with the 7 Big Ideas and 6 Computational Thinking Practices as laid out by the College Board for AP Computer Science Principles. Students will be given adequate in-class time to complete the two tasks that make up the AP Through-Course Assessment, and gain the essential knowledge and understanding necessary to succeed on the AP End-of-Course Exam. The AP CS Principles course is structured as follows: Unit Topic Length Unit 1 Computational Thinking 13 Days Unit 2 Programming 15 Days Unit 3 Data Representation 12 Days Unit 4 Digital Media Processing 15 Days Unit 5 Big Data 13 Days Unit 6 Innovative Technologies 12 Days Unit 7 AP - Performance Tasks 20 Days Unit 8 Artificial Intelligence 20 Days Scope and Sequence – First Semester Unit Timing Unit 1 13 days Topic Concepts and Skills (1 day = 1 hour) Assessment & Project for Unit 1 completed by the end of Cycle 3 Algorithmic Thinking Computational Thinking Big Ideas: Abstraction [2] Algorithms [4] Programming [5] The Internet [6] Global Impact [7] Unit 2 15 days o Examine strategies for approaching large-scale problems o Identify and examine a number of common features of algorithms, including sequencing, selection, and repetition o Explore the benefits and applications of employing a top-down or a bottomup approach to problem solving Cryptography & Cybersecurity o Identify the needs and applications of cryptography in our digital world o Analyze the differences between symmetric (single-key) encryption and asymmetric (public key) encryption o Encode and decode messages using common cryptographic techniques o Examine a number of common threats to cybersecurity, including distributed denial of service attacks (DDoS), phishing, viruses, and social engineering o Analyze the function and effectiveness of common cybersecurity solutions, including antivirus software and firewalls Programming Languages o Examine the need for clarity and precision in communicating an algorithmic solution to a problem o Analyze the need for artificial programming languages Solvability & Performance o Examine the factors that affect the decidability of a problem o Examine methods of comparing equivalent algorithms for relative efficiency o Identify factors that allow solutions to scale efficiently Unit Project – Password Generator Algorithm Assessment & Project for Unit 2 completed by the end of Cycle 6 Visual Programming – Scratch, programming with blocks, and remixing Programming Big Ideas: Creativity [1] Algorithms [4] Programming [5] Global Impact [7] projects o Utilize a graphical editor to read, construct, and execute dynamic programs o Examine, modify, and execute programs developed by others o Share and collaborate on their own programs Program State – User input and variables o Examine how the dynamic state of an object or program can be stored and changed using variables Selection Statements – conditional “if…else” statements, boolean logic o Analyze the differences between simple selection and complex, nested selection statements o Examine the use of the Boolean operators "AND", "OR", and "NOT" in constructing complex conditional statements Repetition – “Repeat” & “repeat until” loops, loops and variables o Design and construct instructions using a non-traditional, domain-specific notation Unit Project – Scratch Programming Project Unit Timing Unit 3 12 days Topic Concepts and Skills (1 day = 1 hour) Assessment & Project for Unit 3 completed by the end of Cycle 8 Binary Encoding of Information Data Representation Big Ideas: Abstraction [2] Data and Information [3] Algorithms [4] Programming [5] Unit 4 15 days o Examine how numerical values are represented using different bases, including decimal and binary o Examine the exponential relationship between the number of digits and their range of representable values o Examine how alphanumeric characters and symbols may be represented using ASCII and Unicode character mappings Digital Approximations – Digitalization, analog v. digital data, perfect copies o Explore ways in which natural phenomena may be represented digitally o Analyze the differences between discrete (digital) and continuous (analog) representations of natural phenomena Global Impact – Legality of reselling digital music o Examine the social implications of the ease with which perfect digital copies can be made Lists – Making, processing, and sorting a list o Examine the use of lists as ordered data structures that may contain multiple values o Investigate the use of index values to represent positions of items in a list o Investigate common operations for processing elements of a list, including searching for an element, removing an element, swapping the positions of two elements, or sorting an entire list into ascending or descending order Unit Project – Unintend’o Controller Assessment & Project for Unit 4 completed by the end of Cycle 11 Digital Media Processing Procedural Programming – Introduction to Processing: drawing, mouse Big Ideas: Creativity [1] Abstraction [2] Data and Information [3] Algorithms [4] Programming [5] Global Impact [7] interaction, keyboard interaction o Compare and contrast the programming capabilities of a visual programming language (Scratch) with those of a text-based programming language (Processing) o Write programs that make use of parameterized methods to invoke specific behaviors o Write code using common programming constructs like conditional if() for selection and while() loops for iteration and use event handlers to animate on-screen effects and respond to mouse and keyboard input Global Impact – Ethics of digital manipulation, intellectual property rights o Explore the positive and negative consequences of digitally altering images o Discuss the ethics of digitally manipulating images, especially in the context of journalism and issues related to intellectual property o Explore the limitations and rights associated with a number of common licenses, including Creative Commons Image Manipulation – RGB Color, raster images, raster image manipulation, encoding schemes, manipulating digital images o Examine the structure of raster images as compositions of individual pixels o Explore various methods of representing color, including RGB, CMYK, and HSV o Modify the color channels of pixels in an image to produce various effects o Explore the difference between lossy and lossless encoding schemes of several common image file formats Audio Manipulation – Digital audio, audio processing, audio compression o Analyze the differences between analog and digital sound o Explore methods of programmatically altering and modifying digital audio by adjusting volume, pitch, and sampling rate o Explore the methods and effects of compression algorithms in reducing the amount of data needed to represent an audio sample Unit Project – Image Filter Project Unit Timing Unit 5 13 days Topic Concepts and Skills (1 day = 1 hour) Assessment & Project for Unit 5 completed by the end of Cycle 14 Data Science – Introduction to big data, usability and usefulness of data, data Big Data Big Ideas: Creativity [1] Abstraction [2] Data and Information [3] Algorithms [4] Programming [5] Global Impact [7] visualization o Relate the impact of computing to ubiquitous and large-scale data processing o Discuss the risks and benefits of drawing conclusions from patterns found in large data sets o Identify the characteristics that differentiate usable data from unusable data and useful data from useless data Data Aggregation – Collection, extraction, storage o Explore the purposes of various processing tasks, including collection, knowledge extraction, and data storage o Identify multiple techniques for data collection, both on and off of the Internet o Extract structured information from unstructured data o Examine methods of extracting information from online sources, including structured and unstructured search engines, screen scrapers, and spiders Data Analysis – Statistical analysis, data mining, clustering and classification o Analyze the tradeoff of utility and confidence in descriptive, predictive, and prescriptive data analysis o Investigate the use of data mining in the discovery of patterns in large data sets o Examine the use of cluster analysis and data classification in the processing of large data sets Global Impact – Crowdsourcing o Examine the security risks and responsibilities assumed by companies that collect and store sensitive personal data o Apply the technique of crowdsourcing to a novel data collection problem Unit Project – TEDxKinda Presentation Scope and Sequence – Second Semester Unit Timing Unit 6 12 days Approximate time frame Concepts and Skills (1 day = 1 hour) Assessment & Project for Unit 6 completed by the end of Cycle 16 Innovative Technologies Everyday Computing – Social networking and communication; search, wikis, Big Ideas: Creativity [1] Programming [5] The Internet [6] Global Impact [7] Unit 7 20 days Unit Project – Future Technology Project AP Performance Tasks for Unit 7 to be completed and submitted by April 30 Explore – Impact of Computing Innovations AP Performance Tasks Big Ideas: Creativity [1] Abstraction [2] Data and Information [3] Algorithms [4] Programming [5] Global Impact [7] Unit 8 20 days commerce, and news; cloud computing; the digital divide o Analyze the role that digital technology plays in their everyday lives, social communications, and interactions o Explore the impact that instant access to global search, news, and information has had on individuals and communities o Analyze the benefits and risks of cloud computing o Investigate the socioeconomic causes and effects related to the digital divide The Internet – Network infrastructure, communication protocols, World Wide Web o Examine the overall design and architecture of the Internet, including the role of servers, routers, gateways, and clients o Examine a number of standard network protocols, including IP, TCP, UDP, SMTP, HTTP, and FTP Global Impact – Silos & walled gardens, Net neutrality o Discuss the benefits and risks of open versus closed platforms o Analyze the legal, social, and commercial impact that the World Wide Web has had on society Innovations in Computing – Pioneers in computing, distributed computing, ethics of autonomous technology o Investigate a number of key individuals and breakthroughs in the development of modern computing o Explore the design goals and technological advances in the development of computing innovations o Examine the potential emergence of a technological singularity o Investigate and extrapolate from recent advances in computing to make predictions about the capabilities of future technologies o 8 hours of in-class work time for exploration, research, and creative development Create – Applications from Ideas o 12 hours of in-class work time for exploration, research, and creative development Assessment & Project for Unit 8 to be completed by the end of Cycle 24 Defining Artificial Intelligence – Chat bots, Watson, Elsa Artificial Intelligence Big Ideas: Creativity [1] Abstraction [2] Data and Information [3] Algorithms [4] Programming [5] The Internet [6] Global Impact [7] Global Impact – Ethics of artificial intelligence, legal implications Turing Tests – CAPTCHA Final Project