Тёмный

MVP в Android на практике 

Тимофей Коваленко
Подписаться 8 тыс.
Просмотров 6 тыс.
50% 1

Рассказываю про MVP в Android на практике в реальном проекте на пальцах для "чайников" :). Все показываю на практике в коде и на диаграмме. Также разбираем MVP в архитектуре Clean Architecture (Чистая архитектура).
MVP расшифровывается как: Model View Presenter.
Записаться ко мне на курсы разработка под android можно на: ✅ kiparo.com/course/programmiro...
СОДЕРЖАНИЕ:
-------------------------------------------------------------------
00:00:00 - введение
00:01:08 - сравниваем MVP, MVVM и MVI на диаграмме
00:02:36 - MVP в Android на практике
00:08:04 - обзор разработанного примера с MVP в Android
-------------------------------------------------------------------
На канале также есть и другие уроки по архитектуре.
Так же, найти меня можно вот тут:
✅ Linkedin: / timofeykovalenko
✅ Instagram: / ttimofey
✅ На моем сайте: kiparo.com/teacher/timofey-ko...
✅ FB с анонсами видео: / kiparocom
#mvp #android #kiparo

Опубликовано:

 

29 июн 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 25   
@TimofeyKovalenko
@TimofeyKovalenko Год назад
Записаться ко мне на курсы разработка под android можно на: ✅ kiparo.com/course/programmirovanie-na-java-kotlin-android
@davidbes5590
@davidbes5590 Год назад
Здравствуйте! Хотелось бы увидеть продолжение по архитектуре с учетом SingleActivity с несколькими экранами. Видео отличные! Единственное эта тема с экранами и ViewModel недораскрылась. Буду очень рад, если вам понравится предложение.
@detribes228
@detribes228 Год назад
Очень доступно и классно объяснил MVP!)
@TheVincet1998
@TheVincet1998 Год назад
Спасибо за видео!
@batya-im1sc
@batya-im1sc Год назад
Ох как вовремя! Спасибо :)
@awkwardquestion8643
@awkwardquestion8643 Год назад
Мвп в 2023, очень вовремя :)
@batya-im1sc
@batya-im1sc Год назад
@@awkwardquestion8643 общее понимание иметь надо, как минимум для собесов
@AlexMenshikovCHannel
@AlexMenshikovCHannel Месяц назад
всё четко и понятно
@misterex99
@misterex99 Год назад
Лайк не глядя.
@user-ue2dp6so8g
@user-ue2dp6so8g 3 месяца назад
сколько не изучаю, не могу понять взаимодействие интерфейса и класса его реализующего. сложилась такое представление: 1 в презентере создаю экземпляр интерфейса: view: MyInterface (у интерфейса есть метод myFunction) 2 назначаю активити реализацию этого интерфейса и соответственно метода 3. вызываю метод view.myFunction и ... что происходит? - вызывается метод из интерфейса, который без реализации - интерфейс смотрит: "А кто взялся выполнить этот метод? Ага, активити?! Ну давай, активити, запускай свою версию метода" Верное ли это представление о работе интерфейсов? ведь в пункте 1. мы не создаем экземпляр активити (view:MainActivity), а указываем для view тип интерфейса заранее спасибо за ответ.
@stasleonov5196
@stasleonov5196 Год назад
Тимофей, огромное вам спасибо за ваши уроки. п.с. денег на курс нет)
@ivanstrelka3448
@ivanstrelka3448 Год назад
Есть канал в телеге? с анонсами. Спасибо за видео! Это круто
@AutismSpectrumMsk
@AutismSpectrumMsk 7 месяцев назад
Спасибо!
@readmeandanswer8142
@readmeandanswer8142 Год назад
Я почти два годы пытался понять что такое MVP, не понимаю, почему никто не мог так просто объяснить. Так же я понял почему этот паттерн всё меньше используют, нет возможности загрузить из памяти уже загруженные данные, как в случае с LiveData. А так же.. утечка памяти.
@TimofeyKovalenko
@TimofeyKovalenko Год назад
Все эти минусы решаемы у MVP. Просто с MVVM все это делается намного проще и есть официальная поддержка.
@eadlefinder
@eadlefinder Год назад
Тимофей, здравствуйте. Может Вы подскажете как реализовать одну опцию. Суть в том, чтобы внутри моего приложения запустить стороннее приложение, т.е. внутри моего приложения, в выделенном фрагменте, при нажатии на кнопку, открыть другое приложение. Возможно ли реализовать это, может какую-то минимальную ОС нужно использовать? И если не сложно, пару строк кода для решения этого. Заранее спасибо.
@Libra7by
@Libra7by Год назад
Чистая ViewModel, конечно, не зависит от View. Но как только нам нужно получать из VM данные, то мы должны передать обратно ссылку на Activity. На практике, эту ссылку получает LiveData, которая находится в VM. А точнее, получает ссылку на Lifecycle, реализованный Activity. Так что, в большинстве случаев, в MVVM связь тоже двухсторонняя. Просто, безопасно огороженная и протестированная.
@TimofeyKovalenko
@TimofeyKovalenko Год назад
Да, верно. Но мы все же имеем ввиду явное управление.
@dmytrohut7139
@dmytrohut7139 Год назад
Необязательно использовать интерфейс для presentera Можно использовать просто для view
@TimofeyKovalenko
@TimofeyKovalenko Год назад
Да, я об этом говорил в видео.
@Aid1366
@Aid1366 4 месяца назад
А нужно ли знать mvp, если есть mvvm,а если посмотреть уроки от google там вообще рекомендуют UDF одноправленеый поток,и вообще там если почитать документацию domension коталог особо и не нужен ,тооько если очень сложные приложения..и тут начинающему тяжело,стоит ли заморачиватся изучать все эти паттерны,если по факту сам google говорит неиспользуйте mvp или mvvm ,все проще с udf !!)) Тооько почитав udf там тоже свои подпаттерны elm или mvi или еще чтото,все изучить долго ,вопрос что актуально в 2024 и в перспективе? Как google рекомендует ?
@TimofeyKovalenko
@TimofeyKovalenko 4 месяца назад
Дело не в конкретном mvp, вы сможете знать больше вариантов, как компоновать классы и какие варианты есть, то есть это для общего образования. А во вторых, до сих пор много проектов с MVP, да и на собеседовании часто спрашивают.
@Aid1366
@Aid1366 4 месяца назад
@@TimofeyKovalenko Хорошо,понял ,спасибо! Пройду Ваш курс по архитектуре,будет полезно) Вопрос только какие уроки не совместимы с compose по архитектуре,или все совместимы? Просто уточняю) интересно именно ui с jetpack compose а остальное под него нужно плесать уже,а пока незнаю,и лишнее учить,тут бы нужное сначало,архитектура понятно,а вот библиотеки зависимости типа dagger2 и.т.д?
@TimofeyKovalenko
@TimofeyKovalenko 3 месяца назад
с compose все тоже самое, просто UI часть другая. Единственное, нужно понимать, как работает рекомпозиция в compose, что бы state делать оптимальным.
@user-xg3no4yh4q
@user-xg3no4yh4q 2 месяца назад
@@TimofeyKovalenko да, да, на собесах очень любят спрашивать - а расскажика про MVP и MVVM)) и чем отличаются
Далее
MVVM в Android на практике
41:32
Просмотров 46 тыс.
He turned a baseball into a stylish shoe😱
00:59
Просмотров 534 тыс.
Юнит тест для View Model в Android
26:57
Unity Quick Tip: My .gitignore for unity
0:38