Английская лексика · Разработка программного обеспечения

Английские термины разработки ПО: значения и примеры на русском

Разбирайте английскую лексику разработки программного обеспечения: от повседневной работы с кодом и тестирования до баз данных, архитектуры, веб-разработки и обработки данных. Для каждого термина приведены русское значение, пояснение употребления и английские примеры с переводом и разбором.

  • 1 143 терминов
  • 13 тем
  • 430 базовых терминов
  • 2 298 примеров

Базы данных и хранение данных

  • columnсуществительноестолбец, колонка

    Вертикальная часть таблицы с именем и типом данных, содержащая один вид сведений для каждой строки, например адрес электронной почты или created_at.

  • queryсуществительноезапрос, запрашивать

    Обращение к базе данных для чтения или изменения данных, обычно записанное на SQL. Как глагол query означает запросить данные у базы.

  • relational databaseсуществительноереляционная база данных

    Тип базы данных, где данные хранятся в таблицах со строками и столбцами, а таблицы связываются ключами; обычно ими управляют с помощью SQL.

  • DBMSсокращениеСУБД, система управления базами данных

    Database Management System — программа, которая хранит данные, выполняет запросы, управляет доступом и обеспечивает сохранность данных, например PostgreSQL или Oracle.

  • primary keyсуществительноепервичный ключ

    Столбец или набор столбцов, однозначно идентифицирующий каждую строку таблицы. Значение не может быть пустым, а дубликаты не допускаются.

  • foreign keyсуществительноевнешний ключ

    Столбец одной таблицы, ссылающийся на первичный ключ другой таблицы, связывающий их и не позволяющий ссылаться на несуществующие строки.

  • SELECT statementсуществительноеоператор SELECT, инструкция SELECT

    Оператор SQL, который читает данные из одной или нескольких таблиц и возвращает подходящие строки, не изменяя базу данных.

  • WHERE clauseсуществительноепредложение WHERE, условие WHERE

    Часть SQL-оператора, задающая условие, чтобы читать, обновлять или удалять только подходящие строки.

  • joinсуществительноесоединение таблиц, соединять таблицы

    Операция SQL, объединяющая строки двух или нескольких таблиц по связанному столбцу, например идентификатору клиента. Глагол join означает выполнить такое соединение.

  • schemaсуществительноесхема базы данных, схема

    Структура базы данных: её таблицы, столбцы, типы данных, ключи и связи. В некоторых СУБД это также именованная группа таблиц внутри базы.

  • transactionсуществительноетранзакция

    Группа операций с базой, обрабатываемая как единое целое: либо все они успешно применяются, либо ни одна.

  • data typeсуществительноетип данных

    Категория значений, которые может содержать столбец: например целые числа, текст, даты или логические значения. Она определяет допустимые значения и занимаемый объём.

  • NULLсуществительноеNULL, отсутствующее значение

    Специальный маркер, означающий, что значение отсутствует или неизвестно. Это не то же самое, что ноль или пустая строка.

  • INSERT statementсуществительноеоператор INSERT, инструкция INSERT

    Оператор SQL, добавляющий одну или несколько строк в таблицу с помощью INSERT INTO и списка столбцов и значений.

  • UPDATE statementсуществительноеоператор UPDATE, инструкция UPDATE

    Оператор SQL, изменяющий значения в уже существующих строках; обычно WHERE ограничивает изменение нужными строками.

  • DELETE statementсуществительноеоператор DELETE, инструкция DELETE

    Оператор SQL, удаляющий строки из таблицы. С WHERE удаляются только подходящие строки; без него — все строки.

  • backupсуществительноерезервная копия, резервное копирование

    Копия базы данных, сохранённая на определённый момент времени, чтобы восстановить данные после сбоя, ошибки или атаки.

  • NoSQLсуществительноеNoSQL, нереляционные базы данных

    Общее название баз данных, которые не используют классическую модель таблиц и SQL, а хранят данные как документы, пары ключ—значение, широкие столбцы или графы.

  • constraintсуществительноеограничение базы данных, ограничение целостности

    Правило для таблицы или столбца, которое база данных проверяет автоматически и отклоняет данные, нарушающие его.

  • normalizationсуществительноенормализация

    Организация таблиц таким образом, чтобы каждый факт хранился только в одном месте; это сокращает дублирование и предотвращает ошибки при обновлении.

  • ORDER BYсловосочетаниеORDER BY, сортировка ORDER BY

    Предложение SQL, сортирующее строки результата по одному или нескольким столбцам по возрастанию (ASC) или убыванию (DESC).

  • GROUP BYсловосочетаниеGROUP BY, группировка GROUP BY

    Предложение SQL, объединяющее строки с одинаковыми значениями в группы для вычисления суммы, количества или среднего по каждой группе.

  • aggregate functionсуществительноеагрегатная функция, функция агрегирования

    Функция SQL, принимающая множество строк и возвращающая одно значение, например COUNT, SUM, AVG, MIN или MAX.

  • inner joinсуществительноеINNER JOIN, внутреннее соединение

    Соединение, возвращающее только строки, для которых найдены совпадения в обеих таблицах; строки без пары исключаются.

  • left joinсуществительноеLEFT JOIN, левое соединение

    Соединение, возвращающее все строки первой (левой) таблицы и совпавшие строки второй; при отсутствии совпадения столбцы второй таблицы содержат NULL.

  • CREATE TABLEсловосочетаниеCREATE TABLE, создание таблицы

    Оператор SQL для создания новой таблицы с заданными именем, столбцами и их типами данных, а также ограничениями, например первичным ключом.

  • ALTER TABLEсловосочетаниеALTER TABLE, изменение структуры таблицы

    Оператор SQL, изменяющий структуру существующей таблицы, например добавляющий, переименовывающий или удаляющий столбец либо добавляющий ограничение.

  • viewсуществительноепредставление, view

    Сохранённый запрос SELECT, которым можно пользоваться как таблицей. Обычно он не хранит данные, а при каждом обращении показывает актуальный результат запроса.

  • stored procedureсуществительноехранимая процедура, stored procedure

    Именованный блок SQL-кода, сохранённый в базе данных; он может принимать параметры и многократно запускаться одним вызовом.

  • ACIDсокращениеACID, свойства ACID

    Atomicity, Consistency, Isolation, Durability — четыре гарантии надёжности транзакций базы данных при ошибках, сбоях и одновременной работе множества пользователей.

  • execution planсуществительноеплан выполнения, план запроса

    Пошаговая стратегия, которую база данных выбирает для выполнения запроса: используемые индексы, порядок соединения таблиц и ожидаемое число строк.

  • query optimizerсуществительноеоптимизатор запросов, оптимизатор

    Часть движка базы данных, которая анализирует запрос и статистику таблиц, выбирает наименее затратный способ выполнения и строит план.

  • replicationсуществительноерепликация, реплицирование

    Поддержание копий одной базы данных на нескольких серверах путём передачи изменений с одного сервера на остальные для отказоустойчивости и распределения нагрузки.

  • restoreглаголвосстанавливать, восстановление

    Возвращать базу данных из резервной копии, чтобы исправить потерю данных или создать её копию на другом сервере.

  • DBAсокращениеадминистратор баз данных, DBA

    Database administrator — специалист, отвечающий за установку, защиту, резервное копирование, настройку производительности и бесперебойную работу баз данных компании.

  • ER diagramсуществительноеER-диаграмма, диаграмма сущность—связь

    Схема проекта базы данных, показывающая сущности (обычно таблицы), их атрибуты и связи, например «один ко многим».

  • one-to-many relationshipсуществительноесвязь «один ко многим», отношение 1:N

    Связь таблиц, при которой одной строке первой таблицы соответствуют многие строки второй, но каждая из них относится только к одной строке первой; например клиент и его заказы.

  • many-to-many relationshipсуществительноесвязь «многие ко многим», отношение M:N

    Связь, при которой многие строки одной таблицы могут относиться ко многим строкам другой, например студенты и курсы. Для хранения пар нужна промежуточная таблица.

  • unique constraintсуществительноеограничение уникальности, уникальное ограничение

    Правило, запрещающее двум строкам иметь одинаковое значение одного столбца или сочетания столбцов, например одинаковый адрес электронной почты у разных пользователей.

  • auto-incrementприлагательноеавтоинкремент, автоматическое увеличение значения

    Характеристика числового столбца, значение которого база автоматически заполняет следующим номером последовательности при добавлении каждой строки.

  • document databaseсуществительноедокументная база данных, документная NoSQL-база

    NoSQL-база, хранящая каждый элемент как самостоятельный документ, обычно в формате, похожем на JSON; связанные данные можно хранить вместе без фиксированных таблиц.

  • key-value storeсуществительноехранилище «ключ—значение», key-value-хранилище

    Простейший вид NoSQL-базы, сохраняющий каждое значение под уникальным ключом и быстро находящий его по этому ключу.

  • subqueryсуществительноеподзапрос, вложенный запрос

    Запрос внутри другого запроса, обычно в скобках; внешний запрос использует его результат, например как список значений для фильтрации.

  • HAVING clauseсуществительноепредложение HAVING, условие HAVING

    Часть SQL-запроса, фильтрующая группы после выполнения GROUP BY, обычно по результату агрегатной функции, например COUNT или SUM.

  • SELECT DISTINCTсловосочетаниеSELECT DISTINCT, выбор уникальных строк

    Форма оператора SELECT, удаляющая дубли из результата, так что каждое сочетание возвращаемых значений появляется только один раз.

  • aliasсуществительноепсевдоним, алиас

    Временное короткое имя таблицы или столбца внутри запроса, обычно заданное через AS для краткости или ясности результата.

  • composite keyсуществительноесоставной ключ, композитный ключ

    Ключ из двух или более столбцов, которые однозначно определяют строку только вместе, например ID заказа и ID товара в таблице позиций заказа.

  • surrogate keyсуществительноесуррогатный ключ

    Искусственный ключ без бизнес-смысла, например автоинкрементное число или UUID, созданный только для идентификации строки.

  • referential integrityсуществительноессылочная целостность, целостность ссылок

    Правило, согласно которому каждая ссылка между таблицами указывает на действительно существующую строку, чтобы не оставалось заказов без клиентов.

  • cascadeглаголкаскадное действие, каскад

    При удалении или обновлении автоматически распространять операцию с родительской строки на все дочерние строки, ссылающиеся на неё внешним ключом.

  • default valueсуществительноезначение по умолчанию

    Значение, которое автоматически получает столбец, если при добавлении строки для него ничего не указали, например 0, 'pending' или текущее время.

  • denormalizationсуществительноеденормализация

    Намеренное хранение одних данных в нескольких местах или объединение таблиц ради ускорения чтения при условии, что копии придётся поддерживать согласованными.

  • normal formсуществительноенормальная форма

    Один из набора правил проектирования таблиц (1NF, 2NF, 3NF и выше); каждый следующий уровень устраняет определённый вид повторяющихся или неверно размещённых данных.

  • cardinalityсуществительноекардинальность, мощность

    Либо тип связи между таблицами (один к одному, один ко многим, многие ко многим), либо количество различных значений в столбце.

  • clustered indexсуществительноекластерный индекс

    Индекс, определяющий физический порядок хранения строк таблицы; поэтому у таблицы может быть только один кластерный индекс, остальные — некластерные.

  • full table scanсуществительноеполное сканирование таблицы, полный просмотр таблицы

    Чтение каждой строки таблицы в поиске нужных запросу данных вместо прямого перехода к ним через индекс.

  • slow queryсуществительноемедленный запрос, долго выполняющийся запрос

    Запрос, выполняющийся дольше согласованного предела и замедляющий приложение или расходующий ресурсы базы данных.

  • isolation levelсуществительноеуровень изоляции

    Настройка, определяющая, насколько транзакция видит изменения других транзакций; она задаёт компромисс между защитой данных, скоростью и параллельностью.

  • lockсуществительноеблокировка, блокировать

    Метка, которую база ставит на строку, страницу или таблицу, чтобы другие транзакции не могли изменять её, а иногда и читать, до завершения текущей транзакции.

  • deadlockсуществительноевзаимная блокировка, тупиковая ситуация

    Ситуация, когда две или более транзакции ждут блокировку, удерживаемую другой транзакцией, и ни одна не может продолжить, пока база не отменит одну из них.

  • triggerсуществительноетриггер базы данных, триггер

    Фрагмент кода, сохранённый в базе данных и автоматически запускающийся при событии в таблице, например вставке, обновлении или удалении.

  • migrationсуществительноемиграция базы данных, миграция

    Версионируемый скрипт для контролируемого изменения схемы базы данных; в более широком смысле — проект переноса данных между базами или системами.

  • point-in-time recoveryсуществительноевосстановление на момент времени, PITR

    Восстановление базы к точному выбранному моменту, например за минуту до ошибочного DELETE, путём применения сохранённых журналов изменений поверх резервной копии.

  • read replicaсуществительноереплика для чтения, читающая реплика

    Копия базы, получающая изменения с основного сервера и предназначенная только для запросов чтения, чтобы снизить нагрузку на основной сервер.

  • failoverсуществительноепереключение при отказе, аварийное переключение

    Перенос работы с вышедшего из строя основного сервера базы на резервный сервер или реплику, чтобы приложение продолжало работать.

  • privilegeсуществительноепривилегия, право доступа

    Разрешение, позволяющее пользователю или роли базы выполнить определённое действие, например читать таблицу, добавлять строки или создавать объекты.

  • grantглаголпредоставлять право, выдавать разрешение

    Предоставлять пользователю или роли базы право на действие с помощью SQL-команды GRANT; команда REVOKE отзывает разрешение.

  • connection poolсуществительноепул соединений, пул подключений

    Набор открытых соединений с базой, которые приложение держит готовыми и повторно использует вместо медленного открытия нового соединения для каждого запроса.

  • ORMсокращениеORM, объектно-реляционное отображение

    Object-relational mapping — библиотека, позволяющая работать со строками базы как с объектами языка программирования и автоматически формирующая SQL-запросы.

  • CRUDсокращениеCRUD, создание, чтение, обновление и удаление

    Create, Read, Update, Delete — четыре базовые операции с сохранёнными данными, которым соответствуют SQL-команды INSERT, SELECT, UPDATE и DELETE.

  • shardingсуществительноешардирование, горизонтальное распределение данных

    Разделение большого набора данных между несколькими серверами, каждый из которых хранит отдельную часть строк, чтобы система могла расти за пределы одной машины.

  • partitioningсуществительноесекционирование, разбиение на партиции

    Разделение большой таблицы на меньшие части — партиции — по правилу, например диапазону дат или региону; для запросов она при этом выглядит как одна таблица.

  • high availabilityсуществительноевысокая доступность, отказоустойчивая доступность

    Проектирование системы баз данных так, чтобы она почти не простаивала и продолжала работать при отказе сервера, диска или центра обработки данных.

  • dumpсуществительноедамп базы данных, выгрузка базы

    Файл со структурой и данными базы, записанными в виде SQL-команд или специального формата экспорта, который можно загрузить в другую базу.

  • eventual consistencyсуществительноесогласованность в конечном счёте, eventual consistency

    Гарантия, что при отсутствии новых изменений все копии данных через некоторое время станут одинаковыми, хотя чтение может временно возвращать устаревшее значение.

  • CAP theoremсуществительноетеорема CAP, теорема CAP о распределённых системах

    Идея о том, что при сетевом сбое, разделяющем распределённую базу, приходится выбирать между согласованностью (одинаковые данные везде) и доступностью (система всегда отвечает).

  • graph databaseсуществительноеграфовая база данных, графовая NoSQL-база

    NoSQL-база, хранящая данные как узлы, соединённые связями; это удобно для быстрого перехода по цепочкам, например поиска друзей друзей.

  • collectionсуществительноеколлекция, коллекция документов

    В документной базе, например MongoDB, группа документов, хранящихся вместе; по назначению похожа на таблицу реляционной базы.

  • in-memory databaseсуществительноебаза данных в оперативной памяти, in-memory-база данных

    База, хранящая данные преимущественно в оперативной памяти, а не на диске, благодаря чему чтение и запись выполняются очень быстро.

  • data warehouseсуществительноехранилище данных, аналитическое хранилище данных

    Центральная база для отчётности и анализа, собирающая исторические данные из разных систем и рассчитанная на крупные запросы чтения, а не небольшие обновления.

  • OLTPсокращениеOLTP, оперативная обработка транзакций

    Online Transaction Processing — нагрузка базы из множества небольших быстрых операций чтения и записи пользователей, например оформление заказов и изменение профилей.

  • upsertглаголвставка или обновление, upsert

    Выполнить одной операцией вставку строки, если её ещё нет, либо обновить её, если она уже существует. Слово образовано от update и insert.

  • CTEсокращениеCTE, общее табличное выражение

    Common table expression — именованный временный результат, определяемый через WITH в начале запроса и используемый основным запросом как таблица.

  • window functionсуществительноеоконная функция

    Функция SQL, вычисляющая значение по набору связанных строк, например накопительный итог или ранг, но при этом возвращающая каждую исходную строку.

  • UNIONсуществительноеUNION, объединение результатов запросов

    Оператор SQL, складывающий результаты двух или нескольких SELECT один под другим в единый набор и удаляющий повторяющиеся строки.

  • truncateглаголочищать таблицу, TRUNCATE

    Удалить сразу все строки командой TRUNCATE TABLE, сохранив таблицу и её структуру; это значительно быстрее построчного удаления.

  • DDLсокращениеDDL, язык определения данных

    Data Definition Language — SQL-команды для создания, изменения и удаления объектов базы, например CREATE, ALTER и DROP.

  • DMLсокращениеDML, язык манипулирования данными

    Data Manipulation Language — SQL-команды для работы с данными внутри таблиц, прежде всего INSERT, UPDATE, DELETE и часто SELECT.

  • query tuningсуществительноеоптимизация запросов, настройка производительности запросов

    Работа по ускорению медленных запросов: изучение планов выполнения, добавление индексов, переписывание SQL или изменение настроек базы.

  • roleсуществительноероль базы данных, роль

    Именованный набор прав базы данных, который можно назначить многим пользователям сразу, например read_only или app_writer, упрощая управление доступом.

  • entity-relationship modelсловосочетаниемодель сущность—связь, ER-модель

    Концептуальная модель, описывающая данные через сущности, их атрибуты и связи между ними при проектировании базы данных.

  • write-ahead logсуществительноежурнал предварительной записи, журнал WAL

    Журнал, в который база данных записывает изменения до внесения соответствующих данных в постоянные страницы.

  • materialized viewсуществительноематериализованное представление, материализованная выборка

    Сохранённый результат запроса, который можно читать напрямую и обновлять при изменении исходных данных.

  • optimistic lockingсуществительноеоптимистическая блокировка, оптимистичный контроль версий

    Проверка, не изменились ли данные после чтения, прежде чем принимать обновление; часто выполняется по номеру версии.

  • dirty readсуществительноегрязное чтение

    Чтение изменения другой транзакции до того, как та зафиксирована.

  • phantom readсуществительноефантомное чтение

    Аномалия транзакций, при которой повторный запрос находит изменившийся набор строк из-за изменений другой транзакции.

  • lost updateсуществительноепотерянное обновление

    Ошибка конкурентного доступа, при которой запись на основе устаревших данных затирает другое обновление.

  • covering indexсуществительноепокрывающий индекс, покрывающий запрос индекс

    Индекс, содержащий все значения столбцов, нужные конкретному запросу, что может избавить от отдельного чтения строк таблицы.

  • N+1 query problemсуществительноепроблема N+1 запросов, проблема «один плюс N запросов»

    Схема, при которой один запрос загружает список, а затем для каждого из N элементов выполняется ещё один отдельный запрос.

