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

Англійська лексика для розробників програмного забезпечення

Вивчайте англійську лексику для розробки програмного забезпечення: від програмування й баз даних до вебу, мобільних застосунків, хмарних систем, безпеки та обробки даних. Визначення пояснюють значення термінів, а приклади показують, як їх уживають у робочому контексті. Кожен термін має українське пояснення та перекладені приклади.

  • 1 143 термінів
  • 13 тем
  • 430 основних термінів
  • 2 298 прикладів

Тестування

  • think-aloud protocolіменникметодика «думай уголос», протокол міркування вголос

    Метод тестування, у якому учасники озвучують думки, пошуки й відчуття під час користування продуктом, щоб дослідники могли простежити їхні міркування.

  • task success rateіменникчастка успішного виконання завдання, рівень успішності завдання

    Відсоток учасників, які правильно виконали певне завдання під час тестування зручності користування; одна з найпростіших і найпоширеніших метрик зручності.

  • moderated testingіменникмодероване тестування, тестування з модератором

    Тестування зручності, під час якого дослідник наживо веде кожну сесію особисто чи відеозв’язком, дає завдання, ставить запитання й спостерігає за учасником.

  • stubіменникзаглушка, stub

    Проста тестова заміна справжньої функції, служби чи модуля, що повертає заздалегідь визначені дані в контрольованих умовах.

  • property-based testingіменниктестування на основі властивостей

    Тестування загальних правил програми на багатьох згенерованих входах замість перевірки лише окремо вибраних прикладів.

  • mutation testingіменникмутаційне тестування

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

  • fuzz testingіменникфазз-тестування, тестування випадковими даними

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

  • test oracleіменникеталон для тесту

    Джерело або механізм, за яким визначають, чи є спостережуваний результат тесту правильним.

  • boundary value analysisіменниканаліз граничних значень

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

  • equivalence partitioningіменникрозбиття на класи еквівалентності

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

  • contract testingіменникконтрактне тестування

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

  • test fixtureіменниктестова підготовка, тестова фікстура

    Підготовлені дані, об’єкти або ресурси, які задають тесту відомий початковий стан.

