Software Development Glossary

Common terms and concepts in software development

100 terms available

A

B

C

Caching

Intermediate

A technique for storing frequently accessed data in a fast-access storage layer to reduce latency and database load.

Backend

CDN

Beginner

Content Delivery Network - a geographically distributed network of servers that delivers web content with low latency to users.

DevOps

CI/CD

Intermediate

Continuous Integration and Continuous Deployment - practices that automate code integration, testing, and deployment pipelines.

DevOps

Clean Code

Beginner

Code that is easy to read, understand, and maintain, following consistent naming conventions and single responsibility.

General

Clerk

Beginner

A complete user management platform providing authentication UI components, user profiles, and multi-tenant support.

Backend

Client-Side Rendering (CSR)

Beginner

A rendering approach where JavaScript builds the page content in the browser, typical of single-page applications.

Frontend

Cloudflare Workers

Intermediate

A serverless execution environment that runs JavaScript at the edge, close to users, with millisecond cold starts.

DevOps

Code Splitting

Intermediate

A technique of breaking application bundles into smaller chunks that are loaded on demand, reducing initial bundle size.

Frontend

Connection Pooling

Intermediate

A technique of maintaining a cache of reusable database connections to reduce the overhead of creating new connections.

Database

Context API

Intermediate

A built-in React feature for passing data through the component tree without manually prop-drilling at every level.

Frontend

CORS

Intermediate

Cross-Origin Resource Sharing - a mechanism that allows web pages to make requests to a different domain than the one serving the page.

Backend

CSS

Beginner

Cascading Style Sheets - a stylesheet language used for describing the presentation and layout of HTML documents.

Frontend

CSS Modules

Beginner

A CSS file where class names are scoped locally by default, preventing style conflicts in component-based architectures.

Frontend

CSS-in-JS

Intermediate

A styling approach where CSS is composed using JavaScript, enabling dynamic styles and component-scoped styling.

Frontend

Cypress

Intermediate

An end-to-end testing framework that runs tests directly in the browser with time-travel debugging and automatic waiting.

Frontend

D

Data Structures

Intermediate

Specialized formats for organizing, processing, and storing data efficiently, including arrays, trees, and hash tables.

General

Database Indexing

Intermediate

A data structure technique that improves query performance by creating quick lookup paths to rows in database tables.

Database

Database Migration

Intermediate

A version-controlled approach to evolving database schemas over time with incremental, reversible changes.

Database

Debouncing

Beginner

A programming technique that limits the rate of function execution by waiting until a pause in rapid events occurs.

General

Deno

Intermediate

A secure JavaScript and TypeScript runtime with built-in tooling, web-standard APIs, and first-class TypeScript support.

Backend

Dependency Injection

Intermediate

A design pattern where objects receive their dependencies from external sources rather than creating them internally.

General

Design Patterns

Intermediate

Reusable solutions to common software design problems, categorized as creational, structural, and behavioral patterns.

General

DNS

Beginner

Domain Name System - the internet's phonebook that translates human-readable domain names into machine-readable IP addresses.

DevOps

Docker

Intermediate

A platform for developing, shipping, and running applications in lightweight, portable containers with consistent environments.

DevOps

DOM

Beginner

Document Object Model - a programming interface that represents HTML/XML documents as a tree structure of nodes and objects.

Frontend

Drizzle ORM

Intermediate

A lightweight TypeScript ORM with SQL-like syntax, zero dependencies, and serverless-ready design.

Backend

DRY Principle

Beginner

Don't Repeat Yourself - a software principle aimed at reducing repetition by abstracting common patterns into reusable units.

General

E

F

G

H

I

J

K

L

M

N

O

P

R