APCSP Full Review
Overview
- APCSP is split into five Big Ideas:
- Creative Development
- Data
- Algorithms and Programming
- Computer Systems and Networks
- Impacts of Computing
Big Idea 1: Creative Development
Collaboration
- Computing Innovation: Must include a program as a major part of its function.
- Examples: Physical (e.g., self-driving car) or software-based.
- Importance of Collaboration:
- Provides diverse viewpoints and talent.
- Helps reduce bias in programming.
- Online tools facilitate inclusion of diverse opinions (e.g., Zoom calls).
Programs
- Collection of code statements for tasks.
- Works through inputs and outputs.
- Development involves adjustments, feedback, and identifying constraints.
Program Errors
- Logic Errors: Mistakes in algorithm logic.
- Syntax Errors: Mistakes in coding language structure.
- Runtime Errors: Errors during program execution (e.g., accessing out-of-bounds array element).
- Overflow Errors: Occur when handling numbers outside defined range.
Big Idea 2: Data
Data Representation
- Data stored in bits (base 2 numbers).
- Conversion between bases (e.g., base 10 to base 2).
- Context influences interpretation of data (e.g., same bits can mean different things).
Analog vs. Digital Data
- Analog Data: Changes smoothly over time.
- Digital Data: Represents analog data using sampling techniques.
Data Compression
- Lossless Compression: Reduces bits, allows full restoration to original.
- Lossy Compression: More reduction, only approximate restoration.
Metadata
- Data about data (e.g., time and location of an image).
- Changes to metadata do not affect the actual data.
Data Cleansing
- Ensures data uniformity without altering meaning.
- Bias reduction through diverse data sources.
Big Idea 3: Algorithms and Programming
Variables & Expressions
- Variables hold values, assigned through expressions.
- Lists group variables; use indexes to reference values.
Boolean Expressions
- AND: Both conditions must be true.
- OR: At least one condition must be true.
- NOT: Neither condition can be true.
Control Structures
- If Statements: Conditional execution of code blocks.
- Loops: Repeat tasks (e.g., for loops, while loops).
- For Loop: Repeats a set number of times.
- While Loop: Repeats until a condition is false.
Searching Algorithms
- Linear Search: Checks each element sequentially.
- Binary Search: Efficient for sorted lists, divides search space in half.
Procedures and Abstraction
- Procedures: Named group of instructions, may have input parameters and return values.
- Abstraction helps simplify complex processes.
Libraries and APIs
- Libraries contain pre-built procedures.
- APIs guide the use of library procedures.
Simulations
- Abstract complex processes to simulate real-world scenarios.
- Useful to predict outcomes without actual events occurring.
Big Idea 4: Computer Systems and Networks
The Internet
- Computing Devices: Physical artifacts like computers and routers.
- Computer Networks: Groups of connected devices.
- Routing: Process of finding paths in a network.
- Bandwidth: Max data rate, measured in bits per second.
Internet Protocols
- Protocols: Agreed rules for system behavior (e.g., IP, TCP).
- World Wide Web: Uses internet and HTTP for linked pages.
Fault Tolerance and Redundancy
- Fault tolerance supports system failures.
- Redundancy uses multiple paths for reliability.
Parallel and Distributed Computing
- Sequential Computing: One operation at a time.
- Parallel Computing: Operations run simultaneously across multiple devices.
- Distributed Computing: Uses multiple devices for large-scale problems.
Big Idea 5: Impacts of Computing
Beneficial and Harmful Effects
- Innovations can have unintended effects.
- Digital divide affects internet access across different demographics.
Bias and Crowdsourcing
- Bias can emerge at any development stage.
- Crowdsourcing gathers input from large numbers via the internet.
- Examples: funding, citizen science.
Legal and Ethical Concerns
- Intellectual Property (IP): Material is property of the creator.
- Creative Commons: Public copyright licenses for free distribution.
- Open Source and Open Access: Promote free availability and modification.
Safe Computing
- Personally Identifiable Information (PII): Info that identifies individuals.
- Authentication: Protects devices from unauthorized access (e.g., strong passwords).
Security Threats
- Malware and Viruses: Harmful programs unauthorized on systems.
- Phishing: Trick users into revealing personal info.
- Rogue Access Points: Intercept data on public networks.
- Malicious Links: Disguised to install unwanted software.
Exam Preparation
Create Task
- Sequencing, Selection, Iteration: Key concepts in programming for exam tasks.
- Creativity in programming tasks (e.g., game creation).
Important Definitions for Create Task
- Sequencing: Order of execution in programming.
- Selection: Boolean expressions guiding execution.
- Iteration: Repeating code steps until conditions are met.
Summary
- Comprehensive understanding of all major topics in APCSP is crucial for both the multiple choice and create task portions of the exam.
- Familiarity with algorithms, data, computing systems, and the impact of technology is essential for success.
If there are any questions, please feel free to ask or comment.