tgoop.com/android_live/966
Last Update:
Паттерн Command
#android
Command — это паттерн проектирования, который может значительно упростить код. На самом деле, не так много разработчиков используют паттерны проектирования у себя в проектах, а зря ведь их использование может сделать код сильно лучше. Вот вам удачный пример использования.
Довольно часто при работе с экранами, вам необходимо передать действия пользователя обратно во ViewModel:
MyModelScreen(
items = item.data,
onSave = viewModel::addMyModel,
modifier = modifier
)
Всё усложняется, когда подобных команд становится больше, и вам требуется передавать не одну, а несколько функций:MyModelScreen(
items = item.data,
onSave = viewModel::onSaveClicked,
onAdd = viewModel::onAddClicked,
onUpdate = viewModel::onTextUpdate,
onDelete = viewModel::onDeleteClicked,
onList = viewModel::onListClicked,
modifier = modifier
)
Паттерн Command поможет упростить эту зависимость и сделать код более читаемым и в итоге он будет похож на первую реализацию вне зависимости от набора методов:MyModelCommandScreen(
items = items.data,
modifier = modifier,
commandProcessor = viewModel::processCommand
)
Подробнее можно почитать тут.
BY Android Live 🤖

Share with your friend now:
tgoop.com/android_live/966