Граматика для умовних речень в технічних документах: якщо, коли і якщо

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

Технічна документація повна умов: * якщо термін дії токена закінчився, оновіть його; коли збирання завершиться, розгорніть; якщо прапорець не встановлено, пропустіть цей крок.* Вибір неправильного умовного слова — або неправильного часу — робить інструкції неоднозначними, а неоднозначні інструкції спричиняють вади. Цей підручник містить граматику умовних речень, призначених спеціально для технічної документації.


Нульовий умовний: робочий кінь документів

Більшість документації описує загальні істини і правила, тому ** нульова умова ** домінує. Його форма проста:

** Якщо ** + теперішній простий, ** теперішній простий **.

    • « Якщо кеш порожній, система отримає дані з бази даних. » *
    • “Якщо запит перевищив час очікування, клієнт повторить спробу.” *
    • “При виклику цього методу, він повертає обіцянку.” *

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

Невірно: « Якщо кеш порожній, система ** отримає ** з бази даних. » (загальне, а не одноразове передбачення) Праворуч: “Якщо кеш порожній, система ** отримає ** з бази даних.”

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


«Якщо» проти «коли»: невизначеність проти певності

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

  • ** if ** — умова * може або не може * статися. * « Якщо станеться помилка, записати її у журнал ». * (помилки можуть не виникати)
  • ** коли ** — умова * буде * виконано; відкрито лише часовий параметр. * « Коли вивантаження буде завершено, показувати підтвердження ». * (вивантаження буде завершено)

Тест: чи можете ви замінити його на « у разі, якщо » (→ використовувати * якщо *) або « у момент, коли » (→ використовувати * коли *)?

    • Якщо користувач є адміністратором, показати панель управління.” * — невідомо, чи є користувач адміністратором. ✔ якщо
    • « ** Коли ** завантажиться сторінка, отримати дані. » * — сторінка буде завантажено. ✔ * коли *

Використання * коли * для невідомої умови означає, що вона гарантована, що може ввести у оману:

Вводяче в оману: «Якщо оплата зазнає невдачі, поверніть користувачеві гроші» (надає змогу припустити, що оплата завжди зазнає невдачі) Правильно: “Якщо оплата зазнає невдачі, поверніть користувачеві"


"Якщо”: якщо ні

** Якщо ** означає * якщо не * або * крім якщо *. Це коротко і звичайно в документах, але в ньому є пастки.

    • « Якщо кеш не є свіжим, перезавантажити » * = * « Якщо кеш не є свіжим, перезавантажити » *
    • “Не повторювати спробу, якщо помилка не повторюється.” * = * “Спробуйте ще раз, лише якщо помилка повторюється.” *

Пастка: не додавайте другий негативний. * Якщо * вже містить “не”.

Неправильно: «Якщо у вас немає дозволу, ви можете редагувати.» (подвійний негативний — заплутаний) Праворуч: «Якщо у вас немає дозволу, ви не можете редагувати.» — або простіше: «Ви можете редагувати тільки якщо у вас є дозвіл»

Якщо unless ускладнює аналіз речення, переписуйте його з if not або only if. Ясність перемагає короткість у документах.


”При условии, что”, “пока”, “на случай”

Ці додають нюанс:

  • ** provided (that) / as long as** — підкреслює необхідну умову. * « Розгортання завершиться успішно, якщо всі тести пройдуть успішно ». *
  • ** in case ** — як запобіжний захід проти можливості (не те саме, що * if *). * « Зберігати резервну копію на випадок невдачі перенесення ». *
  • ** once ** — після виконання умови. * « Після отримання блокування, записати до файла. » *

Зауваження in case vs if: “Візьміть парасольку in case it rains” (обережність, перед тим, як дізнатися) відрізняється від “Візьміть парасольку if it rains” (умова, ви дізнаєтеся). У документації: “Загорнути в try/catch in case виклик throws” (обережність) проти “Повторити if виклик throws” (умовна дія).


Реальний проти гіпотетичного: перший проти другого умовного

Більшість документів використовують реальні умови (нульовий/перший умовний). Іноді ви описуєте гіпотетичні.

** Перша умовна ** (реальна можливість майбутнього):

** Якщо ** + теперішній простий, ** буде ** + базове дієслово.

    • “Якщо ви встановите цей прапорець, служба пропустить перевірку.” *

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

** Друга умова ** (гіпотетична / малоймовірна):

** Якщо ** + минуле просте, ** буде ** + базове дієслово.

    • “Якщо ми вилучили б кеш, затримка подвоїлася б.” * (ми його не вилучаємо, це гіпотеза)

Використовуйте другу умову у дискусіях щодо дизайну і поясненнях щодо компромісів, а не у покрокових інструкціях.


Умови в імперативних інструкціях

У документації часто поєднується умова з командою. Команда залишається в імперативному стані:

    • “Якщо термін дії токена закінчився, оновити його.” *
    • “Якщо тест зазнає невдачі, ** перевірте ** журнали.” *
  • “Якщо ви не підключені до VPN, з’ єднайтесь спочатку.”

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

    • Освіжити токен, якщо його термін дії закінчився.” * (перша дія, умова є незначним застереженням)

