An Entity of Type: topical concept, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

A feature toggle in software development provides an alternative to maintaining multiple feature branches in source code. A condition within the code enables or disables a feature during runtime. In agile settings the toggle is used in production, to switch on the feature on demand, for some or all the users. Thus, feature toggles do make it easier to release often. Advanced roll out strategies such as canary roll out and A/B testing are easier to handle. A feature toggle is also called feature switch, feature flag, feature gate, feature flipper, or conditional feature.

Property Value
dbo:abstract
  • Feature Toggle (von engl. feature = Eigenschaft, Fähigkeit, Funktion; Toggle = Schalter) oder Feature Flag ist eine Programmiertechnik in der Softwareentwicklung, bei der ein Feature oder eine Funktionalität zur Laufzeit der Software an- oder ausgeschaltet werden kann. Martin Fowler unterscheidet zwischen: * release toggles – im Kontext des Continuous Delivery werden unfertige Features per Toggle ausgeschaltet, und erst wenn das Feature fertig ist, aktiviert. Der Quellcode wird allerdings schon früher in den Master-Branch übernommen und in die verschiedenen Stages deployed. * experiment toggles – der Klassiker, zum Beispiel für A/B-Tests * ops toggles – damit sind Schalter unter betrieblichen Aspekten gemeint. Wenn z. B. neue Features ausgerollt werden, und das Performanceverhalten der Anwendung noch unklar ist, kann das Feature einfach ausgeschaltet werden, falls Probleme im Betrieb auftreten. Soweit alles stabil läuft, werden die Schalter entfernt. * permission toggles – gewisse Feature werden nur Premium- bzw. zahlenden Kunden bereitgestellt, oder Benutzern mit erweiterten Rechten. Weiterhin unterscheidet Fowler zwischen statischen und dynamischen Toggles, sowie zwischen kurzlebigen (transient) und langlebigen (long-lived) Toggles, was beides maßgeblich ist, wie und wo im Quellcode ein Toggle letztendlich implementiert ist. Die Verwendung von Feature Toggles ist in vielen gängigen Programmiersprachen möglich, wie C# oder Java. Für manche gibt es auch Bibliotheken, die es besonders unterstützen. Feature Toggles werden zum Beispiel bei der Programmierung erfolgreicher Websites und Applikationen verwendet, die mit vielen Entwicklungsteams arbeiten. Ein Beispiel ist Spotify. (de)
  • A feature toggle in software development provides an alternative to maintaining multiple feature branches in source code. A condition within the code enables or disables a feature during runtime. In agile settings the toggle is used in production, to switch on the feature on demand, for some or all the users. Thus, feature toggles do make it easier to release often. Advanced roll out strategies such as canary roll out and A/B testing are easier to handle. Even if new releases are not deployed to production continuously, continuous delivery is supported by feature toggles. The feature is integrated into the main branch before it is completed. The version is deployed into a test environment once, the toggle allows to turn the feature on, and test it. Software integration cycles get shorter, and a version ready to go to production can be provided. The third use of the technique is to allow developers to release a version of a product that has unfinished features. These unfinished features are hidden (toggled) so that they do not appear in the user interface. There is less effort to merge features into and out of the productive branch, and hence allows many small incremental versions of software. A feature toggle is also called feature switch, feature flag, feature gate, feature flipper, or conditional feature. (en)
  • フィーチャートグル(feature toggle、機能トグル。別名としてfeature switch(機能スイッチ), feature flag(機能フラグ), feature flipper(機能切替スイッチ), conditional feature(条件付機能)など)は、ソフトウェア開発 において、複数のソースコードのブランチ(機能ブランチ)を維持するのとは別の方法を提供しようとする手法である。 継続的リリースと継続的デプロイは、コーディングについてのフィードバックを開発者たちに頻繁に提供してくれる。これを実現するには、複数の開発者たちのコードを可能な限り早期に統合することが必要になる。機能ブランチはこの過程に抜け道を作ってしまう。機能トグルを利用すれば、開発者たちはメインのトラックに頻繁にソースを統合しつつも、開発中の機能へ入っていける実行経路のトグルを「OFF」にしておけば、その機能は「死んだ」状態になる。新しい実行経路を有効にするための労力は、単にトグルを「ON」に設定するだけなので、十分に小さい。 この技法により開発者たちは、開発未了の機能を含んだバージョンを製品としてリリースすることが可能になる。これらの開発未了の機能はトグルをOFFすることによって隠されるので、ユーザインタフェース上には表示されない。これにより、日常的にブランチやマージする労力を払うことなく、多くの小さな変更ごとにソフトウェアのバージョンを刻みながら、常にリリースすることが可能になる。 機能フラグの別の利点は、カナリアリリースである。 カナリアリリース(canary release。カナリア開発あるいはカナリアローンチ(canary launch)とも呼ばれる)とは、システム全体への反応を評価するために、少数のユーザーに対して機能を公開することである。カナリアリリースにより、機能をゆっくり公開して、実際のユーザ(カナリアたち)からの反応を測定し、危険の兆候を早期に探すことが可能になる。その機能があまり良くなければ、その機能は差し戻す事もできる。カナリアリリースは、より機敏に動くために継続的デリバリーを実践しているアジャイル開発組織のベストプラクティスである 。 このパターンは多くのプログラミング言語で非常にシンプルに実装できるが、更に利用を単純にするために利用できるライブラリも存在する。 マーティン・ファウラーは機能トグルは最後の手段であるべきとして、機能トグルを利用する前に次のような手段を検討すべきと述べている。 * 機能を小さく分割して段階的にリリースしていく方法 * 新機能へのエントリーポイントとなるUIを最後に作る方法 フィーチャートグルはFlickr、 Disqus、 Etsy、reddit、 Gmail、Netflixなどの多くの大きなウェブサイトで使われている。 Java、Angular、Pythonでフィーチャートグルやフィーチャーフラグを実現できるオープンソースの解決策は多くある。SAASプラットフォームのためのフィーチャートグルとしては、LaunchDarkly が最も広く使われている。これはJava, JavaScript, PHP, Python, Go, Node.JS, .NET, Ruby, Python Twisted, Android, iOSのためのフィーチャートグルを提供する。 (ja)
  • Feature toggle, em português alternância de recursos (também chamado de feature switch, feature flag, feature gate, feature flipper, conditional feature etc.) é uma técnica de desenvolvimento de software que tenta fornecer uma alternativa para manter várias no código-fonte (conhecidos como ramificações de recurso), de forma que um possa ser testado antes mesmo de ser concluído e estar pronto para o lançamento. Um alternador de recurso é usado para ocultar, habilitar ou desabilitar o recurso durante o tempo de execução. Por exemplo, durante o processo de desenvolvimento, um desenvolvedor pode habilitar o recurso para teste e desabilitá-lo para outros usuários. A liberação contínua e a fornecem aos desenvolvedores um feedback rápido sobre seu código. Isso requer a integração de suas alterações de código o mais cedo possível. Ramificações de recursos introduzem um desvio para este processo. A alternância de recursos é uma técnica importante para entrega contínua. A técnica permite que os desenvolvedores liberem uma versão de um produto que possui recursos inacabados. Esses recursos inacabados são ocultados (alternados) para que não apareçam na interface do usuário. Isso permite que muitas pequenas versões incrementais de software sejam entregues sem o custo de ramificações e mesclagens constantes. Alternâncias de recursos podem permitir ciclos de integração de software mais curtos. Uma equipe trabalhando em um projeto pode usar alternadores de recursos para acelerar o processo de desenvolvimento, que também pode incluir o código incompleto. (pt)
  • Feature toggle (також feature switch, feature flag, feature flipper, conditional feature, etc.) — це техніка в розробці програмного забезпечення, яка використовується для того щоб приховати функціонал під час виконання програми. (uk)
  • 特性切换或称功能切换,英语:feature toggle、feature switch、feature flag、feature flipper或conditional feature等。它是软件开发中的一种技术,是替代维护多个源代码分支(也称特性分支)的一种方案,这使特性在完成并正式发布前也可以得到测试。特性切换是在运行期间隐藏、启用或禁用特定功能。例如在开发过程中,开发人员可以启用功能以进行测试,而其他用户不会被启用该功能和受到它的影响。 持续发布和持續交付为开发人员提供了有关其代码的快速反馈,而这要求尽早地集成其代码更改。特性分支为此过程引入了一个旁路。特性切换是实现持續交付的一项重要技术。 这种技术使开发人员得以发布包含未完成功能的产品版本。这些未完成的功能被隐藏或被禁用,因此不会出现在用户界面中。这使软件可以发布很多次小的增量版本,而无需承担不断分支与合并的成本。特性切换使软件集成的周期得以更短。项目团队可以使用特性切换来加速开发过程,因为产品中可以包含默认不启用的未完成代码。 (zh)
