До вмісту
L-SYSTEM

Анатомія умовного речення: дві клаузи, одне речення

Прев’ю-юніт: цей юніт відкритий і без запису на курс. Решта — після запису.

Пояснення — вашою мовою: їх дає асистент. Вчить мови: англійська · Матеріал: російська · Іспит: англійська, без перекладу Як під’єднати асистента

Анатомія умовного речення

Умовне речення складається з двох частин — клауз:

  • if-клауза — умова;
  • головна частина (result clause) — те, що з умови випливає.
If the migration fails,        we roll back automatically.
└──── if-клауза ────┘          └──── главная часть ────┘

Жодна частина не живе окремо. If the migration fails залишає читача в очікуванні; we roll back automatically граматично самостійна, але нічого не каже про те, коли.

Порядок можна змінити

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

Порядок Приклад Акцент
Спочатку умова If the migration fails, we roll back automatically. на ризику
Спочатку результат We roll back automatically if the migration fails. на захисті

У статусі для команди ви напишете перше. У документації, що описує функцію, — друге.

Правило коми

Правило одне, і його варто вивчити, бо воно механічне:

if-клауза перша → кома. Головна частина перша → коми немає.

  • ✅ If the build is red, don't merge.
  • ✅ Don't merge if the build is red.
  • ❌ Don't merge, if the build is red.
  • ❌ If the build is red don't merge.

Опора на російську. Російська пунктуація ставить кому перед «если» завжди: «Не мержи, если сборка красная». Англійська — ні: коли умова стоїть другою, слово if саме позначає межу, і кома зайва. Ця помилка тримається в сильних учнів найдовше — саме тому, що російське правило спрацьовує автоматично.

q Что стоит первым? a if-клауза If the build is red, don't merge. q->a условие b главная часть Don't merge if the build is red. q->b результат ca ставим запятую a->ca cb запятой нет — не переносите русское правило b->cb
ІлюстраціяСхема: ставить ли запятую — зависит от того, что стоит первым
Опис

Ромб с вопросом «Что стоит первым?». Стрелка «условие» ведёт к блоку «if-клауза: If the build is red, don't merge.», под ним — «ставим запятую». Стрелка «результат» ведёт к блоку «главная часть: Don't merge if the build is red.», под ним — «запятой нет — не переносите русское правило». Схема сводит правило к одному вопросу о порядке частей.

Час дієслова — не час події

Це одна думка, яка відкриває весь курс.

Час дієслова (tense) — форма: fails, failed, had failed. Час події (time) — коли це відбувається: зараз, учора, наступного вівторка.

В умовних реченнях вони розходяться:

  • If it rains tomorrow, the outdoor stand-up is cancelled. — present (rains), а час — майбутній.
  • If we had more staging capacity, we would test this properly. — past (had), а час — теперішній. Ідеться про сьогоднішні потужності, а не про торішні.

Що ж тоді виражає зсув часу назад? Дистанцію від реальності. Present — реально можливе. Past — уявне зараз. Past perfect — уявне в минулому, те, чого вже не було.

Разворот скетчбука: слева в акварели инженер за рабочим столом, справа бледным карандашом — она же на пляже
ІлюстраціяРазворот скетчбука: слева в акварели инженер за рабочим столом, справа бледным карандашом — она же на пляже
Опис

Раскрытый старый скетчбук на грубом деревянном столе. Левая страница в тёплой акварели: молодая женщина в зелёном джемпере сидит за рабочим столом с ноутбуком и кружкой, за окном дождь. Правая страница нарисована только бледным карандашом, без цвета: та же женщина отдыхает в шезлонге у моря под зонтом, рядом на песке лежит закрытый блокнот. Это ключ ко всему курсу: акварель — реальность («сейчас я работаю»), голый карандаш — воображаемое («If I had a week off, I would be at the sea»). Past simple had здесь про сегодня, а не про прошлое. Рисунок не показывает саму форму глагола — только, что реально, а что нет.

Так влаштовані всі малюнки курсу: акварель — реальність, блідий олівець — уявне. Тому тип не можна «зчитати» з форми дієслова. Треба запитати, що мовець стверджує про світ. Цього — а не таблиці часів — і вчить курс.

Чотири традиційні типи

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

Назва Схема Приклад
Zero if + present, present If the cache key is missing, the service queries the database.
First if + present, will + infinitive If we merge today, we will ship on Friday.
Second if + past simple, would + infinitive If we had a second reviewer, the queue would move faster.
Third if + past perfect, would have + past participle If we had pinned the version, the build would not have broken.

А тепер чотири звичайні речення з робочого тижня в ENGAGE, які в жоден тип не вміщаються:

  • If the retry succeeded, the alert must have been noise. (висновок про минуле — u08)
  • If the load test passes, deploy to production. (інструкція — u03)
  • If you assess the data thoroughly, you might find the root cause. (послаблений прогноз — u07)
  • If we had pinned the version, the build would not be broken right now. (причина в минулому, наслідок зараз — u06)

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

Що насправді змінюється

Три речі, і змінюються вони майже незалежно:

  1. Наскільки реальна умова? — факт, імовірне майбутнє, малоймовірна гіпотеза чи неможливе.
  2. Що робить мовець? — стверджує, прогнозує, робить висновок, радить, розпоряджається, шкодує.
  3. Наскільки він упевнений? — will / should / might в одному й тому самому місці дають дуже різний ступінь упевненості.

Далі курс проходить цими трьома осями по черзі.

Завдання

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

  1. We escalate to the on-call lead if the error rate stays above two percent for five minutes. Какая часть — if-клауза?

  2. If you had joined the call, you would have heard the client's actual deadline. Какая часть — главная (result clause)?

  3. Переставьте части так, чтобы главная часть стояла первой, и расставьте знаки. Напишите предложение целиком, с заглавной буквы и точкой в конце: If the pipeline is green, the artefact is published automatically.

  4. Переставьте части так, чтобы if-клауза стояла первой, и расставьте знаки. Напишите предложение целиком, с заглавной буквы и точкой в конце: The scheduler drops the job if the worker does not respond within thirty seconds.

  5. Переставьте части так, чтобы главная часть стояла первой, и расставьте знаки. Напишите предложение целиком, с заглавной буквы и точкой в конце: If we had known about the rate limit, we would have batched the requests.

  6. Какое предложение пунктуировано верно?

  7. Какое предложение пунктуировано верно?

  8. Вы переводите фразу из раннбука: «Откатываем релиз, если падает больше 1 % запросов». Какой перевод пунктуирован верно?

  9. If the disk filled up, the log rotation was misconfigured. К какому времени относится это предложение, если не смотреть на форму глагола?

  10. If I had root access, I would check that myself. К какому времени относится это предложение?

  11. If the release is signed off today, QA starts tomorrow. К какому времени относится условие?

  12. If we had pinned the version, the build would not be broken right now. Как распределено время?

  13. Посмотрите на разворот с инженером: слева — рабочий стол в цвете, справа — пляж бледным карандашом. Что на рисунке реально?

  14. Какое предложение точнее всего подходит к развороту с инженером?

  15. If the cache key is missing, the service queries the database. Какой ярлык подходит?

  16. If the retry succeeded, the alert must have been noise. Какой ярлык подходит?

  17. Возьмите систему, которую хорошо знаете (фреймворк, пайплайн CI, свой проект). Напишите два условных предложения о её поведении: одно с if-клаузой в начале, другое — с главной частью в начале.

    Це завдання судить рубрика автора — її розбирає асистент, а не сайт.