1/49
Vocabulary flashcards covering key computer science and Python concepts from the Programming I lecture notes, including character encoding, programming paradigms, data structures, object-oriented concepts, networking, concurrency, and GUI development.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Character Encoding
The unique assignment of characters to a specific numerical value.
Character Set
The complete inventory of characters that are to be encoded.
ASCII
American Standard Code for Information Interchange; an early character encoding system based on 7-bit units capable of encoding 27=128 distinct bit patterns.
Unicode
An international standard character set designed to encode up to 1114112 unique characters across all known scripts and writing systems.
UTF-8
The 8-Bit Universal Coded Character Set Transformation Format; a variable-length Unicode encoding using up to 4 bytes per character whose first 128 characters match ASCII.
Compiler
A program that translates source code written in a programming language into executable binary machine code readable by a computer prior to runtime.
Interpreter
A program that processes and interprets source code at runtime line by line, reading, analyzing, and directly executing each instruction.
Just-In-Time Compiler
A hybrid execution engine that dynamically compiles source code or bytecode into binary machine code at runtime while the program is executing.
Functional Programming
A programming paradigm that structures programs primarily as a sequence of nested functions and focuses on evaluating expressions rather than executing sequential imperative statements.
Object-Oriented Programming
A programming paradigm aimed at reducing complexity and promoting code reusability by combining data structures and associated operations into self-contained objects accessed through defined interfaces.
Reactive Programming
An event-driven programming paradigm oriented around asynchronous data streams, where data changes automatically propagate through an execution graph.
Algorithm
An unambiguous set of finite, formal steps for solving a problem that transforms a given input into a specific output.
DRY Principle
An acronym for 'Don't Repeat Yourself', a software development principle focused on eliminating code duplication by replacing repeated code with abstractions or functions.
Escape Character
A character (such as the backslash \) used in string literals to invoke an alternative interpretation of subsequent characters, such as \n for newline or \t for tab.
Slicing
An operation on sequential data types using bracket notation [start:end:step] to extract a specific contiguous or stepped subset of elements.
Concatenation
The process of joining two or more sequential objects, such as text strings, end-to-end to form a single combined object.
Formatted String Literal
A Python string literal prefixed with f or F that allows embedded Python expressions inside curly braces {} to be evaluated at runtime.
Regular Expression
A sequence of characters forming a search pattern used in Python via the re module to search, match, parse, or substitute text strings.
Variable
A named location in computer memory used to store data that can be accessed and modified throughout program execution.
Scope
The region or context within a program where a declared variable, function, or identifier is valid and accessible.
Variable Shadowing
A situation where a variable declared within an inner scope shares the name of a variable in an outer scope, temporarily masking access to the outer variable.
Literal
A fixed value written directly into source code, such as integer, floating-point, boolean, or string values.
Tuple
An ordered, immutable sequential collection of elements in Python enclosed in parentheses ().
Set
An unordered, unindexed collection of unique elements in Python enclosed in curly braces {}.
Dictionary
An ordered, mutable Python data structure that stores data as key-value pairs enclosed in curly braces {}.
Conditional Statement
A control structure (such as if, elif, and else) that executes specific blocks of code based on whether boolean conditions evaluate to True or False.
Recursion
A programming technique in which a function calls itself directly or indirectly until it reaches a defined base condition.
Class
A blueprint or template that defines the attributes and methods that all objects created from it will possess.
Object
A concrete instance created from a class that encapsulates specific state data and behavior.
Constructor
The __init__() method in a Python class that is automatically executed upon instantiating a new object to initialize its attributes.
Inheritance
An object-oriented mechanism allowing a subclass to derive attributes and methods from an existing superclass, facilitating code reuse.
Enum
A data type provided by Python's enum module whose domain consists of a fixed set of named symbolic constants.
Exception Handling
A mechanism using try, except, else, and finally blocks to intercept, process, and recover from runtime errors without crashing the program.
Assertion
A debugging statement using the assert keyword that tests a boolean condition and raises an AssertionError if the condition evaluates to False.
IP Address
A unique numerical identifier assigned to a network interface (formatted in IPv4 as four dot-separated byte values from 0 to 255) for routing and communication.
Port
A 16-bit numerical identifier ranging from 0 to 65535 used in network protocols to direct network traffic to a specific application or process.
Socket
An operating system endpoint interface used by applications to send and receive data across a network.
Client-Server System
A network architecture where passive server processes wait for and service requests initiated by active client processes.
User Datagram Protocol
A connectionless, unreliable transport layer protocol that transmits independent datagrams without establishing a session or guaranteeing delivery.
Transmission Control Protocol
A connection-oriented, reliable transport layer protocol that establishes a connection and guarantees ordered, error-checked delivery of data streams.
Process
An executing instance of a program with its own isolated memory space managed independently by the operating system.
Thread
A lightweight execution path within a process that shares memory and global variables with other threads belonging to the same process.
Critical Section
A sequence of instructions that accesses shared resources (such as global variables) and must not be executed by more than one thread simultaneously.
Lock
A synchronization primitive providing acquire() and release() methods to enforce mutually exclusive access to critical sections among concurrent threads.
Race Condition
A flaw in a concurrent system where output unpredictably depends on the relative timing or execution order of competing threads.
Deadlock
A state in concurrent programming where two or more threads are permanently blocked, each waiting for a lock held by the other.
GUI
Graphical User Interface; a visual display interface enabling user interaction via visual controls such as windows, buttons, and text fields.
Widget
A visual control element in a GUI (such as Label, Button, Entry, or Frame in Tkinter) used for displaying information or gathering user input.
Event Handler
A callback function bound to a GUI event (such as a key press or mouse click) that automatically executes when the event occurs.
Geometry Manager
A layout mechanism in Tkinter (such as pack(), grid(), or place()) that controls the positioning and sizing of widgets inside a container.