Basic Terms Flashcards
IDE
An Integrated Development Environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE typically includes a source code editor, build automation tools, and a debugger. Some IDEs also include tools to simplify the development of UI components, manage project files, and integrate version control. Examples include Visual Studio, Eclipse, and JetBrains IntelliJ IDEA.
Node.js
A runtime environment that allows you to run JavaScript on the server side. It provides the foundation upon which many backend frameworks are built: Express, Koa, Hapi. Node.js can act as the intermediary layer between your React frontend and external services.
Next.js
Next.js is built on top of Node.js. It enhances the capabilities of React by providing a server-side rendering and static site generation framework.
Runtime
The runtime or runtime environment is the period when a program is running, in contrast to other program lifecycle phases such as compile time, link time, and load time. The runtime environment provides built-in services such as memory management, API calls, and managing the execution lifecycle of the application. For languages like JavaScript, the runtime includes the JavaScript engine (like V8 in Chrome), which interprets and executes the code.
Version Control
Systems that record changes to a file or set of files over time so that specific versions can be recalled later.
Unit Testing
The process of testing individual components of the software to ensure they work as expected.
Deployment
The process of putting a software application into operation on a target system or server.
Virtual DOM
A programming concept where an ideal, or “virtual”, representation of a UI is kept in memory and synced with the “real” DOM by a library such as ReactDOM.
SPA
A web application or website that interacts with the user by dynamically rewriting the current page rather than loading entire new pages from the server.
CSR (Client-Side Rendering)
The rendering of a webpage on the client’s browser instead of the server. This is common in frameworks like React.
SSR (Server-Side Rendering)
Rendering pages on the server instead of the client, which can result in faster page loads for users.
API (Application Programming Interface)
A set of rules that allow different software entities to communicate with each other.
Webpack
A module bundler for JavaScript that bundles JavaScript files for usage in a browser.
Babel
A JavaScript compiler that converts ECMAScript 2015+ code into a backwards-compatible version of JavaScript.
ESLint
A static code analysis tool for identifying problematic patterns found in JavaScript code.