πŸ“šGlossary

A list of terms that may come up when tinkering on the frontend

CDN

A Content Delivery Network (CDN) is a system of distributed servers that are located in various locations around the world. These servers work together to deliver web content such as images, videos, and audio files to users based on their location. The goal of a CDN is to improve the speed and performance of website delivery by reducing the distance that data has to travel to reach the user. This is achieved by caching content on servers that are closer to the user and delivering it from those servers, rather than from the origin server. This helps to reduce network latency and improve website performance.

Edge Cache

An edge cache is a type of caching system that stores frequently-requested data closer to the edge of a network, rather than in a central location. This can help to reduce latency and improve the performance of applications that rely on that data. Edge caches are often used in content delivery networks (CDNs) and other distributed systems to speed up the delivery of web content and other digital assets. They can also be used in mobile networks to improve the performance of mobile applications and services.

List Virtualization (aka Windowing)

List virtualization refers to the process of displaying a large amount of data in a smaller, more manageable format by using a virtual list. This is often used in software applications where there is a large amount of data that needs to be displayed, but it would be impractical to display all of it at once. Instead, the application only displays a small portion of the data at a time, and allows the user to scroll through the list to view the rest of the data.

Universal Rendering (aka SSR)

Universal rendering, also known as server-side rendering (SSR), is a technique used in web development where the initial render of a webpage is performed on the server, rather than the client (browser). This allows for faster loading times, improved SEO, and better accessibility for users with slow internet connections or old browsers. With SSR, the initial HTML and JavaScript is sent to the browser, which then renders the page and makes any necessary requests for additional data or resources. This approach ensures that the initial content is immediately visible to users, without the need to wait for JavaScript to load and execute.

Object Relational Mapping System (ORM)

An Object-Relational Mapping (ORM) system is a programming technique that maps data from a relational database to an object-oriented programming language. The purpose of an ORM is to allow developers to work with data in a more natural way, without having to worry about the details of how the data is stored in the database.

In an ORM system, each table in the database is represented by a class, and each row in the table is represented by an object of that class. The columns in the table are mapped to properties of the object, and the relationships between tables are represented by properties that reference other objects.

The ORM system provides a set of APIs that allow developers to interact with the database using objects rather than SQL statements. For example, to retrieve a set of records from the database, the developer can write code that looks like this:

users = User.objects.filter(last_name='Smith')

In this example, User is a class that represents a table in the database, and objects is an attribute of that class that provides a set of methods for querying the database. The filter method is used to retrieve a set of records that match the specified criteria (in this case, all users with a last name of "Smith").

ORM systems provide a number of benefits, including increased productivity, improved maintainability, and better code organization. By abstracting away the details of the database, developers can focus on writing code that expresses their business logic, rather than worrying about how to store and retrieve data. Additionally, ORM systems provide a layer of abstraction that makes it easier to switch between different databases, since the application code does not depend on the details of the underlying storage system.

Last updated