Веб-разработка, мобильные приложения и интерфейсы

  • front endсуществительноеклиентская часть, фронтенд

    Часть сайта или веб-приложения, которую пользователь видит и с которой взаимодействует в браузере; обычно она создаётся с помощью HTML, CSS и JavaScript.

Короткий тест: знаете ли вы эти термины?

Десять вопросов из словаря. Выберите правильное значение каждого термина и проверьте результат.

Как изучать лексику: Разработка программного обеспечения

  • Читайте документацию, README, примечания к выпускам и обсуждения задач. Обращайте внимание на выражения, которые повторяются в вашей работе.
  • Учите сочетания целиком: fix a bug, report a bug, steps to reproduce. Так проще использовать термин в собственной фразе.
  • Практикуйтесь в коротких сообщениях: описаниях задач, комментариях к коду и сообщениях коммитов.
  • Запоминайте произношение сокращений: API и SDK обычно произносят по буквам, JSON — как имя Jason, а REST — как одно слово.
  • Сохраняйте вежливые фразы для командной работы: Could you take a look? и What do you think about…?

Частые вопросы

Как учить английские термины разработки ПО?

Читайте реальные рабочие тексты и отмечайте контекст: документацию, README, обсуждения задач и комментарии к pull request. Учите слово вместе с типичными сочетаниями, например open a pull request и fix a bug, а затем используйте их в своих сообщениях.

