66 terms

AP Computer Science Principles Exam

STUDY
PLAY

Terms in this set (...)

Computing is closely tied to ____, computing innovation have far reaching ____.
creativity; innovation
The two impacts of computing is?
Facilitate creation of computational artifacts and help people solve personal, societal, and global problems.
What do computing tools enhance?
The creative process
What does collaboration facilitate?
Multiple perspectives, diverse talents and skil,s
What is abstraction?
Information and detail reduction to focus on the relevant concepts of something.
Abstraction uses ____ levels to represent data
Various
What is the lowest level of abstraction?
Data represented as bits
What is an overflow error?
An error in which a value is too large for the program to handle
What is a round off error?
The computer's inability to represent some numbers exactly
What two things can bits represent?
Data or instruction
What are some characteristics of higher-level programming?
It is more abstract and readable
What is the lowest level in the abstraction hierarchy?
Physical
What is hardware built with?
Multiple levels of abstraction
What do applications + systems = ?
Hardware; Software; Conceptual
What constraints do models and simulations transcend?
Danger, time, and ethics
Big Idea 3: Data and Information
...
What is a process?
Combining data, clustering, and classification
What does collaboration bring?
Varied skill sets, perspectives, gains insight, and develops hypotheses
Search tools are essential to effectively using ____
Data
What is metadata?
Data about Data
What do large data sets include?
Transactions, measurements, texts, sounds, images, and video
What do digital data representations have?
Storage, security, or privacy issues
What is lossless data compression?
High amount of storage required to get all bits
What is lossy data compression?
Fewer bits, but irreversible.
Big Idea 4: Algorithms
...
What is sequencing?
Application of steps in a particular order
What is selection?
{if} using a boolean to determine execution
What is iteration?
Reptition of code for a counter or condition
What does knowing standard algorithms help with?
It helps create new algorithms based off the original correct ones
What is pseudocode?
Understandable for humans
What is textual programming?
Understandable for computers
What does computing language effect?
Affected clarity and readability, but not if an algorithmic solution exists
What functions have reasonable time?
Constant linear, log, and polynomial
What is a heuristic approach?
An approximate
In what circumstances a heuristic approach acceptable?
Are quick when specific methods take exponential time, but approximates are easy to find
What is an undecidable problem?
An algorithm that may work for instances but there is no algorithm working for all inputs
What is a decidable problem?
One algorithm can answer yes/no for all inputs
What is efficiency?
Execution time and memory usage
What is a linear search?
Constant. Looks at each input in list in order
What is a binary search?
It is logarithmic and only works on sorted lists.
How is efficiency determined?
By reasoning formally or mathematically
Big Idea 5: Programming
...
What is algorithm development?
Using the iterative process to create correct components
What does documentation result in?
Better maintenance
What are the steps in algorithm development?
DITDM (design, implement, test, debug, and maintain)
What does collaboration help with?
It decreases task size and complexity per programmer
How are algorithms implemented?
Sequential programs instructions
What do programs use to take inputs and report outputs?
CPU
What are procedures?
Reusable, named group of programming instructions
What does procedures help in?
Reducing complexity or writing, reading, and maintaining programs.
What is parameterization?
Generalize specific code solutions by avoiding duplicated code. This allows for unique parameters
What is data abstraction?
Separates behavior from implementation
What is Application Programming Interface (API)?
A library or documentation of what methods can do in certain language
What are the fundamentals for programming?
Numerical concepts, logical concepts, booleans
What are computational methods?
Using list collection and other abstract data types to perform operation
Big Idea 6: The Internet
...
What is end-to-end architecture?
The "smart" computers are the ones we use on the end of the network
What are protocols used for?
Communication
What does DNA do?
Translate domain names to IP addresses
What are new devices given?
New IP addresses
What does IPv6 enable?
More and more devices to be added
What are two charcteristics of routing?
Heirarchical and redundant
What is scalability?
Continued usage w/o stopping service
What is TCP/IP?
Deals with standards for transmissions of packets
What is HTTP/SSL/TLS?
Deals with sharing information online
What is bandwith?
...