diff --git a/development-principles.md b/development-principles.md index 0bc49fa..b2a4761 100644 --- a/development-principles.md +++ b/development-principles.md @@ -1,39 +1,39 @@ # Принципы разработки -- [Основные принципы](https://github.com/avito-tech/playbook/edit/master/development-principles.md#основные-принципы) - - [Мы отвечаем за работоспособность своей системы](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-отвечаем-за-работоспособность-своей-системы) - - [Ваша система – это ответственность надолго](https://github.com/avito-tech/playbook/edit/master/development-principles.md#ваша-система--это-ответственность-надолго) - - [Мы начинаем реализацию с проектирования и учитываем текущую архитектуру](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-начинаем-реализацию-с-проектирования-и-учитываем-текущую-архитектуру) - - [Мы избегаем ненужной сложности](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-избегаем-ненужной-сложности) - - [Мы используем готовые инструменты и не изобретаем велосипеды](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-используем-готовые-инструменты-и-не-изобретаем-велосипеды) - - [Мы относимся к чужому коду с уважением](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-относимся-к-чужому-коду-с-уважением) - - [Если что-то становится ненужным, мы это удаляем](https://github.com/avito-tech/playbook/edit/master/development-principles.md#если-что-то-становится-ненужным-мы-это-удаляем) -- [Проектирование](https://github.com/avito-tech/playbook/edit/master/development-principles.md#проектирование) - - [Мы избегаем жёсткой связанности (coupling)](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-избегаем-жёсткой-связанности-coupling) - - [Мы не завязываемся на детали реализации](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-не-завязываемся-на-детали-реализации) -- [Интерфейсы](https://github.com/avito-tech/playbook/edit/master/development-principles.md#интерфейсы) - - [Внешний интерфейс важнее внутренней реализации](https://github.com/avito-tech/playbook/edit/master/development-principles.md#внешний-интерфейс-важнее-внутренней-реализации) - - [Мы соблюдаем обратную совместимость](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-соблюдаем-обратную-совместимость) - - [Мы делаем интерфейсы простыми и удобными для использования](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-делаем-интерфейсы-простыми-и-удобными-для-использования) -- [Документация](https://github.com/avito-tech/playbook/edit/master/development-principles.md#документация) - - [Мы документируем интерфейсы, особенности работы системы, нефункциональные требования — и держим их в актуальном состоянии ](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-документируем-интерфейсы-особенности-работы-системы-нефункциональные-требования--и-держим-их-в-актуальном-состоянии) -- [Работа с данными](https://github.com/avito-tech/playbook/edit/master/development-principles.md#работа-с-данными) - - [Мы не пишем бизнес-логику на стороне базы](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-не-пишем-бизнес-логику-на-стороне-базы) - - [Мы используем шину данных только для уведомления о событиях](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-используем-шину-данных-только-для-уведомления-о-событиях) - - [Мы кэшируем данные там, где это необходимо](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-кэшируем-данные-там-где-это-необходимо) - - [У данных есть только один источник правды](https://github.com/avito-tech/playbook/edit/master/development-principles.md#у-данных-есть-только-один-источник-правды) - - [Мы не храним данные в stateless-компонентах, а используем персистентные хранилища](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-не-храним-данные-в-stateless-компонентах-а-используем-персистентные-хранилища) - - [Мы соблюдаем обратную совместимость миграций](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-соблюдаем-обратную-совместимость-миграций) -- [Взаимодействие сервисов](https://github.com/avito-tech/playbook/edit/master/development-principles.md#взаимодействие-сервисов) - - [По возможности, мы используем асинхронное взаимодействие](https://github.com/avito-tech/playbook/edit/master/development-principles.md#по-возможности-мы-используем-асинхронное-взаимодействие) - - [Мы пишем наш код так, чтобы система продолжала работать в случае сбоев (fault tolerance)](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-пишем-наш-код-так-чтобы-система-продолжала-работать-в-случае-сбоев-fault-tolerance) - - [Мы запрашиваем только необходимые данные](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-запрашиваем-только-необходимые-данные) -- [Тестирование](https://github.com/avito-tech/playbook/edit/master/development-principles.md#тестирование) - - [Любые изменения должны легко тестироваться автоматически](https://github.com/avito-tech/playbook/edit/master/development-principles.md#любые-изменения-должны-легко-тестироваться-автоматически) - - [Что не протестировано – то не работает. Что не работает – не катим](https://github.com/avito-tech/playbook/edit/master/development-principles.md#что-не-протестировано--то-не-работает-что-не-работает--не-катим) - - [Мы работаем по Zero Bug Policy](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-работаем-по-zero-bug-policy) -- [Эксплуатация](https://github.com/avito-tech/playbook/edit/master/development-principles.md#эксплуатация) - - [Мы всегда в курсе, что происходит с нашими системами](https://github.com/avito-tech/playbook/edit/master/development-principles.md#мы-всегда-в-курсе-что-происходит-с-нашими-системами) +- [Основные принципы](https://github.com/avito-tech/playbook/blob/master/development-principles.md#основные-принципы) + - [Мы отвечаем за работоспособность своей системы](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-отвечаем-за-работоспособность-своей-системы) + - [Ваша система – это ответственность надолго](https://github.com/avito-tech/playbook/blob/master/development-principles.md#ваша-система--это-ответственность-надолго) + - [Мы начинаем реализацию с проектирования и учитываем текущую архитектуру](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-начинаем-реализацию-с-проектирования-и-учитываем-текущую-архитектуру) + - [Мы избегаем ненужной сложности](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-избегаем-ненужной-сложности) + - [Мы используем готовые инструменты и не изобретаем велосипеды](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-используем-готовые-инструменты-и-не-изобретаем-велосипеды) + - [Мы относимся к чужому коду с уважением](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-относимся-к-чужому-коду-с-уважением) + - [Если что-то становится ненужным, мы это удаляем](https://github.com/avito-tech/playbook/blob/master/development-principles.md#если-что-то-становится-ненужным-мы-это-удаляем) +- [Проектирование](https://github.com/avito-tech/playbook/blob/master/development-principles.md#проектирование) + - [Мы избегаем жёсткой связанности (coupling)](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-избегаем-жёсткой-связанности-coupling) + - [Мы не завязываемся на детали реализации](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-не-завязываемся-на-детали-реализации) +- [Интерфейсы](https://github.com/avito-tech/playbook/blob/master/development-principles.md#интерфейсы) + - [Внешний интерфейс важнее внутренней реализации](https://github.com/avito-tech/playbook/blob/master/development-principles.md#внешний-интерфейс-важнее-внутренней-реализации) + - [Мы соблюдаем обратную совместимость](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-соблюдаем-обратную-совместимость) + - [Мы делаем интерфейсы простыми и удобными для использования](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-делаем-интерфейсы-простыми-и-удобными-для-использования) +- [Документация](https://github.com/avito-tech/playbook/blob/master/development-principles.md#документация) + - [Мы документируем интерфейсы, особенности работы системы, нефункциональные требования — и держим их в актуальном состоянии ](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-документируем-интерфейсы-особенности-работы-системы-нефункциональные-требования--и-держим-их-в-актуальном-состоянии) +- [Работа с данными](https://github.com/avito-tech/playbook/blob/master/development-principles.md#работа-с-данными) + - [Мы не пишем бизнес-логику на стороне базы](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-не-пишем-бизнес-логику-на-стороне-базы) + - [Мы используем шину данных только для уведомления о событиях](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-используем-шину-данных-только-для-уведомления-о-событиях) + - [Мы кэшируем данные там, где это необходимо](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-кэшируем-данные-там-где-это-необходимо) + - [У данных есть только один источник правды](https://github.com/avito-tech/playbook/blob/master/development-principles.md#у-данных-есть-только-один-источник-правды) + - [Мы не храним данные в stateless-компонентах, а используем персистентные хранилища](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-не-храним-данные-в-stateless-компонентах-а-используем-персистентные-хранилища) + - [Мы соблюдаем обратную совместимость миграций](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-соблюдаем-обратную-совместимость-миграций) +- [Взаимодействие сервисов](https://github.com/avito-tech/playbook/blob/master/development-principles.md#взаимодействие-сервисов) + - [По возможности, мы используем асинхронное взаимодействие](https://github.com/avito-tech/playbook/blob/master/development-principles.md#по-возможности-мы-используем-асинхронное-взаимодействие) + - [Мы пишем наш код так, чтобы система продолжала работать в случае сбоев (fault tolerance)](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-пишем-наш-код-так-чтобы-система-продолжала-работать-в-случае-сбоев-fault-tolerance) + - [Мы запрашиваем только необходимые данные](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-запрашиваем-только-необходимые-данные) +- [Тестирование](https://github.com/avito-tech/playbook/blob/master/development-principles.md#тестирование) + - [Любые изменения должны легко тестироваться автоматически](https://github.com/avito-tech/playbook/blob/master/development-principles.md#любые-изменения-должны-легко-тестироваться-автоматически) + - [Что не протестировано – то не работает. Что не работает – не катим](https://github.com/avito-tech/playbook/blob/master/development-principles.md#что-не-протестировано--то-не-работает-что-не-работает--не-катим) + - [Мы работаем по Zero Bug Policy](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-работаем-по-zero-bug-policy) +- [Эксплуатация](https://github.com/avito-tech/playbook/blob/master/development-principles.md#эксплуатация) + - [Мы всегда в курсе, что происходит с нашими системами](https://github.com/avito-tech/playbook/blob/master/development-principles.md#мы-всегда-в-курсе-что-происходит-с-нашими-системами) ## Основные принципы