Преимущества - это всегда спорный вопрос. Трудно однозначно сказать, что одно решение однозначно лучше. Так что мы и не старались, а лишь говорили об отличиях. Эффективно задачи умеют решать оба подхода
Это по сути разный слой. У тебя бывает презентер. Бывает модельвью. А тут декларативный движок. У декдаратива есть особенности. Представь себе что у тебя каждый параметр обсеребл и циклы друг на друга. Иногда реактивные связи рвать надо правильно, движки особенно в начале не сразу все отрулиаают. Кстати CSS тоже декларативный язык. А особенность в оптимизации работы слоя. У тебя слой сразу создаётся в динамическом состоянии и ты не пересождаешь слой, а тонко рулишь только изменениями. Прощай Межур, ОнЛайаут, тормозящий тред и проблемы вложенности.
как по мне куда проще и удобней использовать viewmodel в качестве consumer + observable, и через data binding прокидывать все в активити/фрагменты/вьюхи. а бизнес логику уже писать по принципу unidirectional DF. а по поводу MVICore - может и крутая библиотека, но пока там javadoc'а в исходниках нет - использовать ее невозможно! больше на какой-то пет-проект выходного дня похожа чем на серьезный инструмент
Спасибо за интервью. У меня, наверное, как и у многих возник соблазн сделать гибрид с MVVM, где вью будет подписываться на свое состояние во вью модели. Допустим элементов на экране у меня 10. Значит ли это, что я должен изменять создать один большой State в котором будет 10 полей с отдельным State для каждой вью? Или же это будет 10 разных State с 10 подписками на них?
MVI отлично сочетается с MVP и MVVM, так как ключевые элементы в ней - это намерение юзера и состояние UI. Если сосредоточиться именно на на этих ключевых элементах, то границы применения этого подхода расширяются.
Хотелось бы видеть больше материалов по архитектуре, в том числе mvi. Интересно, планирует ли Google или JetBrains собственную реализацию MVI с учетом популярности Jetpack Compose
Не думаю что они будут заниматься именно архитектурой. Они делают технологии и рекомендации дают, но дело каждого выбрать себе что-то. Surf в недалеком будущем будет больше рассказывать про MVI, есть хорошая либа от Аркадия Иванова github.com/arkivanov/MVIKotlin
📰 Telegram канал с новостями для Android Dev - ttttt.me/android_broadcast 💰 Поддержать проект на Boosty boosty.to/androidbroadcast или Patreon bit.ly/2TBOzlu
Пересмотрел спустя полгода, еще раз спасибо )
спасибо за интервью,было Мега интересно)))
Спасибо Аркадию и каналу
Android Broadcast за информацию. Но я не увидел, преимущество MVI над MVVM.
Преимущества - это всегда спорный вопрос. Трудно однозначно сказать, что одно решение однозначно лучше. Так что мы и не старались, а лишь говорили об отличиях. Эффективно задачи умеют решать оба подхода
Это по сути разный слой. У тебя бывает презентер. Бывает модельвью. А тут декларативный движок. У декдаратива есть особенности. Представь себе что у тебя каждый параметр обсеребл и циклы друг на друга. Иногда реактивные связи рвать надо правильно, движки особенно в начале не сразу все отрулиаают. Кстати CSS тоже декларативный язык. А особенность в оптимизации работы слоя. У тебя слой сразу создаётся в динамическом состоянии и ты не пересождаешь слой, а тонко рулишь только изменениями. Прощай Межур, ОнЛайаут, тормозящий тред и проблемы вложенности.
Просмотрел видео, появилось больше вопрос, чем услышал ответов. Тема очень интересна, но много непонятного.
Подобные видосы хотелось бы в комплекте с каким-то полноценным докладом, чтобы быстрее контекст словить и уже обсуждать
Классный эфир, можно повторить. Интересно что за 2 года поменялось в либе и что нового узнал автор.
Наконец то я добрался до этого видео)
как по мне куда проще и удобней использовать viewmodel в качестве consumer + observable, и через data binding прокидывать все в активити/фрагменты/вьюхи. а бизнес логику уже писать по принципу unidirectional DF. а по поводу MVICore - может и крутая библиотека, но пока там javadoc'а в исходниках нет - использовать ее невозможно! больше на какой-то пет-проект выходного дня похожа чем на серьезный инструмент
Спасибо за интервью. У меня, наверное, как и у многих возник соблазн сделать гибрид с MVVM, где вью будет подписываться на свое состояние во вью модели. Допустим элементов на экране у меня 10. Значит ли это, что я должен изменять создать один большой State в котором будет 10 полей с отдельным State для каждой вью? Или же это будет 10 разных State с 10 подписками на них?
Тут вы вольны выбрать подход сами. Архитектуры универсальной нет, а только та что решит эффективно вашу задачу
@@AndroidBroadcast принял. Спасибо за ответ!
MVI отлично сочетается с MVP и MVVM, так как ключевые элементы в ней - это намерение юзера и состояние UI. Если сосредоточиться именно на на этих ключевых элементах, то границы применения этого подхода расширяются.
Хотелось бы видеть больше материалов по архитектуре, в том числе mvi. Интересно, планирует ли Google или JetBrains собственную реализацию MVI с учетом популярности Jetpack Compose
Не думаю что они будут заниматься именно архитектурой. Они делают технологии и рекомендации дают, но дело каждого выбрать себе что-то. Surf в недалеком будущем будет больше рассказывать про MVI, есть хорошая либа от Аркадия Иванова github.com/arkivanov/MVIKotlin
Трындец. Мввай и декларатив ребенку можно за 15 минут рассказать. Кучу техники рассказали, а среднему прогеру ничего не скзали)))
В Qt язык давно уже есть QML. Он полностью декларативный и реактивный. На нем ещё лет 5 надад крупные проекты делали
📰 Telegram канал с новостями для Android Dev - ttttt.me/android_broadcast
💰 Поддержать проект на Boosty boosty.to/androidbroadcast или Patreon bit.ly/2TBOzlu