В чем разница между View и Fragment

«В чем разница между View и Fragment» — вопрос из категории Android компоненты, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

View — это базовый элемент UI, который рисуется на экране (например, Button, TextView). Он отвечает за отрисовку и обработку событий (клики, касания).

Fragment — это модульный кусок логики и UI, который может жить внутри Activity. Он имеет собственный жизненный цикл, может содержать несколько View и управлять ими. Фрагменты используются для модульности и переиспользования интерфейса.

Пример:

// View (просто кнопка)
val button = Button(context).apply { 
    text = "Click me" 
}

// Fragment (может содержать кнопку и логику)
class MyFragment : Fragment() {
    override fun onCreateView(...): View {
        return Button(requireContext()).apply { 
            text = "Fragment Button" 
        }
    }
}

Ключевые отличия:

  • View — часть UI, Fragment — контейнер для UI + логики.
  • Fragment имеет жизненный цикл, View — нет.
  • Fragment может быть добавлен/удален динамически в Activity.