Declarative UI patterns (Google I/O'19)

  Рет қаралды 101,409

Android Developers

Android Developers

Күн бұрын

Explore how reactive and declarative paradigms can be applied to Android UI development, making it easier for developers to integrate these patterns into their Android apps with Kotlin.
Watch more #io19 here:
Android & Play at Google I/O 2019 Playlist → goo.gle/2GRWlQh
Google I/O 2019 All Sessions Playlist → goo.gle/io19al...
Learn more on the I/O Website → google.com/io
Subscribe to the Android Developers Channel → goo.gle/Androi...
Get started at → developer.andr...
Speaker(s): Jim Sproch, Adam Powell, Romain Guy
T29485 event: Google I/O 2019; re_ty: Publish; product: Android - Languages; fullname: Adam Powell, Romain Guy;

Пікірлер: 94
@lone.wo1f
@lone.wo1f 5 жыл бұрын
*Romain* is the *best speaker @Google* , he doesn't hesitate to even talk about Google's/their inefficiency or mistakes and he is also humorous... We want more lectures and videos from him...
@TomaszRykala
@TomaszRykala 5 жыл бұрын
I love the Spinner backstory.
@ninja4ever_
@ninja4ever_ 5 жыл бұрын
mark~ history of android UI 5:50 refactor UI 14:14 jetpack compose! 18:20 23:45 data flow 26:35 29:50 recap 30:50
@AdrianTache
@AdrianTache 5 жыл бұрын
This looks a lot like React Components and I think I like it!
@ThomasGallinari
@ThomasGallinari 5 жыл бұрын
This is truly awesome, very much like Flutter but for native Android with Kotlin! Can't wait for a stable version!
@easazade
@easazade 4 жыл бұрын
i developed native android apps for 3 years last year i ditched native for flutter. this year i just came to see what's new on android native platform for a webview app i'm building and here i see native android is copying Flutter
@jeffGordon852
@jeffGordon852 3 жыл бұрын
Are you happy now pal!!
@Masterrunescapeer
@Masterrunescapeer 5 жыл бұрын
As someone who left Android development mid 2015, this has tempted me to come back as it looks a lot easier to write and manage the UI. Since 2015 have basically only used web apps, since most stuff needed to be cross-platform.
@YuriyKulikov
@YuriyKulikov 4 жыл бұрын
The most exciting change in Android since Kotlin support announcement!
@abhico1997
@abhico1997 5 жыл бұрын
this makes me cry! all the pain through the years.. no more!
@marta_na_moto
@marta_na_moto 5 жыл бұрын
Every time he says "so it turns into something very simple" I get goosebumps ;).. Yeah android and "simple" :))
@nikiizvorski1585
@nikiizvorski1585 5 жыл бұрын
Can't agree more with you
@ankurg_
@ankurg_ 5 жыл бұрын
I always wondered why scattering all UI code was "best practice". Great to know this will fix it. It would take a year or so for this I guess.
@Dhruvam
@Dhruvam 5 жыл бұрын
This is the best part. Declarative UI ❤️ Why did they not do it earlier? 😍😍
@MMitic08
@MMitic08 5 жыл бұрын
They couldn't do that in Java
@Zhuinden
@Zhuinden 5 жыл бұрын
XML is also declarative, no?
@romantruba8790
@romantruba8790 5 жыл бұрын
Marko Mitic Litho is done in Java, basically the same thing as Jetpack
@atexit
@atexit 5 жыл бұрын
Isn't reassigning mutable variables in a data class inside the function a side effect that makes the functions non-pure?
@forresthopkinsa
@forresthopkinsa 5 жыл бұрын
Flutter in Kotlin hell yeah
@gorudonu
@gorudonu 5 жыл бұрын
only slower and without hor reload :D
@galaxiegalaxie5003
@galaxiegalaxie5003 5 жыл бұрын
And kotlin for iOS,android,webapp in future CooL kkkkk
@galaxiegalaxie5003
@galaxiegalaxie5003 5 жыл бұрын
For me I don't care about hot reload kkkk,flutter is extremely great when comes to UI but dart lacks capabilities (features) if we compare to kotlin
@MichalBacik
@MichalBacik 5 жыл бұрын
Next big thing is coming! It looks like time to start playing with this.
@ldelafuente
@ldelafuente 5 жыл бұрын
They are paving the way for Android Developers to become Flutter Developers because of Fuchsia!
@tombaker9746
@tombaker9746 5 жыл бұрын
It's just what Flutter is doing even with the "Apply Changes" hot reload feature. I thought I heard it will also bypass platform widgets and draw the view to the screen directly, very like Flutter.
@FredoCorleone
@FredoCorleone 3 жыл бұрын
Speaking of imperative vs declarative I don't see why one approach would exclude the other. I like to be declarative at times, for instance when dealing with pipelines and lists, and to be imperative when things get hard so that I'm not the only person who can touch that code. It feels like the old battle between OOP and functional programming. I've noticed that different part of an app are better written in different styles, the inner core of an app, where data is, is better written in functional style thanks to the predictability of pure functions, while the outer shell of an app, where views and components are is very well written in OOP.
@kenyakking
@kenyakking 5 жыл бұрын
How you use Styles with this? Styles were useful for things like white labeling and different device size support..
@BoxingHacker
@BoxingHacker 5 жыл бұрын
So are they planning to replace XML, that's what I want to know....
@meridiansoftware6177
@meridiansoftware6177 5 жыл бұрын
Can't wait to do the transition! 🔥
@JayDonga
@JayDonga 3 жыл бұрын
Why do functions start with upper case letter in your code?
@FredoCorleone
@FredoCorleone 3 жыл бұрын
I don't necessarily like the fact every state is managed in a single place like a datastore of sort, I like the Angular approach with services in which every service owns and manages its own state. It's more modular. And I also like to have some state into components sometimes. My components are usually stateful for things like filtering of lists and pagination... For top-level variables such as lists of data I like to have injectable services manage that. So my components are both stateful from an angle and stateless from another. I think this approach is more flexible and feels more organic.
@hbbaxter9199
@hbbaxter9199 5 жыл бұрын
Awesome Kotlin Shirt! Where can I get it?
@starriet
@starriet 4 жыл бұрын
Great presentation especially on data flow, also it's interesting to see many different things are getting similar as they evolve :)
@EwenMackenzie
@EwenMackenzie 5 жыл бұрын
Composable + DelegateAdapters = power
@mikhailbabenkov8332
@mikhailbabenkov8332 5 жыл бұрын
Android Transition/Migration to Flutter
@20years82
@20years82 5 жыл бұрын
This is very interested point from Google IO 2019
@ky5069
@ky5069 5 жыл бұрын
12:30"(...) if you have pets, small children, or and open plan office" Ahahah!
@AlexanderGherschon
@AlexanderGherschon 5 жыл бұрын
I am HYPED!
@vivekanandasuggu4247
@vivekanandasuggu4247 5 жыл бұрын
Hey this was the flutter style of building UI. This was one the cool feature of flutter..but flutter has many more cool features like this.but Thanking you Team
@czerox16
@czerox16 5 жыл бұрын
this will be production ready in 1.5 years.
@dmitriyobidin6049
@dmitriyobidin6049 5 жыл бұрын
I don't get. It looks like all those teams inside Google are fighting against each other. PWA, Flutter, now Jetpack Compose... Why do they invest so much time to invent so many instruments for different languages just for 1 OS. Just make 1! I'm trying to step up my android game, what should i learn? I was going for flutter, but now we have similar declaritive UI in Android and i'm hell confused. Like most of the newcomers.
@fishoil5310
@fishoil5310 4 жыл бұрын
Although this might be a bit late. My suspicion is that when one thing fails, the other can quickly become the substitute. Of course, this will make developers unsure of the direction/focus of the tech.
@murugappanm9883
@murugappanm9883 3 жыл бұрын
Different use cases, different frameworks. Want to convert your well-written responsive website into a app and launch on app store - PWA is the quickest path. a startup wanting to release for both Ios and android as MVP - Flutter. Want to integrate React like paradigm slowly into your existing android app/ quickest way to android app - Jetpack composable. As a developer, don't focus on the framework names and programming languages too much. I am pretty sure someone who has professionally written declarative UI (either via React/web apps or flutter) can get up and running with composable in a few days. Learning the paradigm/architecture the first time is really hard. But once you do, all three (React/Flutter/Composable) vary only in syntax, environment and language used, the core concepts are same.
@real-neo-altair
@real-neo-altair 5 жыл бұрын
14:12 I love this guy
@adampinuelas6139
@adampinuelas6139 3 жыл бұрын
AMA
@mcan.a
@mcan.a 5 жыл бұрын
Seems native development will teach me Flutter out of the box
@nadeemshaikh7863
@nadeemshaikh7863 5 жыл бұрын
Add native iOS development as well with Swift UI.
@kirill4531
@kirill4531 5 жыл бұрын
Seems that good old Java for Android will gone in a next couple of years. The question is which one would they prefer more Kotlin or Dart?
@llothar68
@llothar68 5 жыл бұрын
C++
@sanek1985t
@sanek1985t 3 жыл бұрын
No java will not gone, because android is open source and manufacturers uses pure android with their custom UI toolkits (xiaomi, hauwei, samsung). Seems to that they just use pure android sdk + java. They does much custom ui elements by themselves just by drawing it in pure java)
@sanek1985t
@sanek1985t 3 жыл бұрын
And it's bad that google changes every year development paradigm and instruments. Its almost impossible to refactor all code using these new paradigms
@ragequitredux
@ragequitredux 5 жыл бұрын
Wait, are those literals in dips? e.g. 4.dp @21:41
@tryceo
@tryceo 5 жыл бұрын
Litho is so good
@xsphere9375
@xsphere9375 5 жыл бұрын
This is really great news
@antonywhatever572
@antonywhatever572 5 жыл бұрын
14:34 ... and Flutter. Who would have thought?
@DeltaCentauri
@DeltaCentauri 5 жыл бұрын
Awesome!
@Zhuinden
@Zhuinden 5 жыл бұрын
Hmm they showed `extends View` and contrasted it with Fragment; but what about `extends FrameLayout`?
@GulshanurRahman
@GulshanurRahman 5 жыл бұрын
Please make this Android-first, but cross-platform.
@FrantisekNovak55
@FrantisekNovak55 5 жыл бұрын
YES!
@easazade
@easazade 4 жыл бұрын
i developed native android apps for 3 years last year i ditched native for flutter. this year i just came to see what's new on android native platform for a webview app i'm building and here i see native android is copying Flutter
@kojadinm
@kojadinm 5 жыл бұрын
ANKO ?
@jeffGordon852
@jeffGordon852 5 жыл бұрын
Where do I get one of these Android Kotlin tshirts?
@heysuvajit
@heysuvajit 5 жыл бұрын
Now I'm really confused in learning Flutter and Kotlin. Presently I'm a java guy :(
@easazade
@easazade 4 жыл бұрын
it's been a year and the api is still under developement. that is the case with all Android APIs
@liviuciob
@liviuciob 5 жыл бұрын
but....why?
@Masterrunescapeer
@Masterrunescapeer 5 жыл бұрын
28:50 people haven't been doing it like this?
@UnrealQW
@UnrealQW 5 жыл бұрын
35 minutes presentation? OMG!
@FedJimSmith
@FedJimSmith 5 жыл бұрын
but kotlin is still just java bytecode that uses JVM like runtime
@olegbeloy9279
@olegbeloy9279 5 жыл бұрын
Seems for me like an attempt to solve a problem that have never existed. Build an ui from code? A very fresh idea! How to preview it? How to build constraint layout from code and doesn't use 1k lines? Should we just build and see like flutter says (with wasting a few minutes)? Thanks, but no thanks
@BibeshManandhar
@BibeshManandhar 5 жыл бұрын
Does this still exists ??? But whyy 😅😅😅 Flutter have overtaken native 😅 Atleast for me 😅
@itsChaOS25
@itsChaOS25 5 жыл бұрын
Do you enjoy the 😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅😅emoji?
@nadeemshaikh7863
@nadeemshaikh7863 5 жыл бұрын
I think Google is trying to align native Android development to as close to Flutter and Fuchsia as possible. Google is clearly transitioning devs and users from using native Android concepts to getting familiar to concepts developed in Fuchsia and Flutter. Exciting times!
@iliasgazdaliev6784
@iliasgazdaliev6784 5 жыл бұрын
@@nadeemshaikh7863 Concepts developed in Fuchsia and Flutter?) You mistyped "React".
@devma8473
@devma8473 5 жыл бұрын
cool
@aleksdark6274
@aleksdark6274 5 жыл бұрын
Anko?)
@HaraldHalbig
@HaraldHalbig 5 жыл бұрын
😍
@nikiizvorski1585
@nikiizvorski1585 5 жыл бұрын
Every year you go forward and you continue to make a mess of services and addons of issues. I don't truly understand why....as a good thinking man once said. Over the years i started reading more code than writing.....best would be to keep your Flutter in Flutter don't mess up Android also.
@keithkaranu4258
@keithkaranu4258 5 жыл бұрын
This isn't replacing anything. If anything it gives us more options for how we want to develop our apps.
@mycodingstuff
@mycodingstuff 5 жыл бұрын
More options, more decisions, more delay, more confusion...
@mohammadmirzakhanidehkordi8561
@mohammadmirzakhanidehkordi8561 5 жыл бұрын
surely JetPack Compose inspired by SwiftUI not those thing which they say :D
@theblackhole05
@theblackhole05 5 жыл бұрын
Not pixel 2 wtf Google
@christopherrussell3835
@christopherrussell3835 5 жыл бұрын
😇👩‍👩‍👧
@hakkisan2508
@hakkisan2508 5 жыл бұрын
Again any thing made to solve their problems and not to make it better 😒
@8Trails50
@8Trails50 5 жыл бұрын
They put in react in android. Lol
@martinseal1987
@martinseal1987 5 жыл бұрын
This basically is flutter, I hate it, I love flutter but they shouldn't be bleeding into each other
@nadeemshaikh7863
@nadeemshaikh7863 5 жыл бұрын
Why? I think Google is trying to align native Android development as close to Flutter and Fuchsia as possible. Google is clearly transitioning devs and users from using native Android concepts to getting familiar to concepts developed in Fuchsia and Flutter. So, that both devs and users suddenly don't get disrupted when Google replaces the core of Android and Chrome OS ie Linux with Fuchsia/Zircon.
@christopherrussell3835
@christopherrussell3835 5 жыл бұрын
🏳️‍🌈💙🤼🏊🤽⛹️💇
@tieskedh
@tieskedh 5 жыл бұрын
developer.android.com/jetpack/compose Note:building under windows is currently not supported
@SamuelKelemenC
@SamuelKelemenC 5 жыл бұрын
It's not really that declarative...
@khalidhamid7448
@khalidhamid7448 5 жыл бұрын
Yikes
@luckylove72
@luckylove72 3 жыл бұрын
Inspired by React,litho, flutter, Viewjs?? Just say Microsoft.
What's new in Android Development Tools (Google I/O'19)
36:43
Android Developers
Рет қаралды 31 М.
Think Faster, Talk Smarter with Matt Abrahams
44:11
Stanford Alumni
Рет қаралды 2,7 МЛН
Сестра обхитрила!
00:17
Victoria Portfolio
Рет қаралды 958 М.
黑天使只对C罗有感觉#short #angel #clown
00:39
Super Beauty team
Рет қаралды 36 МЛН
Build testable apps for Android (Google I/O'19)
41:41
Android Developers
Рет қаралды 51 М.
Pragmatic State Management in Flutter (Google I/O'19)
33:25
Flutter
Рет қаралды 457 М.
What do tech pioneers think about the AI revolution? - BBC World Service
25:48
BBC World Service
Рет қаралды 1,2 МЛН
Understanding Compose (Android Dev Summit '19)
36:15
Android Developers
Рет қаралды 74 М.
AI Is Making You An Illiterate Programmer
27:22
ThePrimeTime
Рет қаралды 299 М.
Avoiding Toxic Productivity Advice for ADHD
20:51
ADHD Jesse
Рет қаралды 1,7 МЛН
How language model post-training is done today
53:51
Interconnects AI
Рет қаралды 6 М.
What's new in Kotlin on Android, 2 years in (Google I/O'19)
30:35
Android Developers
Рет қаралды 46 М.
Сестра обхитрила!
00:17
Victoria Portfolio
Рет қаралды 958 М.