- Turing Machine: The theoretical basis for all computers. Think of it as a hypothetical device that can perform any computation.
- CPU (Central Processing Unit): The brain of a computer, responsible for executing instructions. It processes data and controls other components. Connecting Point: The CPU relies on fundamental electronic components.
- Transistors: Tiny electronic switches that form the basis of all digital electronics. They can be in an "on" or "off" state, representing binary values. Example: Imagine transistors as light switches β either the light is on (1) or off (0).
- Bit: The smallest unit of digital information, representing a binary value (0 or 1). Connecting Point: Eight bits make up a byte.
- Byte: A group of 8 bits. It's the basic unit of storage in a computer. Example: A byte can represent a single character, like 'A'.
- ASCII Character Encoding: A standard that assigns numerical values to characters. Computers use these values to represent text. Connecting Point: ASCII values are often represented in binary.
- Binary: The base-2 number system, using only 0s and 1s. Computers use binary for data representation. Example: The binary representation of 5 is 101.
- Hexadecimal: A base-16 number system often used in programming for its compact representation. Connecting Point: Four bits make up a nibble, and two nibbles make up a byte.
- Nibble: Half a byte, comprising 4 bits. Example: In binary, 1101 can be divided into a nibble as 1101.
- Machine Code: Low-level code directly executable by a computer's CPU. It's in binary and specific to the processor architecture. Connecting Point: Programming languages are used to write machine code.
- RAM (Random Access Memory): Temporary storage that the CPU uses actively. It's faster than long-term storage but volatile. Example: Think of RAM as your computer's short-term memory.
- Memory Address: A unique identifier for each location in memory, allowing the CPU to access and store data. Connecting Point: I/O operations involve moving data between memory and external devices.
- I/O (Input/Output): The process of transferring data between a computer and external devices. Example: Printing a document is an output operation.
- Kernel: The core part of an operating system, managing hardware resources and providing essential services. Connecting Point: The shell interacts with the kernel to execute commands.
- Shell: A command-line interface allowing users to interact with the operating system by typing commands. Example: "ls" lists files in a directory.
- Command Line Interface (CLI): An interface where users interact with the computer by typing commands. Connecting Point: Secure Shell Protocol enables secure communication on the CLI.
- Secure Shell Protocol (SSH): A cryptographic network protocol for secure data communication over an unsecured network. Example: SSH allows you to securely connect to a remote server.
- Mainframe: A powerful, large-scale computer often used by organizations for critical applications. Connecting Point: Programming languages enable communication with mainframes.
- Programming Language: A set of instructions for a computer to perform tasks. Example: Python is a popular programming language.
- Abstraction Principle: Hiding complex details while exposing essential functionalities. Connecting Point: Interpreted and compiled languages illustrate different abstraction levels.
- Interpreted: Code executed line by line, translating and executing simultaneously. Example: Python is an interpreted language.
- Compiled: Code translated entirely before execution, resulting in an executable file. Connecting Point: Executable files contain machine code.
- Executable: A file containing machine code that a computer can run. Example: Running an ".exe" file on Windows.
- Data Types: Categories that define the kind of data a variable can hold. Connecting Point: Variables store data.
- Variable: A named storage location for data in a program. Example: "x = 5" assigns the value 5 to the variable x.
- Dynamically Typed: Data types are assigned during runtime. Connecting Point: Statically typed languages define types before runtime.
- Statically Typed: Data types are defined before runtime. Example: In Java, you declare variable types explicitly.
- Pointer: A variable that stores the memory address of another variable. Connecting Point: Garbage collection manages memory by reclaiming unused space.
- Garbage Collection: Automatically reclaiming memory occupied by objects no longer in use. Example: Java has an automatic garbage collector.
- Int (Integer): A data type representing whole numbers. Connecting Point: Data types like floating point represent decimal numbers.
- Signed: Integers that can be positive or negative. Example: -3 is a signed integer.
- Floating Point: A data type representing decimal numbers. Connecting Point: Double provides more precision than float.
- Double: A data type with double precision, providing more accuracy than float. Example: 3.14 is a double.
- Char (Character): A data type representing a single character. Connecting Point: Strings are sequences of characters.
- String: A sequence of characters. Example: "Hello, World!" is a string.
- Big Endian: Storing the most significant byte first in memory. Connecting Point: Little Endian stores the least significant byte first.
- Little Endian: Storing the least significant byte first in memory. Example: Consider the hexadecimal value 0x1234. Big Endian stores it as 12 34, while Little Endian stores it as 34 12.
- Data Structures: Organized formats for storing and manipulating data. Connecting Point: Arrays and linked lists are fundamental data structures.
- Array: A collection of elements identified by index or key. Example: arr = [1, 2, 3] is an array.
- Linked List: A data structure consisting of nodes linked together. Connecting Point: Stacks and queues are specialized data structures.
- Stack: A Last-In-First-Out (LIFO) data structure. Example: Think of a stack of plates β you take the top one.
- Queue: A First-In-First-Out (FIFO) data structure. Connecting Point: Hashing involves mapping data to a fixed-size array.
- Hash (Triangle is horse): A function that maps data of arbitrary size to a fixed-size value. Example: Hashing a password for secure storage.
- Tree: A hierarchical data structure with a root and branches. Connecting Point: Graphs extend the concept of trees.
- Graph: A collection of nodes connected by edges. Example: Social networks can be represented as graphs.
- Edge: A connection between nodes in a graph. Connecting Point: Algorithms operate on data using various operations.
- Algorithm: A step-by-step procedure for solving a problem. Example: Sorting a list using the bubble sort algorithm.
- Function: A reusable block of code that performs a specific task. Connecting Point: Functions often involve returning values.
- Return: The action of providing a value from a function. Example: "return x" in a function returns the value of x.
- Arguments: Values provided to a function for it to operate on. Connecting Point: Operators manipulate data in expressions.
- Operators: Symbols representing computations. Example: The "+" operator adds two numbers.
- Boolean: A data type with two values, true or false. Connecting Point: Expressions evaluate to either true or false.
- Expression: A combination of values and operators that can be evaluated. Example: "2 + 3" is an expression evaluating to 5.
- Statement: A complete line of code that performs an action. Connecting Point: Conditional logic guides program flow.
- Conditional Logic: Decision-making in code based on conditions. Example: "if a > b:" is a conditional statement.
- While Loop: A control flow statement that repeatedly executes a block of code while a condition is true. Connecting Point: Iterables are collections that can be looped through.
- Iterable: A collection of items that can be looped through. Example: A list in Python is an iterable.
- For Loop: A control flow statement for iterating over a sequence. Connecting Point: Void represents the absence of a return value.
- Void: A data type indicating the absence of a value. Example: A function with no return statement.
- Recursion: A function calling itself to solve a smaller instance of the same problem. Connecting Point: The call stack manages function calls.
- Call Stack: A data structure that stores function call information. Example: Visualize a stack of function calls.
- Stack Overflow (E): When the call stack exceeds its capacity, causing a program to crash. Connecting Point: Base condition in recursion prevents infinite loops.
- Base Condition: The stopping criterion in recursive functions. Example: "if n == 0" in a factorial function.
- Big-O-Notation: Describes the upper bound of an algorithm's time or space complexity. Connecting Point: Time and space complexity measure efficiency.
- Time Complexity: How the execution time of an algorithm grows with input size. Example: O(n) signifies linear time complexity.
- Space Complexity: How much memory an algorithm uses in relation to input size. Connecting Point: Brute force is a straightforward approach.
- Brute Force: Solving a problem by trying every possibility. Example: Searching an unsorted list linearly.
- Divide and Conquer: Breaking a problem into smaller sub-problems and solving them. Connecting Point: Dynamic programming optimizes recursive solutions.
- Dynamic Programming (Nice): A technique that stores and reuses solutions to sub-problems. Example: The Fibonacci sequence using memoization.
- Memoization: Caching and reusing previously computed results to improve performance. Connecting Point: Greedy algorithms make locally optimal choices.
- Greedy: Choosing the best option at each step without considering the overall situation. Example: The greedy algorithm for the coin change problem.
- Dijkstra's Shortest Path: An algorithm for finding the shortest path between nodes in a graph. Connecting Point: Backtracking explores all possibilities.
- Backtracking: A trial-and-error approach to problem-solving. Example: Solving Sudoku puzzles.
- Declarative: Describing what should be accomplished without specifying how. Connecting Point: Functional languages emphasize functions.
- Functional Languages: Programming languages focusing on functions as first-class citizens. Example: Haskell is a functional language.
- Imperative: Describing how a program should accomplish a task. Connecting Point: Procedural languages follow a step-by-step approach.
- Procedural Languages: Focused on procedures or routines that perform operations. Example: C is a procedural language.
- Multiparadigm Languages: Supporting multiple programming paradigms. Connecting Point: Object-oriented languages use classes.
- Object-oriented: Organizing code around objects that encapsulate data and behavior. Example: Java and Python are object-oriented languages.
- Class: A blueprint for creating objects with shared attributes and behaviors. Connecting Point: Properties and methods are part of a class.
- Property: An attribute of an object in object-oriented programming. Example: In a car class, speed can be a property.
- Method: A function associated with an object in object-oriented programming. Connecting Point: Inheritance allows one class to inherit properties and methods from another.
- Inheritance: A mechanism for creating a new class that is a modified version of an existing class. Example: A "Car" class inheriting from a "Vehicle" class.
- Design Patterns: Reusable solutions to common problems in software design. Connecting Point: Instantiating creates an instance of a class.
- Instantiate: Creating an instance of a class. Example: Creating a new object from a class.
- Heap: Memory used for dynamic memory allocation during program execution. Connecting Point: Reference points to the memory location of an object.
- Reference: A variable that holds the memory address of an object. Example: "obj = MyClass()" assigns the reference to obj.
- Threads: Independent sequences of instructions, each running in its own thread. Connecting Point: Parallelism involves multiple threads running concurrently.
- Parallelism: Simultaneously executing multiple tasks. Example: Running multiple threads to speed up a computation.
- Concurrency: The concept of multiple tasks making progress without necessarily running simultaneously. Connecting Point: Bare Metal refers to programming without an operating system.
- Bare Metal: Programming directly for hardware without an operating system. Example: Embedded systems often involve bare-metal programming.
- Virtual Machine: An emulation of a computer system, running an operating system within another. Connecting Point: IP address identifies devices on a network.
- IP Address: A numerical label assigned to each device on a computer network. Example: 192.168.1.1 is an example of an IP address.
- URL (Uniform Resource Locator): A web address specifying the location of a resource on the internet. Connecting Point: DNS resolves domain names to IP addresses.
- DNS (Domain Name System): Translates human-readable domain names to IP addresses. Example: Resolving www.example.com to an IP address.
- Transmission Control Protocol (TCP): A protocol ensuring reliable, ordered, and error-checked delivery of data. Connecting Point: Packets break data into smaller units for efficient transmission.
- Packets: Small units of data transmitted over a network. Example: Sending a large file in smaller, manageable chunks.
- Secure Sockets Layer (SSL): A protocol for secure communication over a computer network. Connecting Point: HTTP uses SSL to become HTTPS for secure communication.
- HTTP (Hypertext Transfer Protocol): The foundation of data communication on the web. It defines how messages are formatted and transmitted. Connecting Point: APIs often use HTTP to send and receive data.
- Application Programming Interface (API): An API allows different software applications to communicate and share data, enabling them to work together. Connecting Point: Understanding APIs is crucial for developing software that interacts with other programs or services.
This article is from youtube and I write the summary for user to easily understand. Please give a like to support ππ₯°
Top comments (0)