Поширені помилки

  • ** « Will » у нульовому умовному речення. ** Для загальної поведінки використовуйте теперішній час у двох реченнях: * « Якщо X відбудеться, система запише це у журнал », * а не * « … запише це у журнал ». *
  • ** « Коли » для невідомих умов. ** Використовуйте * якщо *, якщо умова не може бути виконана.
  • Подвійні від’ємники з “якщо”. Якщо вже означає якщо не. Не добавляй еще не.
  • ** « На випадок » використовується як « якщо ». ** * На випадок * — це запобіжний захід; * якщо * — це умова.
  • ** Смішування часів у реченні. ** У будь- якій частині тримайте нульовий умовний час у теперішньому часі.
  • ** Похування умови. ** Коли умова має обсяг інструкції, ставте її першою.

Краткий справочник

You mean…UseExample
Always true given Xzero conditional”If X is null, the function returns early.”
Uncertain conditionif”If an error occurs, retry.”
Certain, timing openwhen”When the job finishes, notify.”
If not / exceptunless”Skip it unless the flag is set.”
Precautionin case”Cache it in case the API is slow.”
Specific triggered outcomefirst conditional”If you enable this, it will log requests.”
Hypotheticalsecond conditional”If we sharded, writes would scale.”

Ключевые вещи

  • ** нульовий умовний ** (present + present) є типовим для поведінки системи.
  • ** Якщо ** = невідомо; ** коли ** = певний час — не замінюйте їх.
  • Unless = if not; ніколи не паруйте його з другим негативним.
  • На всякий випадок - це заходи безпеки, а не умова.
  • Залишити другу умову для гіпотетичних обговорень проекту.

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

На практиці: Навігація нюансів для не-народжені мовці

Розуміння умовних речень не тільки про знання граматичних правил; це про передачу точного наміру в технічному контексті. Для не-рідних носіїв англійської мови, це може бути особливо складним завданням, тому що тонкі відмінності у фразування мають значну вагу. Розглянемо звичайний сценарій: ви переглядаєте запит на захоплення, надісланий колегою. У описі PR написано: « Якщо ми реалізуємо цю можливість, сервер зазнає аварії ». Хоча граматично це правильний опис, але він не є чітким і може призвести до непотрібних переробок. Проблема не в тому, чи реалізація призведе до аварії - це те, що твердження представляє передбачення як певність. Краще вказати це як спостереження або потенційний результат: « Ми спостерігали, що реалізація цієї можливості * може * призвести до аварії сервера за певних умов навантаження ». Це додавання негайно вводить ступінь обережності і запрошує до подальшого дослідження, а не до негайного виклику попередження.

Аналогічно, в розмовах Slack, де обговорюються виправлення помилок, такі фрази, як «Якщо я виправлю це, все буде добре», можуть бути проблематичними. Хоча вони мають добрі наміри, вони часто маскують невизначеність або не мають точності, необхідної для ефективного співробітництва. Професійнішим підходом буде: « Після дослідження, я визначив, що виправлення цієї проблеми * зменшить * повідомлену помилку. » У цьому випадку використовується сильніше дієслово — * зменшити * — для передачі очікуваного результату без перебільшення впливу рішення. Ключовим є перейти від простого затвердження того, що може статися, і замість цього зосередитися на описі ймовірних наслідків дії, визнаючи потенційні складності. Це дозволяє більш продуктивні обговорення і зменшує непорозуміння, які можуть виникнути, коли очікування не чітко сформулювати. Пам’ ятайте, технічна документація не просто передає інформацію; вона сприяє розумінню і співпраці в команді.

Інша поширена область плутанини виникає з використанням «unless». Часто перекладається безпосередньо з інших мов, «unless» може звучати надто наголошено в англійській мові. Це часто означає абсолютну заборону — щось, що не повинно відбутися. У технічному тексті, зазвичай, краще використовувати м’ які мови і розглядати альтернативи, наприклад: « Система буде працювати правильно * доки * мережеве з’ єднання стабільне ». Таким чином, ви уникнете надання жорсткого обмеження і дозволите невеликі коливання без виклику помилки. Крім того, при описі очікуваної поведінки, уникайте використання «якщо» в гіпотетичних сценаріях; це має тенденцію звучати надто драматично і менш професійно. Сфокусуйтеся на викладенні умов, які приведуть до конкретних результатів, а не тих, які не приведуть.

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

# Example using `kubectl` to describe a deployment, demonstrating conditional phrasing
kubectl describe deployment my-app --namespace default

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

Про що ця стаття "Граматика для умовних речень в технічних документах: якщо, коли і якщо"?

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

Чи безкоштовна ця стаття?

Так. Усі статті на CoderSlingo, включно з цією, доступні безкоштовно без реєстрації.

Скільки часу займає читання "Граматика для умовних речень в технічних документах: якщо, коли і якщо"?

Приблизно 9 min.