dbo:wikiPageID
  • 33193592 (xsd:integer)
dbo:wikiPageLength
  • 8050 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1089831414 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
gold:hypernym
rdf:type
rdfs:comment
  • Feature toggle (також feature switch, feature flag, feature flipper, conditional feature, etc.) — це техніка в розробці програмного забезпечення, яка використовується для того щоб приховати функціонал під час виконання програми. (uk)
  • 特性切换或称功能切换,英语:feature toggle、feature switch、feature flag、feature flipper或conditional feature等。它是软件开发中的一种技术,是替代维护多个源代码分支(也称特性分支)的一种方案,这使特性在完成并正式发布前也可以得到测试。特性切换是在运行期间隐藏、启用或禁用特定功能。例如在开发过程中,开发人员可以启用功能以进行测试,而其他用户不会被启用该功能和受到它的影响。 持续发布和持續交付为开发人员提供了有关其代码的快速反馈,而这要求尽早地集成其代码更改。特性分支为此过程引入了一个旁路。特性切换是实现持續交付的一项重要技术。 这种技术使开发人员得以发布包含未完成功能的产品版本。这些未完成的功能被隐藏或被禁用,因此不会出现在用户界面中。这使软件可以发布很多次小的增量版本,而无需承担不断分支与合并的成本。特性切换使软件集成的周期得以更短。项目团队可以使用特性切换来加速开发过程,因为产品中可以包含默认不启用的未完成代码。 (zh)
  • A feature toggle in software development provides an alternative to maintaining multiple feature branches in source code. A condition within the code enables or disables a feature during runtime. In agile settings the toggle is used in production, to switch on the feature on demand, for some or all the users. Thus, feature toggles do make it easier to release often. Advanced roll out strategies such as canary roll out and A/B testing are easier to handle. A feature toggle is also called feature switch, feature flag, feature gate, feature flipper, or conditional feature. (en)
  • Feature Toggle (von engl. feature = Eigenschaft, Fähigkeit, Funktion; Toggle = Schalter) oder Feature Flag ist eine Programmiertechnik in der Softwareentwicklung, bei der ein Feature oder eine Funktionalität zur Laufzeit der Software an- oder ausgeschaltet werden kann. Martin Fowler unterscheidet zwischen: Weiterhin unterscheidet Fowler zwischen statischen und dynamischen Toggles, sowie zwischen kurzlebigen (transient) und langlebigen (long-lived) Toggles, was beides maßgeblich ist, wie und wo im Quellcode ein Toggle letztendlich implementiert ist. (de)
  • フィーチャートグル(feature toggle、機能トグル。別名としてfeature switch(機能スイッチ), feature flag(機能フラグ), feature flipper(機能切替スイッチ), conditional feature(条件付機能)など)は、ソフトウェア開発 において、複数のソースコードのブランチ(機能ブランチ)を維持するのとは別の方法を提供しようとする手法である。 継続的リリースと継続的デプロイは、コーディングについてのフィードバックを開発者たちに頻繁に提供してくれる。これを実現するには、複数の開発者たちのコードを可能な限り早期に統合することが必要になる。機能ブランチはこの過程に抜け道を作ってしまう。機能トグルを利用すれば、開発者たちはメインのトラックに頻繁にソースを統合しつつも、開発中の機能へ入っていける実行経路のトグルを「OFF」にしておけば、その機能は「死んだ」状態になる。新しい実行経路を有効にするための労力は、単にトグルを「ON」に設定するだけなので、十分に小さい。 このパターンは多くのプログラミング言語で非常にシンプルに実装できるが、更に利用を単純にするために利用できるライブラリも存在する。 マーティン・ファウラーは機能トグルは最後の手段であるべきとして、機能トグルを利用する前に次のような手段を検討すべきと述べている。 (ja)
  • Feature toggle, em português alternância de recursos (também chamado de feature switch, feature flag, feature gate, feature flipper, conditional feature etc.) é uma técnica de desenvolvimento de software que tenta fornecer uma alternativa para manter várias no código-fonte (conhecidos como ramificações de recurso), de forma que um possa ser testado antes mesmo de ser concluído e estar pronto para o lançamento. Um alternador de recurso é usado para ocultar, habilitar ou desabilitar o recurso durante o tempo de execução. Por exemplo, durante o processo de desenvolvimento, um desenvolvedor pode habilitar o recurso para teste e desabilitá-lo para outros usuários. (pt)
rdfs:label
  • Feature Toggle (de)
  • Feature toggle (en)
  • フィーチャートグル (ja)
  • Feature toggle (pt)
  • Feature toggle (uk)
  • 特性切换 (zh)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License