Пошук і виправлення помилок

  • bugіменникпомилка, баг

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

  • fixдієслововиправити, виправлення

    Змінити код так, щоб проблема більше не виникала; як іменник fix означає зміну, що усуває проблему.

  • debugдієсловоналагоджувати, відлагоджувати

    Шукати причину проблеми в програмі й усувати її, часто виконуючи код покроково та перевіряючи значення.

  • crashдієсловоаварійно завершитися, збій

    Раптово припинити роботу через помилку, унаслідок чого програма закривається або перестає відповідати; також іменник «збій».

  • reproduceдієслововідтворити

    Навмисно повторити помилку за тими самими кроками, щоб побачити її та знайти причину.

  • logіменникжурнал, лог

    Запис подій, повідомлень і помилок, які програма створює під час роботи, щоб згодом з’ясувати, що сталося; також дієслово «записувати в журнал».

  • stack traceіменниктрасування стека викликів, stack trace

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

  • root causeіменникпершопричина, коренева причина

    Найглибша первісна причина проблеми, на відміну від симптомів, які помітили спочатку.

  • workaroundіменникобхідне рішення, тимчасовий обхід

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

  • exceptionіменниквиняток, виняткова помилка

    Подія помилки, що перериває звичайний перебіг програми. Код може перехопити й обробити її або через неї програма може аварійно завершитися.

  • breakpointіменникточка зупинки, контрольна точка

    Позначка на рядку коду, де програма призупиняється під час виконання, щоб перевірити змінні й виконувати код покроково.

  • error messageіменникповідомлення про помилку

    Текст, який програма показує, коли щось іде не так: він повідомляє, що не вдалося, а іноді й чому, наприклад File not found або Connection refused.

  • troubleshootдієсловоусувати несправності, діагностувати й усувати проблему

    Послідовно з’ясовувати причину проблеми й виправляти її, особливо в запущеній системі, під час налаштування або в середовищі користувача.

  • bug reportіменникзвіт про помилку, опис дефекту

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

  • syntax errorіменниксинтаксична помилка

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

  • debuggerіменникналагоджувач, відладчик

    Інструмент, який дає змогу призупинити запущену програму, виконувати її рядок за рядком і переглядати значення змінних, щоб з’ясувати причину неправильної роботи.

  • step throughфразове дієслововиконувати покроково, проходити код по рядках

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

  • error handlingіменникобробка помилок

    Код, що реагує на проблеми — наприклад невдалий запит чи хибне введення, — щоб програма могла відновитися, повторити спробу або показати зрозуміле повідомлення замість аварійного завершення.

  • memory leakіменниквитік пам’яті

    Помилка, через яку програма продовжує утримувати пам’ять, що їй більше не потрібна; споживання зростає з часом, доки робота не сповільнюється або програма не завершується аварійно.

  • infinite loopіменникнескінченний цикл

    Цикл, який не завершується, бо умова виходу ніколи не виконується; він може зависнути або завантажити процесор на 100 відсотків.

  • off-by-one errorіменникпомилка на одиницю, помилка на один елемент

    Поширена помилка, коли цикл або обчислення заходить на один крок далі чи зупиняється на крок раніше, часто через відлік із нуля.

  • steps to reproduceсловосполученнякроки для відтворення помилки, послідовність відтворення

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

  • monitoringіменникмоніторинг

    Безперервне збирання й перевірка системних показників, як-от завантаження процесора, частота помилок і час відповіді, щоб швидко помічати проблеми.

  • alertіменниксповіщення, алерт

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

  • incidentіменникінцидент

    Незапланована подія, що порушує роботу служби або погіршує її для користувачів, наприклад збій, значне уповільнення чи проблема з даними, і потребує швидкого реагування.

  • outageіменникперебій у роботі, відмова служби

    Період, коли служба, система або її частина не працює чи недоступна користувачам.

  • downtimeіменникпростій, час недоступності

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

  • uptimeіменникчас безвідмовної роботи, доступність

    Час або частка часу, коли система працює й доступна; часто наводять показник, наприклад 99,9 відсотка за місяць чи рік.

  • SLAскороченняSLA, угода про рівень обслуговування

    Скорочення від service level agreement: договір, що гарантує клієнтам певний рівень послуг, наприклад доступність 99,9 відсотка, і визначає наслідки невиконання.

  • on-callприкметникчергування з викликом, черговий

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

  • metricіменникметрика, показник

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

  • dashboardіменникпанель моніторингу, дашборд

    Екран, що об’єднує найважливіші метрики й графіки системи, аби інженери могли швидко оцінити її стан.

  • observabilityіменникспостережуваність системи

    Можливість зрозуміти внутрішній стан системи за даними, які вона створює, зокрема журналами, метриками й трасуваннями, навіть коли проблема була непередбаченою.

  • tracingіменниктрасування запитів

    Відстеження одного запиту під час проходження через багато служб із записом тривалості кожного кроку, щоб з’ясувати, де виникають затримки чи помилки.

  • health checkіменникперевірка справності

    Регулярний автоматичний тест, часто запит до спеціальної адреси на кшталт /health, який перевіряє, чи працює сервер або служба та чи може приймати трафік.

  • postmortemіменникрозбір інциденту

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

  • redundancyіменникрезервування, надлишкова резервна потужність

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

  • disaster recoveryіменникаварійне відновлення

    Плани, інструменти й процедури відновлення систем і даних після великої аварії, наприклад втрати цілого центру обробки даних або регіону.

  • SLOскороченняSLO, цільовий рівень обслуговування

    Скорочення від service level objective: внутрішній цільовий показник надійності служби, наприклад успішне виконання 99,9 відсотка запитів за 30 днів.

  • SREскороченняSRE, інженерія надійності сайтів

    Скорочення від site reliability engineering: застосування методів розробки програмного забезпечення для надійної роботи виробничих систем. Також так називають інженера, який виконує цю роботу.

  • runbookіменникінструкція реагування, операційна інструкція

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

  • crash dumpіменникдамп аварійного завершення, дамп збою

    Файл або запис, збережений під час аварійного завершення програми, що містить дані про пам’ять і стан для подальшого налагодження.

  • step outфразове дієслововийти з функції, step out

    У налагоджувачі продовжити виконання до завершення поточної функції, а потім повернути керування до коду, який її викликав.

  • trace loggingіменникдетальне трасувальне журналювання, трасувальні журнали

    Дуже докладне журналювання дрібних кроків виконання, яке допомагає простежити перебіг програми під час налагодження чи пошуку важковідтворюваних збоїв.

  • interactive debuggingсловосполученняінтерактивне налагодження

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

  • watchpointіменникточка спостереження пам’яті, апаратна точка зупинки за даними

    Налаштування зневаджувача, що призупиняє виконання під час читання або зміни вибраної ділянки пам’яті — залежно від конфігурації.

  • use-after-freeіменниквикористання після звільнення пам’яті

    Звернення до ділянки пам’яті після її звільнення, коли вона вже недійсна для початкового об’єкта.

  • buffer overflowіменникпереповнення буфера

    Запис за виділеною межею буфера пам’яті, який може пошкодити інші дані або спричинити аварійне завершення.

  • livelockіменникактивне блокування, жваве блокування

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

  • priority inversionіменникінверсія пріоритетів

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

  • Heisenbugіменникгейзенбаг

    Неформальна назва помилки, яка змінюється або зникає, коли розробники намагаються її спостерігати чи досліджувати.

