MVC-MVP-MVVM : Sự khác biệt?
19:06
Observe Design Pattern
22:03
Жыл бұрын
Adapter Design Pattern
11:15
Жыл бұрын
Jetpack Compose Bottom Sheets
42:12
Jetpack Compose Scaffold
34:54
Жыл бұрын
Jetpack Compose Side-Effects
53:38
Prototype Design Pattern
9:38
Жыл бұрын
Jetpack compose theme
1:10:42
Жыл бұрын
Jetpack Compose CompositionLocal
33:52
Jetpack Compose Navigation
1:13:06
2 жыл бұрын
Пікірлер
@alvin942
@alvin942 Күн бұрын
Series hay bị drop 🥲🥲
@antran8613
@antran8613 10 күн бұрын
a chia sẻ rất hay
@NgocPham-NgocPB04
@NgocPham-NgocPB04 12 күн бұрын
Anh có thể làm về API trong Jetpack Compose không ạ
@Cuangk3
@Cuangk3 16 күн бұрын
quá tuyệt vời, cảm ơn anh ạ
@thanghuu2304
@thanghuu2304 Ай бұрын
Anh giảng dễ hiểu quá
@lapnghiepshopee
@lapnghiepshopee Ай бұрын
còn koin thì sao a
@NgocPham-NgocPB04
@NgocPham-NgocPB04 Ай бұрын
Anh có thể làm thêm về Room Database trong Jetpack không anh. Cảm ơn anh
@darklaw8470
@darklaw8470 3 ай бұрын
a làm thêm 1 số real project có cả server các thứ được k ạ, e thấy có mỗi kênh anh tiếng việt dạy kotlin hay quá
@nguyenanhkiet9743
@nguyenanhkiet9743 3 ай бұрын
a ơi có lỗi ở chỗ khi scroll lần đầu thì nó init 2 lần thì phải và sẽ có 2 video cùng phát lúc đó mong a chỉ cách sử lỗi này ạ
@nhatvm
@nhatvm 3 ай бұрын
Các bạn chọn branch trong Link github : github.com/frank-nhatvm/jetpack-compose-youtube. Phần List và Grid , branch là list_grid_end
@NgocPham-NgocPB04
@NgocPham-NgocPB04 3 ай бұрын
Anh cho em xin source code của phần này được không ạ
@tgound4502
@tgound4502 4 ай бұрын
anh ơi ở cái đoạn làm CreatorCard, sao anh không gom mấy element như Avatar, 2 dòng text tên và cái Follow Button trong 1 cái Column rồi constraint nó mà phải chia nhỏ hơn để rồi phải constraint nhiều vậy anh. Như vậy có optimize hiệu năng hơn gì không ạ, mong anh giải đáp
@nhatvm
@nhatvm 4 ай бұрын
không giống như của XML,ConstraintLayout ở Jetpack Compose không giúp tối ưu hoá bằng việc giảm độ sâu của cây view. MÌnh dùng ConstraintLayout theo cách đó vì mình không muốn bọc nhiều Compose với nhau thôi. Bạn có thể cho Column như bạn nói.
@minhang5240
@minhang5240 4 ай бұрын
em dùng horizontalPager hay VerticalPager khi scroll không được mượt như a nhỉ? Nó lag lag giật giật
@laison2165
@laison2165 4 ай бұрын
link gitthub bị loi a ạ
@nhatvm
@nhatvm 4 ай бұрын
vẫn vào được bạn nhé github.com/frank-nhatvm/jetpack-compose-youtube
@NgocPham-NgocPB04
@NgocPham-NgocPB04 3 ай бұрын
@@nhatvm em vào link nhưng không thấy nội dung code của bài anh ạ
@nhatvm
@nhatvm 3 ай бұрын
@@NgocPham-NgocPB04 check theo branch bạn nhé
@chithien1st
@chithien1st 4 ай бұрын
jetpack compose nay hoc kho xin thuc tap khong anh , e o SG cac cong ty ko thay ai tuyen inter fresher ve cai nay het
@TuongTraninh
@TuongTraninh 4 ай бұрын
mong anh ra video tiếp theo
@oanPhuong-fx5cq
@oanPhuong-fx5cq 4 ай бұрын
Anh có thể chia sẻ file figma được không ạ ?
@nhatvm
@nhatvm 4 ай бұрын
chắc ý bạn là link này : mind42.com/mindmap/78ed0932-fa34-49a6-b0ab-b330b0ac54ab
@vg_7guitar
@vg_7guitar Ай бұрын
@@nhatvm em cũng đang cần ạ, rất cảm ơn anh
@TuongTraninh
@TuongTraninh 5 ай бұрын
cảm ơn anh frank nhiều ạ. video rất hay
@TuongTraninh
@TuongTraninh 5 ай бұрын
hay qua cảm ơn a frank nhiều
@hoanghai5572
@hoanghai5572 5 ай бұрын
Jetpack compose thực chất cũng mới phát triển mạnh gần đây thôi, nên cũng sẽ ko hỏi quá sâu và chi tiết đâu, dù là cho sen, chủ yếu vẫn sẽ xoay quanh lifecycle, garbage collection, sideeffect, couroutines
@nhatvm
@nhatvm 5 ай бұрын
Mindmap: mind42.com/mindmap/78ed0932-fa34-49a6-b0ab-b330b0ac54ab
@lucle4076
@lucle4076 5 ай бұрын
Hi anh, em mới bắt đầu tìm hiểu thêm về jetpack compose. Thì không biết anh có thể share cái mindmap lộ trình học jetpack compose như trên video để em có thể bám theo để học về jetpack compose được không anh? Em cảm ơn.
@nhatvm
@nhatvm 5 ай бұрын
mình sahre rồi bạn nhé
@phuocleaf
@phuocleaf 5 ай бұрын
hiện tại đối với fresher thì jetpack compose đã là yêu cầu bắt buộc phải biết chưa ạ, hiện tại em chỉ biết một chút ít về kotlin xml và build được một shopping app nho nhỏ thì em nên tìm hiểu thêm để vững kotlin xml, các main component và clean architecture trước hay là học jetpack compose ạ?
@daihaminh2639
@daihaminh2639 5 ай бұрын
a làm tiếp databinding với ạ
@daihaminh2639
@daihaminh2639 5 ай бұрын
giống bloc của flutter ghê :))
@PhuLe-pm1gz
@PhuLe-pm1gz 5 ай бұрын
Video chia sẻ của bạn rất hay, cảm ơn bạn đã dành thời gian để làm ra nó.
@quangthaita6084
@quangthaita6084 5 ай бұрын
video của a rất bổ ích với cả dev lẫn nhà tuyển dụng. Chúc a nhiều sức khoẻ và có thêm những video chia sẻ kiến thức 💪🏻
@nonggggg6491
@nonggggg6491 5 ай бұрын
A có thể làm mindmap cho phía android java được k ạ🥹
@nhatvm
@nhatvm 5 ай бұрын
chào bạn, mình không làm Java được vài năm rồi nên không thường xuyên cập nhật. Mình cũng mong muốn tập trung vào Kotlin nên không làm được mindmap như bạn mong muốn. Mong bạn thông cảm.
@tuanhiepmai1609
@tuanhiepmai1609 5 ай бұрын
hay quá a
@hoangson8609
@hoangson8609 5 ай бұрын
Hay quá ạ
@thaitrongtin3737
@thaitrongtin3737 5 ай бұрын
Luôn theo dỗi a
@nguyenanhky-jr4vp
@nguyenanhky-jr4vp 5 ай бұрын
em cam on anh a❤
@NinhPham-s6e
@NinhPham-s6e 6 ай бұрын
tiếp đi bạn ơi
@MaiMaiHoc
@MaiMaiHoc 6 ай бұрын
Bài giảng rất hay, dễ hiểu, cảm ơn bạn nhiều.
@minhtrihoang6192
@minhtrihoang6192 6 ай бұрын
Tuyệt vời quá anh ơi
@nguyengiabao9482
@nguyengiabao9482 6 ай бұрын
Hình như phiên bản mới nó không hỗ trợ pageCount nên đây sẽ là đoạn code mới: fun ListForYouVideoScreen( modifier: Modifier = Modifier, ) { val pagerState = rememberPagerState(pageCount = { 10 }) VerticalPager(state = pagerState) { videoId -> val vieModel: VideoDetailViewModel = hiltViewModel(key = videoId.toString()) VideoDetailScreen(videoId = videoId, vieModel = vieModel) } }
@NGUYỄNVĂNTÂNPHÚC-j4k
@NGUYỄNVĂNTÂNPHÚC-j4k 6 ай бұрын
Em đang làm cái project cuối kì jetpack compose. Anh cho em hỏi có cách nào thêm ô nhập tìm kiếm vào topBar của M3 không anh. Em search internet mãi không ra nên em làm 1 cái searchIcon trong actions nhấn vào sẽ dẫn đến SearchBar của M3. Mà nếu dùng cái searchBar của M3 thì em lại không có cách nào để thêm backIcon ở phía trước ô tìm kiếm. Mong nhận phản hồi từ anh.
@nhatvm
@nhatvm 6 ай бұрын
Mình không rõ bạn thiết kế giao diện như thế nào nên không chắc lắm. Mình hình dung là bạn đang muốn có 1 cái topbar với backIcon và phần còn lại là search. Có hai cách : 1 là tự build topbar theo ý bạn. 2 là dùng topbar và trong cái title của topbar thì bạn để cái searchbar vào đó.
@NGUYỄNVĂNTÂNPHÚC-j4k
@NGUYỄNVĂNTÂNPHÚC-j4k 6 ай бұрын
@@nhatvm em cảm ơn anh nhiều ạ. Có vẻ cách 2 nó có bug, chắc em phải làm cách 1 rồi.
@phucaynhe5611
@phucaynhe5611 6 ай бұрын
anh cho em hỏi, em dùng cái lazyrow thì làm sao để kích thước các item rộng bằng 1 nữa phần nhìn thấy ban đầu của lazyrow anh. Kiểu lúc đầu thì ta chỉ thấy 2 phần tử hiển thị trên lazyrow ấy anh
@nhatvm
@nhatvm 6 ай бұрын
Bạn có thể set độ rộng của item. modifier.height . bạn có thể tính độ rộng của item bằng 1 nửa của độ rộng của màn hình. Để lấy được độ rộng của màn hình: val screenWidth = LocalConfiguration.current.screenWidthDp
@phucaynhe5611
@phucaynhe5611 6 ай бұрын
@@nhatvm Em cảm ơn anh
@athoang2238
@athoang2238 6 ай бұрын
mình có làm video nào về mvvm patterns kh á anh
@nhatvm
@nhatvm 6 ай бұрын
bạn xem thử cái này : kzbin.info/www/bejne/bobKiZlug9x5qM0si=LOSoOIkSbH3U2I-J
@nhatvm
@nhatvm 6 ай бұрын
nếu là xml layout thì bạn xem series này : kzbin.info/www/bejne/d4jRenV7gbGJZpYsi=FF3JU7EaZSQdl7p6
@athoang2238
@athoang2238 6 ай бұрын
@@nhatvm ngoài này ra thì mình có video nào apply cái mvvm pattern với jetpack compose kh anh
@nhatvm
@nhatvm 6 ай бұрын
@@athoang2238 Với Jetpack compose, mình chủ yếu dùng MVI. Hiện tại mình đang bận nên chưa có thời gian làm các video tiếp theo
@athoang2238
@athoang2238 6 ай бұрын
@@nhatvm thanks anh
@NamPham-yp1lo
@NamPham-yp1lo 6 ай бұрын
Chia sẽ hay vãi.
@HoangHuu194
@HoangHuu194 6 ай бұрын
a đặt 2 class VideoDetailScreen giống nhau làm hơi cấn cấn
@nhatminhnguyen6092
@nhatminhnguyen6092 6 ай бұрын
25:15 anh ơi, em ko có cái rememberAsyncImagePainter thì phải làm sao a
@ucphu8830
@ucphu8830 6 ай бұрын
cái này khó tiếp cận quá , anh có thể làm seri basic từ dễ đến khó không
@nhatvm
@nhatvm 6 ай бұрын
có cái seri làm từ đầu, giải thích dêpndecy là gì, các loại, DI manually như thế nào nhưng mà làm bằng tiếng anh mấy năm trước. Hiện tại mình bận chưa có thời gian chuyển sang tiếng việt : kzbin.info/www/bejne/gnTGiYV_grmLrtU
@ucphu8830
@ucphu8830 6 ай бұрын
em chỉ biết dùng databinding cho mvvm thôi , em không biết dùng cái này , khó quá
@p_minhnhat
@p_minhnhat 7 ай бұрын
mình lần đầu học android cũng chưa đụng xml, xem khó khăn thật nhưng vẫn hiểu.
@phucnguyentran4533
@phucnguyentran4533 7 ай бұрын
9:11 đoạn này hài ghê :D cảm ơn anh series về Jetpack Compose rất hay và bổ ích
@vinhtruong5801
@vinhtruong5801 7 ай бұрын
Series hay quá a ơi, mà sao a drop luôn rồi ;((
@nhatvm
@nhatvm 7 ай бұрын
đang bị deadline dí bạn ơi. mấy nữa rỗi mình làm tiếp
@TinNguyenThanh-ko6pi
@TinNguyenThanh-ko6pi 7 ай бұрын
a ơi làm sao để thêm video vào vậy ạ ?
@nhatvm
@nhatvm 7 ай бұрын
bạn tạo folder trong res folder giống như trong source code ở github nhé