«Предполагаются ли флаги функций для смягчения последствий рисков, быстрых обратной связи, разработки для гипотезы или ярусов подписки?»
да.
Флаги функций могут быть использованы для включения многих различных поведений в конечном продукте, они могут дать владельцам продукта мелкозернистым контролем над поведением продукта и доступность пользователей как на протяжении всей жизненного цикла разработки, а также в продукте с обращенным лицом. Они являются ценной техникой для власти более эффективные дежолки и приводят инновации на протяжении всего процесса развития и доставки.
Общие типы флагов функций включают в себя:
Аварийная кнопка
Флаг функции — это условие в вашем коде, а затем/затем для двух разных вариантов. У самых простых, флаг функции может быть использован для флага нового или рискованного поведения. Великая вещь о коммутаторе убийства в том, что они могут быть доступны в продукте отдельно от развертывания.
Вы можете включить новую функцию в любое время. Если функция не ведет себя, как и ожидалось, можно быстро отключить его. Это позволяет развивать другие функции, чтобы продолжать, не заставляя полный откат вашего производственного кода.
Благодаря чему возможности функции вы смягчаете риск, делая каждую функцию инкапсулированной и контролируемой так, что если функция имеет проблемы в производстве, их можно отключить, а не развертывание обратно.
Бета-обратная связь/релиз Canary
Для более быстрой обратной связи, за пределами выключателя включения/выключения, вы можете управлять на очень гранулированном уровне, который видит новую функцию. Это позволяет вам разоблачить новую функцию для расширенной группы «дружественных» клиентов, которые готовы попробовать некоторые новые функции, которые вы развиваете. Эти бета-тестеры могут просмотреть функцию и принимать его для спина и дать вам большую обратную связь, которая не может быть рассмотрена при построении исходных случаев использования для продукта.
Разработка, ориентированная на гипотезами & A/B
Флаги функций развития гипотезы, ориентированные на гипотезу также хороши для контроля длительного доступа. Они помогают доказать определенные метрики, имея возможность измерить поведение конечного пользователя в зависимости от того, включена ли функция для группы пользователей и измерения их поведения. Например, если у вас есть функция, что только расширенные пользователи должны получить доступ, вы можете использовать функцию, чтобы иметь другой опыт для «Newbie» VS «Power Power». Вы можете использовать также флаги функций для управления локализацией, благодаря различным правилам по всему миру, вы можете обнаружить, что вам необходимо включить функции в одной стране и отключить ее в других, чтобы оставаться в соответствии с нормативным соблюдением для этой конкретной нации.
Планы подписки и разрешения переключаются
Вы можете объединить несколько флагов, чтобы сформировать подписку, например, вы можете иметь бронзу, серебро и золотые уровни и включить различные наборы функций, которые каждый план подписки может быть доступен для них, основываясь на какой подписке связан с их учетной записью. Это модель, которую многие из приложений «Freemium» подписываются на, где каждый предоставляется доступ к базовому набору функций, но другие функции зарезервированы только для клиентов, которые находятся в платных группах.
Управление техническими долгами флагов функций
Флаги функций имеют тенденцию быстро размножаться, особенно при первом введенном. Переключение необходимо рассматривать как технические долги, и они приходят с стоимостью для переноски, поэтому важно также держать их от распространения в приложении.
Чтобы сохранить количество функций, флаги управляемых, команда должна быть активна в удалении флагов функций, которые больше не нужны. Как только конкретная чесоварка была включена в производство и доказала устойчивую, ее следует удалить и истек. Другие методы могут включать в себя добавление управления в соответствии с вашими правилами развития, поместив ограничение на количество флагов функций. Система имеет возможность иметь. После того, как предел достигнут, чтобы добавить другой флаг функции, вам нужно будет просмотреть текущий набор и удалить некоторые существующие флаги, чтобы освободить место под крышкой.
Пост Флаги функций как постоянный инструмент выпуска доставки появился в первую очередь Опыт папы внутренних империи .
Оригинал: «https://dev.to/iedaddy/feature-flags-as-a-continuous-delivery-release-tool-3gdm»