SlideShare a Scribd company logo
1 of 24
Rok z Android MVVM
MICHAŁ ZAWALICH & ŁUKASZ ROSZAK
Szczecin, 13 czerwca 2018
Neversettle
intive.com
Agenda
_MVC, MVP czy MVVM
_Android background dla MVVM
_Po co pisać własną nawigację
_Demo applikacja
_Live coding
Neversettle
intive.com
Różne podejścia do architektury UI
Neversettle
intive.com
_Jakie problemy
androidowe rozwiązuje
MVVM?
4
Neversettle
intive.com
Neversettle
intive.com
_Trochę więcej o
MVVM
6
Neversettle
intive.com
Neversettle
intive.com
ViewModel
Neversettle
intive.com
View
Neversettle
intive.com
View
Neversettle
intive.com
Magia
Neversettle
intive.com
DataBinding
Neversettle
intive.com
_Po co pisać własną
nawigację
13
Neversettle
intive.com
Po co, dlaczego?
_JetPack Navigation jeszcze nie działa
_Odseparowanie nawigacji od platformy
_Niestandardowy graf nawigacji
_Przekazywanie parametrów
_Obsługa regionów
_Separation of Concerns
Neversettle
intive.com
Wady
_Wymaga wdrożenia dla programistów Androida
_Jak Android zawala i tak zwalą to na Ciebie
Neversettle
intive.com
_Demo aplikacja
16
Neversettle
intive.com
Neversettle
intive.com
Założenia
_Kotlin
_MVVM
_Separacja warstw
_Elastyczna nawigacja
_Twarde typowanie parametrów nawigacji
Neversettle
intive.com
_Demo
19
Neversettle
intive.com
_Wyzwania na
przyszłość
20
Neversettle
intive.com
Wyzwania na przyszłość
_Wykorzystanie Jetpack Navigation
_Ułatwienie rozbijania na moduły
_Ułatwienie pisania Unit Testów
Neversettle
intive.com
_Czy mogę pomóc?
22
Neversettle
intive.com
_github.com/LRS-
BLS/mvvm-skeleton
Neversettle
intive.com
Dziękujemy
Michał Zawalich i Łukasz Roszak
https://github.com/LRS-BLS/mvvm-skeleton
24

More Related Content

More from intive

Kotlin, Spek and tests
Kotlin, Spek and testsKotlin, Spek and tests
Kotlin, Spek and testsintive
 
Patronage 2016 Windows 10 Warsztaty
Patronage 2016 Windows 10 WarsztatyPatronage 2016 Windows 10 Warsztaty
Patronage 2016 Windows 10 Warsztatyintive
 
Techniczna organizacja zespołu cz 2
Techniczna organizacja zespołu cz 2Techniczna organizacja zespołu cz 2
Techniczna organizacja zespołu cz 2intive
 
Techniczna organizacja zespołu
Techniczna organizacja zespołuTechniczna organizacja zespołu
Techniczna organizacja zespołuintive
 
Organizacja zespołu
Organizacja zespołuOrganizacja zespołu
Organizacja zespołuintive
 
Nie tylko C# - Ekosystem Microsoft dla programistów
Nie tylko C# - Ekosystem Microsoft dla programistówNie tylko C# - Ekosystem Microsoft dla programistów
Nie tylko C# - Ekosystem Microsoft dla programistówintive
 
[PL] MVP do MVVM - separacja warstw w aplikacji androidowej
[PL] MVP do MVVM - separacja warstw w aplikacji androidowej[PL] MVP do MVVM - separacja warstw w aplikacji androidowej
[PL] MVP do MVVM - separacja warstw w aplikacji androidowejintive
 
Tips & Tricks Android
Tips & Tricks AndroidTips & Tricks Android
Tips & Tricks Androidintive
 
Apple Watch - Getting Started
Apple Watch - Getting StartedApple Watch - Getting Started
Apple Watch - Getting Startedintive
 
Clean architecture: Android
Clean architecture: AndroidClean architecture: Android
Clean architecture: Androidintive
 
CoreLocation (iOS) in details
CoreLocation (iOS) in detailsCoreLocation (iOS) in details
CoreLocation (iOS) in detailsintive
 
Developer Job in Practice
Developer Job in PracticeDeveloper Job in Practice
Developer Job in Practiceintive
 
Java Script - Object-Oriented Programming
Java Script - Object-Oriented ProgrammingJava Script - Object-Oriented Programming
Java Script - Object-Oriented Programmingintive
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Thingsintive
 
Service Workers: no more offline!
Service Workers: no more offline!Service Workers: no more offline!
Service Workers: no more offline!intive
 
Things.NET Presentation
Things.NET PresentationThings.NET Presentation
Things.NET Presentationintive
 
Twitter Bootstrap
Twitter BootstrapTwitter Bootstrap
Twitter Bootstrapintive
 
Javascript Promises
Javascript PromisesJavascript Promises
Javascript Promisesintive
 

More from intive (18)

Kotlin, Spek and tests
Kotlin, Spek and testsKotlin, Spek and tests
Kotlin, Spek and tests
 
Patronage 2016 Windows 10 Warsztaty
Patronage 2016 Windows 10 WarsztatyPatronage 2016 Windows 10 Warsztaty
Patronage 2016 Windows 10 Warsztaty
 
Techniczna organizacja zespołu cz 2
Techniczna organizacja zespołu cz 2Techniczna organizacja zespołu cz 2
Techniczna organizacja zespołu cz 2
 
Techniczna organizacja zespołu
Techniczna organizacja zespołuTechniczna organizacja zespołu
Techniczna organizacja zespołu
 
Organizacja zespołu
Organizacja zespołuOrganizacja zespołu
Organizacja zespołu
 
Nie tylko C# - Ekosystem Microsoft dla programistów
Nie tylko C# - Ekosystem Microsoft dla programistówNie tylko C# - Ekosystem Microsoft dla programistów
Nie tylko C# - Ekosystem Microsoft dla programistów
 
[PL] MVP do MVVM - separacja warstw w aplikacji androidowej
[PL] MVP do MVVM - separacja warstw w aplikacji androidowej[PL] MVP do MVVM - separacja warstw w aplikacji androidowej
[PL] MVP do MVVM - separacja warstw w aplikacji androidowej
 
Tips & Tricks Android
Tips & Tricks AndroidTips & Tricks Android
Tips & Tricks Android
 
Apple Watch - Getting Started
Apple Watch - Getting StartedApple Watch - Getting Started
Apple Watch - Getting Started
 
Clean architecture: Android
Clean architecture: AndroidClean architecture: Android
Clean architecture: Android
 
CoreLocation (iOS) in details
CoreLocation (iOS) in detailsCoreLocation (iOS) in details
CoreLocation (iOS) in details
 
Developer Job in Practice
Developer Job in PracticeDeveloper Job in Practice
Developer Job in Practice
 
Java Script - Object-Oriented Programming
Java Script - Object-Oriented ProgrammingJava Script - Object-Oriented Programming
Java Script - Object-Oriented Programming
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
Service Workers: no more offline!
Service Workers: no more offline!Service Workers: no more offline!
Service Workers: no more offline!
 
Things.NET Presentation
Things.NET PresentationThings.NET Presentation
Things.NET Presentation
 
Twitter Bootstrap
Twitter BootstrapTwitter Bootstrap
Twitter Bootstrap
 
Javascript Promises
Javascript PromisesJavascript Promises
Javascript Promises
 

Rok z Android MVVM