diff --git a/src/ru/clean-copy/03-Раздел II. Обратная совместимость/03.md b/src/ru/clean-copy/03-Раздел II. Обратная совместимость/03.md index 7a5feae..b72c0ca 100644 --- a/src/ru/clean-copy/03-Раздел II. Обратная совместимость/03.md +++ b/src/ru/clean-copy/03-Раздел II. Обратная совместимость/03.md @@ -55,7 +55,7 @@ PUT /v1/partners/{partnerId}/coffee-machines Универсальный паттерн внесения подобных изменений таков: мы должны рассмотреть существующий интерфейс как частный случай некоторого более общего, в котором значения некоторых параметров приняты известными по умолчанию, а потому опущены. Таким образом, внесение изменений всегда происходит в три шага. 1. Явная фиксация программного контракта *в том объёме, в котором она действует на текущий момент*. - 2. Расширение функциональности: добавление нового метода, которые позволяют обойти ограничение, зафиксированное в п. 1. + 2. Расширение функциональности: добавление нового метода, который позволяет обойти ограничение, зафиксированное в п. 1. 3. Объявление существующих вызовов (из п. 1) "хелперами" к новому формату (из п. 2), в которых значение новых опций считается равным значению по умолчанию. На нашем примере с изменением списка доступных опций заказа мы должны поступить следующим образом. @@ -92,4 +92,4 @@ PUT /v1/partners/{partnerId}/coffee-machines **NB**. Замаскировать эту проблему можно так: в какой-то момент собрать все эти «странности» в одном месте и переопределить все значения по умолчанию скопом под одним параметром. Условно говоря, вызов одного метода, например, `POST /use-defaults {"version": "v2"}` переопределяет все значения по умолчанию на более разумные. Это упростит порог входа и уменьшит количество вопросов, но документация от этого станет выглядеть только хуже. -В реальной жизни как-то нивелировать проблему помогает лишь слабая связность объектов, речь о которой пойдёт в следующей главе. \ No newline at end of file +В реальной жизни как-то нивелировать проблему помогает лишь слабая связность объектов, речь о которой пойдёт в следующей главе.