Glossary
APIs (Application Program Interfaces)
Sets of rules and specifications that define how software components should interact, acting as an instruction manual for using libraries and services.
Example:
A mobile weather application uses a weather service's API to request and display current temperature and forecast data.
Algorithm Design
The systematic process of breaking down a problem into smaller, manageable steps and planning a systematic procedure to solve it, often using pseudocode or flowcharts.
Example:
Before writing code for a search engine, you would engage in algorithm design to determine the most efficient way to find relevant results from a large dataset.
Basic Data Types
Fundamental categories for classifying data in programming, such as integers (whole numbers), floats (decimal numbers), strings (text), and booleans (true/false values).
Example:
In a game, a player's score might be an integer, their health a float, their username a string, and whether they are alive a boolean.
Collaboration
A benefit of using libraries and APIs, enabling multiple developers to share and build upon each other's work, fostering collective progress and innovation.
Example:
Open-source libraries promote collaboration by allowing developers worldwide to contribute to and improve shared codebases.
Computing Innovations
New or improved computing artifacts that have significant positive and/or negative impacts on society, culture, or the economy.
Example:
The development of smartphones is a computing innovation that has profoundly changed global communication and access to information.
Control Structures
Programming constructs that determine the order in which instructions are executed, guiding the flow of a program.
Example:
An if/else statement is a control structure that allows a program to make decisions and execute different blocks of code based on a condition.
Cybersecurity
The practice of protecting computer systems, networks, and data from digital attacks, damage, or unauthorized access.
Example:
Using strong, unique passwords and two-factor authentication are basic practices in cybersecurity to protect your online accounts from hackers.
Data Abstraction
The process of hiding complex implementation details and showing only the essential information or functionality to the user, simplifying interaction.
Example:
When you use a remote control to change channels on a TV, you are benefiting from data abstraction because you don't need to know the complex electronic signals being sent.
Data Representation
How data, such as numbers, text, or images, is encoded and stored within a computer system, typically in binary format.
Example:
A specific color, like red, can be stored using data representation as a hexadecimal code like #FF0000 in a computer's memory.
Data Structures
Ways of organizing and storing data in a computer so that it can be accessed and modified efficiently.
Example:
A list is a common data structure used to store an ordered collection of items, such as a list of student names or test scores.
Debugging
The systematic process of finding and fixing errors (bugs) in a computer program, often involving tools to trace program execution.
Example:
Using a debugger to step through your code line by line to locate why your loop isn't terminating correctly is an example of debugging.
Digital Divide
The unequal access to computing technology and the internet, often based on socioeconomic status, geographic location, or other demographic factors.
Example:
The lack of reliable internet access in rural areas compared to urban centers illustrates the digital divide in many countries.
Efficiency
A key benefit of code reuse, referring to the ability to accomplish tasks quickly and with minimal waste of resources by leveraging existing, optimized code.
Example:
Using a pre-built sorting algorithm from a library significantly increases the efficiency of your program compared to writing one from scratch.
Importing Modules
The process of bringing pre-written code, known as modules, into your program to utilize their functions and procedures.
Example:
To use a function that calculates square roots, you would import the math module at the beginning of your Python script.
Iteration (Control Structure)
A control structure that allows a block of code to be repeated multiple times, often using `for` or `while` loops.
Example:
A for loop is an iteration structure that can be used to process each item in a list, such as calculating the sum of all numbers in a given list.
Modules
Files containing pre-written code, procedures, or functions that can be reused in other programs, acting as toolboxes of useful functionalities.
Example:
The random module in Python provides functions like randint to generate random numbers for games or simulations.
Program Testing
The process of executing a program with various inputs to identify and confirm that it functions as intended and to discover any errors or unexpected behaviors.
Example:
Running your calculator program with inputs like zero, negative numbers, and very large numbers is part of thorough program testing to ensure its robustness.
Reliability
A benefit of using libraries and APIs, indicating that the pre-written code is often well-tested and less prone to errors or bugs, leading to more stable programs.
Example:
Relying on a widely used encryption library ensures the reliability of your data security, as it has been rigorously tested by many developers.
Selection (Control Structure)
A control structure that allows a program to choose which block of code to execute based on whether a certain condition is true or false, typically using `if`, `else`, or `elif` statements.
Example:
Using a selection statement, a program can check if a user's age is greater than 18 and display a different message if they are old enough to vote.
Sequence (Control Structure)
A control structure where instructions are executed one after another in the exact order they appear in the code.
Example:
A program that first reads user input, then performs a calculation, and finally prints the result follows a sequence of operations.
Software Libraries
Collections of pre-built procedures and functions designed to perform specific tasks, saving developers significant time and effort.
Example:
The Pillow software library is commonly used in Python for image manipulation tasks, such as resizing or applying filters to photos.