# Effective Kotlin Item 46: Avoid member extensions

DevFeed: [Effective Kotlin Item 46: Avoid member extensions](<https://devfeed.tech/articles/effective-kotlin-item-46-avoid-member-extensions-39283.md>)

Original publisher: [Read original article](<https://kt.academy/article/ek-member-extensions>)

Published: 2021-07-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [Kt. Academy](<https://devfeed.tech/sources/kt-academy.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [function](<https://devfeed.tech/topics/function.md>), [interface](<https://devfeed.tech/topics/interface.md>)

Tags: [dsls](<https://devfeed.tech/tags/dsls.md>), [extension-function](<https://devfeed.tech/tags/extension-function.md>), [function](<https://devfeed.tech/tags/function.md>), [integration-test](<https://devfeed.tech/tags/integration-test.md>), [interface](<https://devfeed.tech/tags/interface.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [visibility-modifier](<https://devfeed.tech/tags/visibility-modifier.md>), [workshop-learning-programming](<https://devfeed.tech/tags/workshop-learning-programming.md>)

## AI overview

This article explains how Kotlin member extension functions work and why they are generally discouraged. It recommends controlling visibility with visibility modifiers and identifies DSL builders, scope-related functions, and some integration test patterns as appropriate exceptions.

## Source excerpt

What member extensions are, how they are possible and why we should avoid using them.