С каких терминов начать?

Начните с bug, fix, commit, branch, pull request, merge, code review, deploy, release, ticket, sprint и stand-up. Затем переходите к тестированию, отладке, архитектуре и API — в зависимости от задач, с которыми сталкиваетесь.

Отличается ли британский английский от американского в программировании?

В коде, названиях API и значительной части документации встречается американское написание: color, initialize, behavior. В обычном тексте британские авторы могут писать colour или behaviour, но имя свойства CSS color менять нельзя. Произношение некоторых слов также различается, например agile и route.

Использовать русское название или английский термин?

Сохраняйте точные английские имена в коде, API и командах. В объяснениях для русскоязычной аудитории выбирайте понятный русский эквивалент и при необходимости указывайте английский термин рядом. Для командных обсуждений учитывайте принятую в проекте терминологию.

Как рассказывать о работе на английском на встречах и при проверке кода?

Для короткого отчёта подойдут Yesterday I fixed…, today I'm working on…, no blockers. При проверке кода можно написать Could you take a look at my PR? или I've addressed your comments. Пометка nit обозначает мелкое замечание, а LGTM — одобрение. Вежливый вопрос What do you think about…? помогает обсудить предложение без категоричного требования.

Закрепляйте лексику чтением

Тексты подходящего уровня помогают запоминать новые слова. Выберите бесплатные книги на английском: