Master key terminology in Computer Science and Information Technology (Terms 51 - 100)

Part 2

The Ultimate CS & IT Keyword Dictionary

51. Abstraction

Definition: The practice of hiding complex implementation details and showing only the essential features of an object or system to reduce complexity.

Example / Use Case: Driving a car requires pressing a pedal, without needing to know internal engine combustion mechanics.

52. Agile Methodology

Definition: An iterative software development approach focusing on continuous delivery, collaboration, and adaptability to evolving customer needs.

Example / Use Case: Software teams organizing 2-week "sprints" to deliver incremental product updates.

53. Asynchronous Execution

Definition: A computing model where tasks run independently of the main program flow, preventing application freezing while waiting for long background operations.

Example / Use Case: Loading website comments in the background while the user continues reading the main article.

54. Authentication

Definition: The security process of verifying the identity of a user, device, or system trying to access data or infrastructure.

Example / Use Case: Logging into your bank account using a username, password, and a 2FA OTP code.

55. Authorization

Definition: The process of determining what permissions an authenticated identity has and what resources they are allowed to access.

Example / Use Case: An employee can log in, but only administrators can edit database records.

56. Backend

Definition: The server-side component of an application responsible for data processing, database communication, and business logic execution behind the scenes.

Example / Use Case: Python, Node.js, or Java scripts processing e-commerce payments and updating inventory.

57. Big Data

Definition: Extremely large datasets characterized by the "3 Vs": massive Volume, high Velocity, and diverse Variety that require special tools to analyze.

Example / Use Case: Real-time streaming data from millions of IoT sensors evaluated by Apache Hadoop or Spark.

58. CI/CD (Continuous Integration / Continuous Deployment)

Definition: An automated pipeline methodology where software code changes are continuously built, tested, and automatically deployed to production.

Example / Use Case: GitHub Actions running tests and updating a live server every time code is merged into main.

59. Containerization

Definition: Bundling an application along with all its necessary libraries and dependencies into a lightweight package that runs consistently on any OS.

Example / Use Case: Wrapping a web app into a Docker container so it runs identically on developer laptops and production servers.

60. Cryptography

Definition: The science and study of techniques for securing communication and sensitive data from third-party interception using mathematical algorithms.

Example / Use Case: RSA and AES algorithms used to encrypt online credit card transactions.

61. CSS (Cascading Style Sheets)

Definition: A style sheet language used to format, lay out, and visually design web pages written in markup languages like HTML.

Example / Use Case: Setting website font styles, grid layouts, animations, and responsive colors.

62. Data Structure

Definition: A specialized format for organizing, processing, storing, and retrieving data efficiently within computer memory.

Example / Use Case: Arrays, Linked Lists, Trees, Stacks, and Hash Tables.

63. Deadlock

Definition: A state where two or more computing processes are unable to proceed because each is waiting for the other to release a shared resource.

Example / Use Case: Process A locks Resource 1 and requests Resource 2, while Process B locks Resource 2 and requests Resource 1.

64. DevOps

Definition: A set of cultural practices, principles, and tools combining Software Development (Dev) and IT Operations (Ops) to shorten the software lifecycle.

Example / Use Case: Engineers using Terraform and Kubernetes to deploy cloud infrastructure rapidly.

65. DHCP (Dynamic Host Configuration Protocol)

Definition: A network management protocol used to automatically assign IP addresses and network configuration details to devices joining a network.

Example / Use Case: Connecting your smartphone to Wi-Fi and automatically receiving a unique local IP address.

66. DNS (Domain Name System)

Definition: The internet's phonebook that translates human-friendly domain names into computer-readable IP addresses.

Example / Use Case: Typing `google.com` into your browser, which DNS translates to `142.250.190.46`.

67. Docker

Definition: An open-source platform designed to create, deploy, run, and manage applications using standardized OS-level virtualization containers.

Example / Use Case: Running complex database applications in lightweight containers without install overhead.

68. DDoS (Distributed Denial of Service)

Definition: A cyberattack aimed at making a server or network service unavailable by overwhelming it with fake traffic from multiple compromised systems.

Example / Use Case: Botnets bombarding a gaming server with millions of HTTP requests to crash it.

69. Encapsulation

Definition: An Object-Oriented Programming (OOP) pillar that bundles data and methods operating on that data inside a single unit while restricting direct outside access.

Example / Use Case: Using private variables inside a class accessible only through getter and setter functions.

70. Entity Relationship Diagram (ERD)

Definition: A graphical representation of database tables, entities, attributes, and relationships showing how a database is structured.

Example / Use Case: Designing relational schematics connecting a "Users" table with an "Orders" table.

71. Event-Driven Architecture

Definition: A software architecture design pattern where system components communicate by producing, detecting, and consuming real-time events.

Example / Use Case: A user clicking a "Buy Now" button triggers stock updates, emails, and payment verification events.

72. Exception Handling

Definition: Programming mechanisms designed to handle runtime errors gracefully, preventing sudden application crashes.

Example / Use Case: Using `try-catch` blocks to catch division-by-zero errors or missing files.

73. Hash Function

Definition: An algorithm that maps data of arbitrary size to a fixed-size value (hash digest) irreversibly.

Example / Use Case: Converting plain text passwords into SHA-256 strings before storing them in a database.

74. Inheritance

Definition: An OOP principle where a child class inherits properties and behaviors (methods) from a parent class.

Example / Use Case: A `Car` class inheriting basic properties from a broader `Vehicle` base class.

75. JSON (JavaScript Object Notation)

Definition: A lightweight, human-readable text-based data interchange format widely used to send data between servers and web apps.

Example / Use Case: `{"name": "Alice", "role": "Developer"}` formatted responses from REST APIs.