Архітектура, шаблони проєктування й графіка

  • frameworkіменникфреймворк, каркас застосунку

    Готова основа для створення застосунків із правилами, інструментами й типовими компонентами, до якої додають код, специфічний для продукту.

  • dependencyіменникзалежність

    Бібліотека, сервіс або інша програма, потрібна вашому коду для роботи, через що її зміна чи збій можуть вплинути на проєкт.

  • tech stackіменниктехнологічний стек, техстек

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

  • architectureіменникархітектура

    Високорівнева структура програмної системи: її основні частини, способи взаємодії та ключові технічні рішення.

  • design patternіменникшаблон проєктування, патерн проєктування

    Перевірене повторно використовуване розв’язання поширеної задачі проєктування коду, наприклад Singleton, Factory чи Observer; це загальний підхід, а не готовий код.

  • trade-offіменниккомпроміс, взаємний компроміс

    Ситуація, коли заради більшої кількості однієї переваги доводиться прийняти меншу кількість іншої, наприклад швидкості за рахунок точності.

  • scalableприкметникмасштабований, здатний масштабуватися

    Здатний обслуговувати більше користувачів, даних чи трафіку завдяки додаванню ресурсів, без повного перепроєктування й значного сповільнення.

  • microservicesіменникмікросервіси

    Архітектура, у якій застосунок складається з багатьох невеликих незалежних сервісів з окремими завданнями, що спілкуються мережею.

  • monolithіменникмоноліт, монолітний застосунок

    Застосунок, який створюють і розгортають як єдине ціле: усі функції використовують спільну кодову базу й зазвичай одну базу даних.

  • modularприкметникмодульний, побудований із модулів

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

  • abstractionіменникабстракція, рівень абстракції

    Приховування складних деталей за простішим інтерфейсом, щоб користуватися чимось, не знаючи внутрішньої реалізації; наприклад, викликати save(), не знаючи SQL-запиту до бази даних.

  • separation of concernsіменникрозділення відповідальностей, принцип розділення відповідальностей

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

  • loose couplingіменникслабке зв’язування, слабка залежність компонентів

    Підхід до проєктування, за якого частини системи якомога менше залежать одна від одної, тож зміна однієї рідко вимагає змін в інших.

  • dependency injectionіменниквпровадження залежностей, ін’єкція залежностей

    Техніка, за якої об’єкт отримує потрібні йому компоненти, наприклад клієнт бази даних, ззовні, а не створює їх сам; це полегшує тестування коду.

  • design docіменникдокумент проєктного рішення, документ дизайну системи

    Документ, написаний перед створенням великого рішення; він описує проблему, запропонований підхід, розглянуті альтернативи й компроміси, щоб інші могли його перевірити.

  • over-engineeringіменникнадмірне ускладнення рішення, надмірне проєктування

    Створення складнішого рішення, ніж вимагає проблема, наприклад додавання рівнів, налаштувань чи гнучкості для можливих майбутніх потреб, які можуть так і не виникнути.

  • proof of conceptіменникперевірка концепції, доказ концепції

    Невелика швидко створена версія ідеї, призначена лише показати її технічну здійсненність до того, як команда витратить час на повноцінну реалізацію.

  • game engineіменникігровий рушій, рушій для ігор

    Програмна основа з готовими системами графіки, фізики, звуку, введення та сценаріїв, що дає змогу створювати гру без написання всього з нуля.

  • assetіменникігровий ресурс, асет

    Будь-який вміст гри — наприклад 3D-модель, текстура, звуковий ефект, анімація чи музика, — зазвичай окремий файл, який імпортують у рушій.

  • frame rateіменникчастота кадрів, FPS

    Кількість зображень, які гра відтворює на екрані за секунду; вимірюється у кадрах за секунду (fps). Вища й стабільніша частота робить гру плавнішою на вигляд і на дотик.

  • game design documentіменникдокумент ігрового дизайну, GDD

    Документ із докладним описом запланованої гри — задуму, механік, сюжету, рівнів, персонажів і керування, — щоб команда створювала одну й ту саму гру.

  • NPCскороченняNPC, неігровий персонаж

    Скорочення від non-player character: персонаж гри, яким керує комп’ютер, а не гравець, наприклад торговець, замовник завдання чи ворожий вартовий.

  • HUDскороченняHUD, інтерфейс поверх ігрового зображення

    Скорочення від heads-up display: інформація поверх ігрового зображення під час гри, наприклад здоров’я, боєприпаси, мапа й рахунок.

  • spriteіменникспрайт

    Двовимірне зображення, що використовується як об’єкт гри: персонаж, ворог, монета чи вибух. Кілька спрайтів, показаних послідовно, утворюють анімацію.

  • collision detectionіменниквиявлення зіткнень, детекція колізій

    Частина гри, що перевіряє, чи торкаються або перекриваються два об’єкти, наприклад куля з ворогом або персонаж із платформою.

  • shaderіменникшейдер

    Невелика програма на відеокарті, що визначає вигляд поверхонь — колір, освітлення, блиск і прозорість — або ефекти на кшталт води й вогню.

  • scriptіменникскрипт, сценарій поведінки

    Фрагмент коду, що керує поведінкою об’єкта чи події в грі — дверей, ворога або завдання, — зазвичай прикріплений до об’єкта в рушії.

  • game loopіменникігровий цикл, цикл гри

    Основний цикл коду гри, що виконується багато разів за секунду: зчитує введення гравця, оновлює ігровий світ і малює новий кадр.

  • sceneіменниксцена

    Частина проєкту в рушії — наприклад меню, рівень або тестова зона — що містить розміщені в ній об’єкти, світло й камери.

  • prefabіменникпрефаб, заготовка ігрового об’єкта

    Збережений ігровий об’єкт із усіма частинами й налаштуваннями, наприклад ворог чи двері, який можна розміщувати багато разів; зміна префаба оновлює всі копії.

  • physics engineіменникфізичний рушій, рушій фізики

    Система, що моделює у грі фізичні явища — тяжіння, зіткнення, тертя й сили, — щоб об’єкти правдоподібно падали, відскакували й штовхали одне одного.

  • hitboxіменникхітбокс, область влучання

    Невидима форма навколо персонажа чи його частини, за якою гра визначає, чи влучила атака або куля; вона часто простіша за видиму модель.

  • textureіменниктекстура

    Двовимірне зображення, накладене на 3D-модель, щоб надати їй колір і деталі поверхні — текстуру дерева, шкіру чи іржу. Додаткові текстури задають блиск, рельєф і шорсткість.

  • polycountіменниккількість полігонів, полігональність

    Кількість полігонів, зазвичай трикутників, у 3D-моделі чи сцені. Менша кількість пришвидшує відтворення, але зменшує деталізацію.

  • optimizationіменникоптимізація, оптимізування

    Робота, що пришвидшує гру й зменшує використання пам’яті, заряду батареї чи пропускної здатності, наприклад спрощення моделей, зменшення викликів малювання або переписування повільного коду.

  • spawnдієсловостворювати в ігровому світі, поява персонажа чи об’єкта

    Розміщувати персонажа, ворога чи предмет в ігровому світі або з’являтися в ньому. Spawn point — місце появи.

  • checkpointіменникконтрольна точка, чекпойнт

    Місце рівня, де гра зберігає поступ гравця, щоб після невдачі чи загибелі він починав звідти, а не спочатку.

