diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/01.md b/src/en/clean-copy/03-Section II. The API Patterns/01.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/01.md rename to src/en/clean-copy/03-Section II. The API Patterns/01.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/02.md b/src/en/clean-copy/03-Section II. The API Patterns/02.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/02.md rename to src/en/clean-copy/03-Section II. The API Patterns/02.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/03.md b/src/en/clean-copy/03-Section II. The API Patterns/03.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/03.md rename to src/en/clean-copy/03-Section II. The API Patterns/03.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/04.md b/src/en/clean-copy/03-Section II. The API Patterns/04.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/04.md rename to src/en/clean-copy/03-Section II. The API Patterns/04.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/05.md b/src/en/clean-copy/03-Section II. The API Patterns/05.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/05.md rename to src/en/clean-copy/03-Section II. The API Patterns/05.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/06.md b/src/en/clean-copy/03-Section II. The API Patterns/06.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/06.md rename to src/en/clean-copy/03-Section II. The API Patterns/06.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/07.md b/src/en/clean-copy/03-Section II. The API Patterns/07.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/07.md rename to src/en/clean-copy/03-Section II. The API Patterns/07.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/08.md b/src/en/clean-copy/03-Section II. The API Patterns/08.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/08.md rename to src/en/clean-copy/03-Section II. The API Patterns/08.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/09.md b/src/en/clean-copy/03-Section II. The API Patterns/09.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/09.md rename to src/en/clean-copy/03-Section II. The API Patterns/09.md diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/10.md b/src/en/clean-copy/03-Section II. The API Patterns/10.md similarity index 98% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/10.md rename to src/en/clean-copy/03-Section II. The API Patterns/10.md index dc17b73..0be7098 100644 --- a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/10.md +++ b/src/en/clean-copy/03-Section II. The API Patterns/10.md @@ -94,7 +94,7 @@ However, upon closer examination all these conclusions seem less viable: * Finally, the naïve approach of organizing collaborative editing by allowing conflicting operations to be carried out if they don't touch the same fields works only if the changes are transitive. In our case, they are not: the result of simultaneously removing the first element in the list and editing the second one depends on the execution order. * Often, developers try to reduce the outgoing traffic volume as well by returning an empty server response for modifying operations. Therefore, two clients editing the same entity do not see the changes made by each other until they explicitly refresh the state, which further increases the chance of yielding highly unexpected results. -A **more consistent solution** is to split an endpoint into several idempotent sub-endpoints, each having its own independent identifier and/or address (which is usually enough to ensure the transitivity of the operations). This approach aligns well with the decomposition principle we discussed in the “[Isolating Responsibility Areas](#api-design-isolating-responsibility)” chapter. +A **more consistent solution** is to split an endpoint into several idempotent sub-endpoints, each having its own independent identifier and/or address (which is usually enough to ensure the transitivity of independent operations). This approach aligns well with the decomposition principle we discussed in the “[Isolating Responsibility Areas](#api-design-isolating-responsibility)” chapter. ``` // Creates an order diff --git a/src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/11.md b/src/en/clean-copy/03-Section II. The API Patterns/11.md similarity index 100% rename from src/en/clean-copy/03-[Work in Progress] Section II. The API Patterns/11.md rename to src/en/clean-copy/03-Section II. The API Patterns/11.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/01.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/01.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/01.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/01.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/02.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/02.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/02.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/02.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/03.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/03.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/03.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/03.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/04.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/04.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/04.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/04.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/05.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/05.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/05.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/05.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/06.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/06.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/06.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/06.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/07.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/07.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/07.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/07.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/08.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/08.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/08.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/08.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/09.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/09.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/09.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/09.md diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/10.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/10.md similarity index 97% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/10.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/10.md index 9d07fbe..7496d54 100644 --- a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/10.md +++ b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/10.md @@ -91,7 +91,7 @@ PATCH /v1/orders/{id} * наконец, подобная наивная концепция организации совместного доступа работает ровно до того момента, пока изменения транзитивны, т.е. результат не зависит от порядка выполнения операций (в нашим примере это уже не так — операции удаления первого элемента и редактирования первого элемента нетранзитивны); * кроме того, часто в рамках той же концепции экономят и на исходящем трафике, возвращая пустой ответ сервера для модифицирующих операций; таким образом, два клиента, редактирующих одну и ту же сущность, не видят изменения друг друга, что ещё больше повышает вероятность получить совершенно неожиданные результаты. -**Более консистентное решение**: разделить эндпойнт на несколько идемпотентных суб-эндпойнтов, имеющих независимые идентификаторы и/или адреса (чего обычно достаточно для обеспечения транзитивности операций). Этот подход также хорошо согласуется с принципом декомпозиции, который мы рассматривали в предыдущем главе [«Разграничение областей ответственности»](#api-design-isolating-responsibility). +**Более консистентное решение**: разделить эндпойнт на несколько идемпотентных суб-эндпойнтов, имеющих независимые идентификаторы и/или адреса (чего обычно достаточно для обеспечения транзитивности независимых операций). Этот подход также хорошо согласуется с принципом декомпозиции, который мы рассматривали в предыдущем главе [«Разграничение областей ответственности»](#api-design-isolating-responsibility). ``` // Создаёт заказ из двух напитков diff --git a/src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/11.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/11.md similarity index 100% rename from src/ru/clean-copy/03-[В разработке] Раздел II. Паттерны дизайна API/11.md rename to src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/11.md