Integrated development environment
An integrated development environment (IDE) combines tools for writing, building, testing, and debugging software in a unified workspace.
Source-code editor: A text editor designed for creating and modifying program source code. It is where developers write code, often with IDE features such as syntax highlighting and completion.
Language server protocol: A protocol that lets code editors communicate with language-specific analysis servers. It enables IDE features such as completion and diagnostics through a shared client-server interface.
Visual Studio: Microsoft's integrated development environment for building software, especially for Windows and .NET. It exemplifies a broad IDE with project management, debugging, and build tools for a major platform.
Text editor: A program for creating and editing text files. A plain text editor lacks the coordinated development tools that distinguish an IDE.
Compiler: A program that translates source code into another representation, often machine code. An IDE can invoke a compiler to turn edited source files into executable code.
Code completion: A feature that suggests possible continuations while a user writes code. IDE completion draws on syntax, project symbols, and language analysis to offer context-sensitive suggestions.
IntelliJ IDEA: JetBrains' integrated development environment for Java and other programming languages. Its language-aware navigation and refactoring show how IDEs can specialize around programming ecosystems.
Visual Studio Code: A source-code editor by Microsoft that supports extensions, debugging, and development workflows. Its editor-first design blurs the boundary between a lightweight code editor and an IDE.
Build automation: The use of tools to automate compiling, linking, packaging, and other steps that produce software. IDE build commands coordinate the steps that transform a project into runnable artifacts.
Static program analysis: The analysis of software without executing it, often to find errors or characterize behavior. IDE diagnostics can surface analysis results as developers edit, before a program runs.