76. JWT (JSON Web Token)

Definition: A compact, URL-safe token format used for securely transmitting information and claims between parties digitally signed.

Example / Use Case: Maintaining stateless session authentication in single-page web applications.

77. Kubernetes

Definition: An open-source system for automating deployment, scaling, management, and orchestration of containerized applications.

Example / Use Case: Managing deployment and automatic scaling across hundreds of Docker containers.

78. Load Balancing

Definition: The practice of distributing incoming network traffic across multiple servers to optimize resource use and maximize reliability.

Example / Use Case: NGINX routing web user visits across 5 identical backend servers to avoid overloading one.

79. Microservices Architecture

Definition: An architectural style that structures an application as a collection of small, independently deployable, specialized services.

Example / Use Case: Netflix using separate backend services for search, user auth, video recommendations, and billing.

80. Multithreading

Definition: A CPU feature that allows a single process to execute multiple threads concurrently, improving CPU resource usage.

Example / Use Case: A web browser downloading image files on one thread while accepting user scroll input on another.

81. MVC (Model-View-Controller)

Definition: A software design pattern dividing an application into three interconnected parts: Model (data), View (UI), and Controller (logic).

Example / Use Case: Web frameworks like Ruby on Rails, Django, or ASP.NET.

82. NoSQL Database

Definition: Non-tabular databases designed for flexible schema storage, handling unstructured or high-velocity data smoothly.

Example / Use Case: Document databases like MongoDB or key-value stores like Redis.

83. Normalization

Definition: The process of organizing database tables and columns to minimize redundancy and improve data integrity.

Example / Use Case: Splitting customer and order information into separate relational tables joined by IDs.

84. Object-Relational Mapping (ORM)

Definition: A programming technique that lets developers query and manipulate databases using object-oriented code instead of writing raw SQL.

Example / Use Case: Hibernate in Java, Prisma in JavaScript, or SQLAlchemy in Python.

85. Polymorphism

Definition: An OOP concept that allows objects of different types to be accessed through a uniform interface with unique behaviors.

Example / Use Case: Calling `draw()` on both a `Circle` and `Square` object, with each producing different shapes.

86. Process vs Thread

Definition: A process is an independent executing program with allocated memory, whereas a thread is a lightweight execution segment inside a process sharing its memory.

Example / Use Case: Running Chrome browser (process) with 10 active tabs running concurrently (threads).

87. Recursion

Definition: A programming technique where a function calls itself repeatedly until a terminating base case condition is met.

Example / Use Case: Calculating factorials or traversing directory trees recursively.

88. Refactoring

Definition: Restructuring existing application source code without altering its external functionality to improve readability and efficiency.

Example / Use Case: Simplifying a messy 100-line nested loop into small, reusable utility functions.

89. RESTful API (Representational State Transfer)

Definition: An architectural style for web APIs using standard HTTP requests (GET, POST, PUT, DELETE) to fetch or manipulate data resources.

Example / Use Case: Making an HTTP `GET /api/users` request to retrieve a user list in JSON format.

90. SDK (Software Development Kit)

Definition: A collection of development tools, libraries, documentation, and code samples built to help developers create apps for specific platforms.

Example / Use Case: The Android SDK or Flutter SDK used to build mobile phone applications.

91. Serverless Computing

Definition: A cloud computing execution model where cloud providers automatically manage server provision and infrastructure allocation dynamically.

Example / Use Case: AWS Lambda or Google Cloud Functions running code triggered by events without renting permanent virtual servers.

92. Socket (WebSockets)

Definition: A communication protocol providing full-duplex, persistent, real-time interactive channels over a single TCP connection.

Example / Use Case: Live messaging in chat apps or live stock ticker updates without browser refreshes.

93. SSH (Secure Shell)

Definition: A cryptographic network protocol for operating network services and accessing command-line terminals securely over an unsecured network.

Example / Use Case: `ssh user@remote-server.com` to manage cloud servers via terminal.

94. SSL / TLS (Secure Sockets Layer)

Definition: Cryptographic security protocols designed to provide authenticated communications and encryption over a computer network.

Example / Use Case: Enabling the padlock symbol and `https://` secure connection in web browsers.

95. Subnetting

Definition: The practice of logically dividing a physical IP network into smaller, distinct network sub-divisions (subnets).

Example / Use Case: Separating an office network into accounting, engineering, and guest Wi-Fi subnets for security.

96. Time Complexity (Big O Notation)

Definition: A mathematical metric evaluating how runtime execution duration grows as input dataset size ($N$) increases.

Example / Use Case: Comparing $O(1)$ constant time lookup versus $O(N^2)$ quadratic nested loops.

97. Unit Testing

Definition: A software testing method where individual units or methods of source code are tested independently to confirm correctness.

Example / Use Case: Writing a Jest test to verify that a calculator function correctly adds two numbers.

98. Virtualization

Definition: Technology that enables creating simulated virtual environments or virtual hardware instances on a single physical host computer.

Example / Use Case: Running a Windows virtual machine inside VirtualBox on a macOS computer.

99. Virtual Memory

Definition: A memory management capability of an OS that uses storage drive space to compensate for physical RAM shortages.

Example / Use Case: Using swap files on an SSD when RAM capacity reaches 100%.

100. Zero Trust Architecture

Definition: An IT security framework operating under the core principle "never trust, always verify," requiring strict identity verification for every access attempt.

Example / Use Case: Requiring continuous device health checks, multi-factor auth, and micro-segmentation across corporate networks.

Congratulations! You reached 100 terms!

You have now mastered 100 core Computer Science & IT terms. Share this comprehensive resource with your classmates or tech community!