Thinking in Compose

แชร์
ฝัง
  • เผยแพร่เมื่อ 2 ต.ค. 2024

ความคิดเห็น • 135

  • @abdonasr1222
    @abdonasr1222 4 ปีที่แล้ว +42

    finally, I found the guy who explained exactly the purpose of remember(), thanks Leland

  • @peyman4357
    @peyman4357 4 ปีที่แล้ว +168

    I didn't know Jake Gyllenhaal was an Android developer

    • @aiders4352
      @aiders4352 4 ปีที่แล้ว +11

      First time I saw him I thought the same thing

    • @godwinniiaddy7577
      @godwinniiaddy7577 4 ปีที่แล้ว +5

      I came to the comments to make sure someone mentioned it. 😂

    • @TalhaHasanZia
      @TalhaHasanZia 4 ปีที่แล้ว +2

      lmao

    • @gouripanda7517
      @gouripanda7517 3 ปีที่แล้ว +2

      😂😂

    • @LupingLin
      @LupingLin 3 ปีที่แล้ว +1

      Lmao

  • @aman.singh717
    @aman.singh717 3 ปีที่แล้ว +12

    Damn, they are going to make us re-work everything and this just feels awesome to see the concepts getting buildup from the scratch.

  • @Zhuinden
    @Zhuinden 4 ปีที่แล้ว +91

    18:04 separation of concerns, a really good explanation, I don't think I've seen this speaker before, but he REALLY does know his stuff, great video 100%

    • @AndoNoSekai
      @AndoNoSekai 4 ปีที่แล้ว +5

      He'd better know his stuff, he is one of the architects of Compose. They should have done the same with the Data Binding library, then I wouldn't had to suffer from seeing people creating a mess when trying to use it

    • @aiders4352
      @aiders4352 4 ปีที่แล้ว +3

      @@AndoNoSekai Agree, data binding was never documented very well back in the beginning, it's still pretty poor in terms of official guidelines and recommendations. I've seen some real hideous use of it in my time.

    • @someonlinevideos
      @someonlinevideos 4 ปีที่แล้ว +3

      Shinigami Yagami just to drive the point home, this IS an answer to poor data binding documentation because it is an easier paradigm to understand that achieves the result with a lot less work and boilerplate

    • @securepul
      @securepul ปีที่แล้ว

      Hey guys sorry 🙏

  • @DanielOchoa23
    @DanielOchoa23 4 ปีที่แล้ว +28

    This is hands down the best video I've seen so far on composable. Seriously, great work.

  • @TheBlackManMythLegend
    @TheBlackManMythLegend 4 ปีที่แล้ว +4

    very interesting.. woaw... the cohesion coupling clarification was also interesting. the fact that the same language allow to remove the implicit coupling ( hard to debug .... problems down the line for the complex UI) was great. to make it short . Thank you.

  • @ssverma4867
    @ssverma4867 4 ปีที่แล้ว +43

    One of the best Android video I have seen so far ....🎉

  • @harishv4806
    @harishv4806 4 ปีที่แล้ว +16

    5:30 Showing off that kotlin 1.4 supports commas at the end

    • @TalhaHasanZia
      @TalhaHasanZia 4 ปีที่แล้ว

      just like dart, for formatting.

  • @4lp3n
    @4lp3n 3 ปีที่แล้ว +11

    I'm so greatful that I found out about the Compose. I come from React and I played a little bit with Flutter. Now I have to do Android Kotlin project for university course and this is heaven for me. All concepts are very familiar without even reading the docs. Classic Android UI with XML is way too heavy and unnecessarly complicated in my opinion. Building UI should be simple like Compose ;)

    • @boygood4830
      @boygood4830 2 ปีที่แล้ว +2

      actually you can use compose in xml by using , and use xml in Compose function by using AndroidView()

  • @TheRastaDan
    @TheRastaDan 2 ปีที่แล้ว +6

    as someone who just started out with Kotlin and Android developement with jetpack Compose (coming from Java/Spring) I was really overhelmed by this approach very alien to me. After crwaling through many examples, I really liked this step back to look at the big picture.
    Great explaination here

    • @AndroidDevelopers
      @AndroidDevelopers  2 ปีที่แล้ว +2

      We’re so happy to hear you enjoyed the video! If you’re interested in additional resources; check out the Jetpack Compose walkthrough and Intro to Kotlin here:
      developer.android.com/courses/android-basics-compose/course
      developer.android.com/courses/android-basics-kotlin/course

  • @goobar
    @goobar 4 ปีที่แล้ว +20

    Yes!!!! Alpha is finally here 💥🎉

    • @stvayush
      @stvayush 4 ปีที่แล้ว +1

      Hey there! How to become a gde? What skills do i need if i wanna be same in android?

    • @rosenidiasivanaszko3315
      @rosenidiasivanaszko3315 4 ปีที่แล้ว

      @@stvayush descarta

    • @stvayush
      @stvayush 4 ปีที่แล้ว

      @@rosenidiasivanaszko3315 what's descarta?

  • @nikinsk
    @nikinsk 4 ปีที่แล้ว +5

    Oh my god .. Super presentation by Leland, Awesome man!

  • @hoxorious
    @hoxorious 4 ปีที่แล้ว +28

    The code suspiciously looks like Flutter. I love it! ❤

    • @someonlinevideos
      @someonlinevideos 4 ปีที่แล้ว +10

      AliReza Beytari and SwiftUI and React Native. We’re seeing a consolidation around very reasonable to follow paradigma for asynchronous user interfaces that need to respond to many state changes. My bet is this paradigm would not have evolved natural in web land without mobile as quickly but I also expect to see this as the cross platform solution (not necessarily compose but why not) in a few years. React Native is already paving the way here

    • @daschewie
      @daschewie 3 ปีที่แล้ว +5

      @@someonlinevideos Outside of XML based languages, similar syntax has been around on the desktop since 2009 with JavaFX Script and Qt QML. See en.wikipedia.org/wiki/JavaFX_Script and en.wikipedia.org/wiki/QML

    • @someonlinevideos
      @someonlinevideos 3 ปีที่แล้ว +1

      @@daschewie Thanks for sharing. Will have a look. Why do you believe these technologies are both A) were forgone in favor of declarative UI styles for both main mobile platforms and B) seeing a resurgence in both as well as in the React paradigms as well?

    • @alifellahi
      @alifellahi 3 ปีที่แล้ว +2

      @@daschewie I was working with JavaFX for a reasonable time and this is the first time I hear about JavaFX Script, it looked great! but I'm wondering what happened to that project and how JavaFX UIs becomes XML centric?

    • @daschewie
      @daschewie 3 ปีที่แล้ว +5

      @@alifellahi oracle bought sun microsystems and acquired Java. They preferred switching to xml to sell tools. This is just one of the many bad decisions.

  • @iseis360
    @iseis360 4 ปีที่แล้ว +6

    Holy cow this is so exciting can't wait to dig in. Awesome presentation. Loved the explanation of separation of concerns.

  • @praveen18p1
    @praveen18p1 2 ปีที่แล้ว +2

    Great Video and as always like your videos, very informative and gives a good understanding of solutioning real world problems.

    • @AndroidDevelopers
      @AndroidDevelopers  2 ปีที่แล้ว +1

      We're glad you enjoyed the video, Praveen! Don't forget to check out our Jetpack Compose playlist for more videos like this 😊 → goo.gle/3DCKQeH

  • @SnoopyDoofie
    @SnoopyDoofie 4 ปีที่แล้ว +3

    I see the potential of using Compose to develop UIs for other platforms that are supported by Kotlin.

  • @florageorge7257
    @florageorge7257 2 ปีที่แล้ว +2

    I love this

  • @ismailnurudeen
    @ismailnurudeen 4 ปีที่แล้ว +2

    Switching between Kotlin and Flutter just got easier.
    This would require a shift in UI design thinking process for Android Developers.

    • @hoxorious
      @hoxorious 4 ปีที่แล้ว +1

      If I didn't need the iOS version of my apps, I would probably switch completely from Flutter to Kotlin.

  • @TalhaHasanZia
    @TalhaHasanZia 4 ปีที่แล้ว +2

    1 step closer to Flutter Native (Android) :P

  • @pembatamang8233
    @pembatamang8233 4 ปีที่แล้ว +2

    can't we choose which composables are recomposed? why recompose the circle image anyway. no need to use remember there. There should be an annotation like @ComposeOnce

    • @keithkaranu4258
      @keithkaranu4258 4 ปีที่แล้ว

      From what I understand if done properly a recomposition shouldn't be an expensive operation.

  • @sergehulne
    @sergehulne 3 ปีที่แล้ว +1

    Is there a way to factorise the style of the « Composable » graphical elements out of the business logic (e.g. like CSS for HTML)?
    If not, one ends up with a mess like « Flutter » in which layout, style and business logic are all mixed together in a giant soup.

  • @hhhaitchhh
    @hhhaitchhh 3 ปีที่แล้ว

    Bloody marvellous, thanks.

  • @BigMeanyVids
    @BigMeanyVids 2 ปีที่แล้ว +1

    Thanks to this plus Kotlin I’m coming back to learn Android programming. I hate Java and your older methods of ui development. This finally looks to be worth my time. Thanks!

  • @prdyzor
    @prdyzor 4 ปีที่แล้ว +2

    yay, learning React is really useful now :)

  • @ellasaro
    @ellasaro 6 หลายเดือนก่อน

    8:30 why would ChatText be recomposed if text doesn't change? Doesn't Compose skip its recomposition whenever the input doesn't change?

  • @ramoncaldera1801
    @ramoncaldera1801 3 ปีที่แล้ว +1

    Exelente capacitacion gracias

  • @Akashpagol
    @Akashpagol 2 ปีที่แล้ว

    Great presentation! But boy I hate this idea of declarative UI paradigm thing. Yuuucck! But really great explanation from Leland.

  • @arpan.sarkar
    @arpan.sarkar 4 ปีที่แล้ว +8

    Excited for the sample codes. :)

    • @AndoNoSekai
      @AndoNoSekai 4 ปีที่แล้ว

      Was this video unlisted? How is your comment from 2 days ago 🤔

    • @theoneed2051
      @theoneed2051 2 ปีที่แล้ว

      @@AndoNoSekai The video was released 2 years ago; in 2020.

  • @TarasBazyshyn
    @TarasBazyshyn 4 ปีที่แล้ว +1

    Here experience working with Fluter is really-really useful.

    • @hoxorious
      @hoxorious 4 ปีที่แล้ว +1

      Exactly

  • @neerajseth6566
    @neerajseth6566 2 ปีที่แล้ว

    Bro , you are moving too fast.. You should have spent some more time on basics first...

  • @Masfugo
    @Masfugo 3 ปีที่แล้ว

    So after all the effort to prevent multi level layout like linear layout.. we back using them?

  • @marvinbernal
    @marvinbernal 4 ปีที่แล้ว +1

    Well done. Video was super clear - excited for Compose :)

  • @abhisheksaxena518
    @abhisheksaxena518 8 หลายเดือนก่อน

    Amazing explanation, very informative.

  • @ozgurtas4508
    @ozgurtas4508 4 ปีที่แล้ว

    great video! thanks

  • @LiranBarsisa
    @LiranBarsisa 3 ปีที่แล้ว

    11:25 Shouldn't each "ChatMessage" include only one child? Why does it have 2 "ChatBubble"?

  • @SouravBagchigoogleplus
    @SouravBagchigoogleplus 3 ปีที่แล้ว

    So we are slowly moving toward Flutter.

  • @TZCoder
    @TZCoder 4 ปีที่แล้ว

    Feels a lot like React, the preview in AS is very slow still and there doesn't seem to be a live update like you have with React Native or Flutter but its early days I guess.

  • @ThePujjwal
    @ThePujjwal 3 ปีที่แล้ว

    First jetpack compose video from Googler where I am able to understand the English and didn't needed the subtitles.

  • @akashkumardas6521
    @akashkumardas6521 3 ปีที่แล้ว

    Slow slow slow slow slow compose is too slow

  • @hirendesai8261
    @hirendesai8261 3 ปีที่แล้ว

    is there any bug in android studio canary 4.2? cause whenever i make changes in jetpack compose app i need to uninstall the app and then have to install it again in order to see changes. I'm not able to see changes after running app or instant run feature.

  • @moforemmanuel158
    @moforemmanuel158 2 ปีที่แล้ว

    I see Jetpack Compose as the next frontier of UI design it really eliminates the concepts of frontend and backend for client applications as it blends all in a Great way and making design parterns like MVVM almost a natural thing

  • @firefed
    @firefed ปีที่แล้ว

    this helped me; thank you 😁

  • @kamertonaudiophileplayer847
    @kamertonaudiophileplayer847 4 ปีที่แล้ว +1

    I created a declarative framework for android back to 2014-01-23T05:42:00Z, but now you created it too.

  • @KhalidCoding
    @KhalidCoding 3 ปีที่แล้ว

    That is revolutionary

  • @puhgeh
    @puhgeh 4 ปีที่แล้ว +1

    Finally!!!! I’m so excited! 🥳

  • @bogdan3209
    @bogdan3209 4 ปีที่แล้ว

    At this point of time I can not run any of example apps in android studio. Does anyone have similar issues?

  • @lightlysaltedcalmingvlogsa7286
    @lightlysaltedcalmingvlogsa7286 4 ปีที่แล้ว +1

    Ugh I might need to learn Kotlin now

    • @hoxorious
      @hoxorious 4 ปีที่แล้ว

      Would be a great choice! 👍

  • @alexanderaftrolle7333
    @alexanderaftrolle7333 4 ปีที่แล้ว +3

    Thank you for that great video! I'm so excited for Jetpack Compose.
    However, I'm confused about the 22:45 example, fetching the ViewModel inside a compose function.
    How would that work with previews? I guess you could have a "base" compose a function that fetches ViewModel & state or observer/s.
    Then call the ChatScreen() with either state or flow/observable to have preview functionality with ChatScreen function.
    Or is there a way to overwrite/declare a mock ViewModel scope for previews?

    • @mehlyfication6990
      @mehlyfication6990 4 ปีที่แล้ว +1

      I'm highly interested in this too. Did you find an answer to your question already?

  • @wenlongteo6272
    @wenlongteo6272 4 ปีที่แล้ว +1

    Is it the same with Flutter UI?

    • @0877adri
      @0877adri 4 ปีที่แล้ว

      Very similar yes, the flutter team helped to create compose as I heard. The speaker here comes I think originaly from the react world.

  • @shaiquekhan1185
    @shaiquekhan1185 3 ปีที่แล้ว

    How can I like a video a few hundred times?

  • @KnoxCho
    @KnoxCho 4 ปีที่แล้ว

    The Compose slack link leads to kotlinlang group?

  • @dilanatabaychannel9611
    @dilanatabaychannel9611 2 ปีที่แล้ว

    thanks!

  • @tricksilver04
    @tricksilver04 3 ปีที่แล้ว

    do we have pub.dev like component search for Jetpack Compose components?

  • @billyanderson2218
    @billyanderson2218 3 ปีที่แล้ว

    do we still need fragment ? when i see this concept its not relevant to have fragment

    • @denkling
      @denkling 3 ปีที่แล้ว

      Good question. I would also think no.

  • @bdmaxvalera
    @bdmaxvalera 4 ปีที่แล้ว

    I don't know if i'm looking a flutter/dart code or kotlin code kkkkkkkkkkkk

  • @valeriandemichev4198
    @valeriandemichev4198 3 ปีที่แล้ว

    what will be with animations: motion layout and transitions? will it support them?

  • @deepakbisht4957
    @deepakbisht4957 2 ปีที่แล้ว

    Android Development is like migrate your code in every 2 years to something different.
    Good side is you will never get bored they literally add new things too soon but down side it lot of work to do at same time to maintain code...

  • @eshiettoto-obong4875
    @eshiettoto-obong4875 3 ปีที่แล้ว

    Please is there a web page to see all possible composables one can use?

  • @kratom82
    @kratom82 3 ปีที่แล้ว

    what am i missing to use CoilImage?

  • @jaderyanpais8645
    @jaderyanpais8645 4 ปีที่แล้ว

    Is That Good News For Android Users

  • @rounakchourasia2030
    @rounakchourasia2030 4 ปีที่แล้ว

    But it's like making android app in eclipse.

  • @shaun.august
    @shaun.august 4 ปีที่แล้ว

    Congrats to Android world as we have Compose in alpha now...

  • @AndoNoSekai
    @AndoNoSekai 4 ปีที่แล้ว

    Nice! No need for Fragments, Navigation Component, RecyclerView, ViewPager and all that other boilerplate! Finally I feel free to create engaging UIs! A few things are missing, but we are almost there

    • @Zhuinden
      @Zhuinden 4 ปีที่แล้ว +2

      No need for Navigation component? Who's going to track the navigation state across process death? Of course, you can use my library too, but that's because they're on the same level of abstraction.

    • @AndoNoSekai
      @AndoNoSekai 4 ปีที่แล้ว

      @@Zhuinden Navigation can be handle by Compose and single Activity apps are much more feasible

    • @Zhuinden
      @Zhuinden 4 ปีที่แล้ว

      @@AndoNoSekai As long as you are acutely aware of still handling savedInstanceState and restoration of navigation state across process death, sure

    • @AndoNoSekai
      @AndoNoSekai 4 ปีที่แล้ว

      @@Zhuinden Sure, that can be handled too. There are a few things missing to fully enable this nicely but it can be achieved

    • @keithkaranu4258
      @keithkaranu4258 4 ปีที่แล้ว

      @@AndoNoSekai from what I understand that's not in the scope of compose.

  • @losticarus3363
    @losticarus3363 4 ปีที่แล้ว

    This is almost Flutter for Kotlin

  • @akthamahmed2171
    @akthamahmed2171 4 ปีที่แล้ว

    I am so excited about Compose UI.🤩

  • @markonovakovic3838
    @markonovakovic3838 4 ปีที่แล้ว

    Really great video

  • @sky-xk5be
    @sky-xk5be 4 ปีที่แล้ว

    Awesome feature, sooo excited

  • @lahadesumit
    @lahadesumit 4 ปีที่แล้ว

    Great explaination !!👍

  • @arsen1156
    @arsen1156 4 ปีที่แล้ว

    So cool, very excited!

  • @StraplessReligion
    @StraplessReligion 4 ปีที่แล้ว

    nice

  • @hdkloh6857
    @hdkloh6857 4 ปีที่แล้ว

    Finally in Alpha....

  • @CamiloVillada
    @CamiloVillada 4 ปีที่แล้ว

    This is just amazing!

  • @dhimandasgupta
    @dhimandasgupta 4 ปีที่แล้ว

    Wow wow wow. Alpha. Still showing dev 17

  • @Hamza-ny7rx
    @Hamza-ny7rx 4 ปีที่แล้ว

    it similar to flutter

    • @Hamza-ny7rx
      @Hamza-ny7rx ปีที่แล้ว

      okay after 2 years i am watching this video again

  • @the_gift_of_Allah
    @the_gift_of_Allah 3 ปีที่แล้ว

    There's a mistake in the code shown at 3:26
    by looking at the example shown to the right of the code, I believe the second column declaration must've been a row declaration instead.

  • @luxuryviplifestyle9494
    @luxuryviplifestyle9494 4 ปีที่แล้ว

    Hi all team
    Please we need an application for videos like youtube rival and emulate youtube soon please

  • @santoshpillai3696
    @santoshpillai3696 3 ปีที่แล้ว

    Notes for myself:
    - States in compose: 11:40
    - Architecture: 16:00

  • @John-ub3su
    @John-ub3su 4 ปีที่แล้ว

    3:20 the function name ‘JetChat’. Why the 'J' a capital letter

    • @loic.bertrand
      @loic.bertrand 4 ปีที่แล้ว +1

      I think it's a convention meant to differentiate between composable functions which act more like components with memory, and normal Kotlin functions.

  • @Chintanparmar
    @Chintanparmar 4 ปีที่แล้ว

    This is so cool! But feels more like Flutter 😅

  • @boris1537
    @boris1537 4 ปีที่แล้ว +1

    Stop introducing new. Fix existing.

    • @keithkaranu4258
      @keithkaranu4258 4 ปีที่แล้ว

      They can't without introducing breaking changes which is why they decided to start over.

  • @numankaraaslan
    @numankaraaslan 4 ปีที่แล้ว

    Correct me if i'm wrong. Kotlin is swift copycat, this one is SwiftUI copycat?

    • @fabiandiartt6382
      @fabiandiartt6382 4 ปีที่แล้ว +1

      And SwiftUI is Flutter copycat? It's declarative UI pattern

    • @tjdah10
      @tjdah10 4 ปีที่แล้ว +7

      Kotlin came out before Swift

    • @vlastos
      @vlastos 4 ปีที่แล้ว +2

      Is swiftUi copycat of react then? All frameworks get inspired by the enviroment

    • @AndoNoSekai
      @AndoNoSekai 4 ปีที่แล้ว

      And they are all just inspired by React and C#

    • @vlastos
      @vlastos 4 ปีที่แล้ว

      @@AndoNoSekai and those are copying algol because they have for loops