Короткий тест: чи знаєте ви ці терміни?

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

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

  • Читайте щодня тексти з розробки: офіційну документацію, README, нотатки до випусків, обговорення задач і коментарі до pull request. Звертайте увагу, як терміни працюють у реченні.
  • Вивчайте слово разом із типовими сполученнями: не лише bug, а й fix a bug, report a bug та steps to reproduce. Так легше вживати його природно.
  • Закріплюйте лексику в коротких робочих текстах англійською: описах комітів, задачах і коментарях до коду. Пишіть просто й перечитуйте, чи точно передали дію та її результат.
  • Тренуйте вимову скорочень так, як їх вимовляють команди: API і SDK зазвичай називають по літерах, JSON — як ім’я Jason, а REST — одним словом.
  • Збирайте ввічливі фрази для рев’ю та щоденних зустрічей, наприклад Could you take a look? або I’m blocked on…; звертайте увагу, у яких ситуаціях їх використовують.

Поширені запитання

Як вивчати англійську лексику з розробки програмного забезпечення?

Читайте справжні матеріали з галузі: документацію, 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 у США часто вимовляють як «раут», а у Великій Британії — як «рут».

На роботі краще вживати український чи англійський технічний термін?

У робочих розмовах часто залишають англійські терміни commit, merge, deploy і pull request, поєднуючи їх з українськими словами або адаптуючи в розмовних дієсловах на кшталт «задеплоїти». У формальних документах, навчальних курсах і наукових текстах частіше вживають українські відповідники: «випуск», «гілка», «модульний тест». Знання обох варіантів допомагає перемикатися між українським обговоренням і англомовним кодом та документацією.

Як англійською розповідати про свою роботу на щоденній зустрічі й у код-рев’ю?

Користуйтеся короткими усталеними фразами. На щоденній зустрічі можна сказати: 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…? зазвичай доречніше за прямий наказ.

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

Тексти відповідного рівня допомагають запам’ятовувати нові слова. Оберіть безкоштовні книжки англійською: