Glossary

Web Developer Dictionary

Визначення технічних термінів з PHP, DevOps, MySQL та AI — з прикладами коду та поясненнями простою мовою.

228 terms
27 letters
V
Value Object
A Value Object represents a concept through its value, not through an identifier. Two Value Objects are equal when their fields are equal. Always immutable: instead of mutation, a new object is returned.ExamplesMoney, Email, PhoneNumber, DateRange, Coordinates — concepts with no identity of their own. Money(100, 'USD') equals another Money(100, 'USD').BenefitsEncapsulates validation: impossible to create Email('not_an_email')Self-documenting code: function charge(Money $price) — clear without a commentImmutability eliminates state mutation bugsVs EntityAn Entity has an identifier and can change (a User with id=42 remains the same User even if the name changes). A Value Object has no id — identity equals value.
Vector Database
A vector database stores and searches not strings and numbers, but vectors (embeddings) — numerical representations of the semantic content of text, images, or audio. It finds content that is "similar in meaning", not just exact matches.How it worksText → through an embedding model (OpenAI, Sentence Transformers) → a vector of hundreds or thousands of numbers. Texts similar in meaning have similar vectors. Search: find the N nearest vectors to the query vector (ANN: Approximate Nearest Neighbors).Popular databasesPinecone — managed, easy to useWeaviate — open-source, hybrid searchQdrant — open-source, Rust, fastpgvector — PostgreSQL extensionUse casesSemantic search, recommendation systems, RAG, duplicate detection, classification.
View (SQL)
A view is a stored SQL query that looks like a table. Instead of writing a complex JOIN every time, create a view and query it like a regular table. Simplifies queries, but does not always improve performance.ExampleCREATE VIEW active_users AS SELECT id, name, email FROM users WHERE status = 'active' AND deleted_at IS NULL; -- use it like a table SELECT * FROM active_users WHERE email LIKE '%@gmail.com';TypesRegular View — executes the query on every access. Stores no dataMaterialized View — stores the result physically and refreshes on a schedule. PostgreSQL supports this; MySQL does notBenefits and limitationsViews simplify code and hide complexity. But nested views (a view on a view) can be hard for the optimiser to handle. In MySQL, views do not always use indexes efficiently.
Virtual Machine (VM)
A virtual machine is an emulation of a complete computer running on top of a physical host. A VM has its own OS kernel, its own disk, and its own network. A hypervisor (VMware, KVM, Hyper-V) distributes resources among multiple VMs on a single physical server.VM vs ContainerVM: hardware-level isolation, full OS (~GB), starts in minutes, maximum securityContainer: process-level isolation, shared host kernel (~MB), starts in seconds, slightly less isolationWhen VM, when containerVMs — when strong isolation is required (different OSes, compliance, untrusted code). Containers — for most microservice applications where startup speed and density matter.
VPN
VPN (Virtual Private Network) is an encrypted tunnel between a device and a VPN server that hides traffic from the ISP and changes the external IP address. For developers, it is primarily a tool for secure access to corporate resources.Use casesCorporate VPN — secure access to internal services (databases, admin panels) from any networkBypassing restrictions — accessing blocked resources or region-locked contentPublic Wi-Fi security — protection against traffic interceptionProtocolsWireGuard — modern, fast, minimal codebase (~4000 lines), open-sourceOpenVPN — battle-tested, flexible, but more complexIPSec/IKEv2 — built into most operating systemsVPN vs ProxyA proxy redirects HTTP traffic for a single application. A VPN encrypts all OS traffic at the network interface level.