Hello.. Thank you very much.. English is not common language here.. So, many people here struggle in learning in English. That's why I made these videos in Indonesian.. I hope these videos still can help you although you don't understand my language.. :)
@@ericodarmawan English doesn't matter. I'm trying to understand the codes. I like your subjects. My English is not good either. I'd like to be able to speak Indonesian one day.Turks and Indonesians are brothers.thank you for your training
Jika menggunakan flutter SDK saat ini (sdk ver 2.2.3 untuk windows) maka code ini jadi error pak. Supaya code nya bisa jalan lagi: 1. Mesti ganti di pubspec.yaml nya jadi flutter_bloc: ^3.0.0 2. Di main.dart nya, semua perintah bloc.dispatch diganti jadi bloc.add 3. di bagian atas (sebelum) dari ColorBloc blocVar = BlocProvider.of(context); harus ditambah perintah //ignore: close_sinks (supaya tidak ada warning dari flutter nya) Berdasarkan hal seperti ini, apa sebaiknya kita pakai BLoC dengan library flutter_bloc (yang kemungkinan kedepannya akan ada perubahan syntax lagi, saat ini saja sudah versi 7.1.0) atau memakai BLoC dengan stream controller dan stream builder (code jadi lebih panjang dan terlalu detail tapi tidak ada ketergantungan pada suatu library)? Pak Erico pakai BLoC metode flutter_bloc atau metode stream controller + stream builder?
Flutter SDK terbaru gpp selama yg digunakan itu bukan SDK yg terbarunya.. Dan juga versi package yg digunakan sesuai video.. Coba tonton video Flutter Tutorial saya yg nomor 00.. Di sana saya jelasin caranya supaya bisa tetep ngikutin video saya meski Flutter SDK nya yg terbaru..
Pakai Flutter Bloc juga ga masalah.. Skrg pas belajar kayak yg sering berubah.. Itu krn baru sekarang2 belajarnya.. Aslinya itu lama banget berubahnya.. Kalau utk belajar, sebaiknya tetep ikuti sesuai video.. Supaya bener2 ngerti dari awalnya.. Bahkan klo belajar lewat Stream kan jadi lebih ngerti.. Klo lomoat ke versi terbaru, mgkn cuma bisa pake doank.. Tapi ga ngerti dalem2nya.. Saya sendiri pakai Flutter Bloc.. Bikin mobil ga usah bikin rodanya juga.. Saya ajarin bikin rodanya supaya kalau2 perlu roda custom atau parik rodanya bangkrut, kita masih bisa bikin mobil dgn roda buatan sendiri.. 😊
klu pakau v 3.0.0,di dokumentasi gk perlu ColorBloc bloc = BlocProvider.of(context); tp di floatingactionbutton diganti jadi BlocProvider.of(context).add(ColorEvent.to_amber); sama saja sih.cuma di tampungin ke variabel saja. setidaknya peringatan diterminal yang //ignore: close_sinks gk ada.heheh
temen temen yang baru nonton ini, flutter_bloc sudah ada versi yang baru, jadi beberapa kode di video ini sudah ditinggalkan, seperti mapeventtostate sudah digantikan, untuk melihat vidio yang baru lihat playlist flutter 2 erico episode 16
Untuk mengikuti video di playlist saya, pakai versi yg sama dengan di video.. Karena saya ingin mengajarkan agar dapat menjadi programmer yg memiliki pemahaman yg kuat, maka yang perlu ditangkap dalam setiap video adalah konsepnya dan logika berpikirnya.. Jangan terpaku atau terganggu dgn masalah syntax.. Contohnya dalam video ini.. Meskipun syntaxnya dan versinya menggunakan yg lama, namun saya menjelaskan konsep dan cara kerja Bloc di sini.. Di video2 selanjutnya, saya hanya mengajarkan beberapa perubahan yg ada di versi tersebut. Saya tidak menjelaskan ulang mengenai konsep Bloc lagi.. Jadi, kalau yg belajarnya loncat2 atau hanya melihat syntax (cara penulisan) nya saja.. Pasti di suatu titik akan bingung dgn apa yg saya jelaskan atau bingung dgn pola pikir yg saya terapkan.. Pasti akan bingung dengan "why" nya..
mohon maaf pak karena saya masih awam dan kalau pertanyaan saya tidak sesuai dengan konteks. ijin bertanya pak, di video yang ingin di ubah adalah warna nya sehingga state nya itu color. apakah itu adalah type data atau properties nya ya pak. misalkan saya ingin mengubah teks, apakah state nya nanti jadi text atau string pak
Color itu adalah tipe dari state nya.. Kalau yg mau disimpan adalah sebuah tulisan, maka tipe dari state nya adalah String.. Dicoba2 aja dulu.. Jgn langsung lanjut ke video selanjutnya.. Supaya lebih paham..
Mantap pak, btw mau nanya utk fitur subscription gimana ya pak, yg mana ketika suatu screen di buka dia menjalan kan suatu function terlebih dahulu. thx pak 👍👍
Terimakasih bang, ini lebih simple bang. tapi mending mana kalau bang rico bki sendiri atau pakai package? kalau makain package apa g bkin size app nya nambah?
Bedanya pakai package atau bikin sendiri itu sama dengan buat nasi goreng pakai bumbu Indof**d atau buat sendiri. Bahan2 tetep sama.. Size juga ga akan terlalu pengaruh.. Krn bedanya hanya kode program tersebut kita yg tulis atau pembuat package yg nulis.. Bedanya, ya kita jadi lebih ga repot. Kekurangannya, kita harus ngikutin fitur dan cara kerja package tersebut. Kalau buat sendiri, bisa suka-suka kita mau kasih fitur apa aja. Tapi, kalau memang fiturnya udah lengkap dan memang bagus, kenapa tidak? Pakai aja packagenya.. Ga perlu kita repot2 buat semua dari nol.. Saya ajarin cara manual (video nomor 44), supaya para viewer bisa ngerti daleman nya. Seperti apa. Jadi, kalau tiba2 package nya ngga dilanjutkan/hilang, minimal bisa bikin sendiri dengan cara manual tadi.
untuk tahun sekarang karena bloc udah update jauh banget dari video ini, jadi kasusnya gak bisa di praktekan, kalau di paksa untuk praktek bakalan error karena null safetynya
cara buat lebih dari 1 yield atau output dengan bloc dalam satu class caranya gimana pak? misal saya ingin ubah warna jadi biru, terus ada teksnya juga berubah jadi "Tema Biru". kalau provider kan gampang tinggal buat variabel baru. tapi kalau bloc ada dalam mapEventToState. Mohon penjelasannya pak, masih belajar
Text dan Warnanya dijadikan satu di dalam 1 state.. Nanti di materi2 Bloc berikutnya ada yg State nya buat class sendiri.. Jadi, bisa dimasukkan di situ yg mau berubahnya apa aja.. Ikutin aja terus tutorialnya
bg, maaf saya nanya lagi nih, dari kemaren selalu nnya bg di tutor ini abg ngajari cara penggunaan 1 bloc saja, apa ada referensi penggunaan MultiBlocProvider bg, atau bisa di bikinin cara penggunaan MultiBlocProvider dalam satu halaman yang sama bg, atau ada cara lainnya bg mohon bantuannya bg
Bisa koq pakai multiblocprovider.. Kebetulan video berikutnya mau nunjukin itu.. Selain multibloc, juga nanti multipage.. Ditunggu ya.. Saya masih sedang nyiapin bahan kuliah dulu..
Siappp bg, terima kasih banyak bg, yaa alhamdulilah selama saya ngikuti tutor dri abg saya sedikit2 mulai paham, karena untuk flutter ini masih baru dan saya dulu basic nya web, dan frameworknya make react native bg, so aturan dan tata cara pengkodingan dart ini masih nol besar bagi saya bg, sekali lagi saya ucapkan terima kasih atas tutornya bh🙏🙏🙏
Terimakasih atas ilmunya pak, sangat mudah untuk dipahami, saya merasa sangat terbantu dengan penjelasannya.. :) Ada yg ingin saya tanyakan terkait bloc pak, flutter_bloc ini kayanya hampir sama perannya ya dengan rxdart. Jika memang jawabannya sama, pertanyaan saya ini pak, kira kira lebih powerfull mana ya antara flutter_bloc atau rxdart tersebut, powerfull dalam hal penggunaan memory maupun fiturnya.. Terimakasih pak atas kesediaanya menjawab :)
Halo.. Untuk rxdart saya belum pernah coba.. Jadi blm bisa menjawab pasti.. Coba di-googling atau tanya di group Telegram/FB Flutter Indonesia.. Mungkin ada yang pernah coba.. Sorry ya..
Siap pak. Terimakasih pak, saya jg blm pernah mencoba pak, dr googling saya sering nemu code yg pake rxdart tsb, jadi penasaran kenapa kebanyakan orang pakai rxdart, padahal mgkin menurut saya yg di flutter_bloc sdh cukup.. Salam
izin menambahkan pak, untuk fllutter_bloc versi baru, 'dispatch' diganti dengan 'add' . lalu untuk class ColorBloc-nya (karena dia extends ke Bloc) harus pakai constructor, dimana constructornya bisa diisi dengan initialState (dalam kasus ini bisa diisi dengan Colors.amber) . . . benar begitu bukan Pak ? heheh
Untuk flutter bloc versi terbaru, seharusnya syntaxnya masih sama dengan video berikut ini.. ruclips.net/video/zQ3FjZws42E/видео.html Hanya saja mulai versi 7 sudah mendukung null safety..
Kalau bingung, ikuti aja dulu sesuai video.. Supaya syntaxnya sama dan ga bingung.. Fokus dengan materinya dulu.. Terutama utk flutter bloc, saya pasti update kalau ada perubahan2 krn saya memang pakainya Bloc..
Om maaf belum paham Bedanya import 'package:bloc/bloc.dart'; di color_bloc.dart dengan import 'package:flutter_bloc/flutter_bloc.dart'; di main.dart apa ya? Terimakssih
Di color_bloc.dart, ada class dari bloc.dart yang kita pakai.. Makanya kita import bloc.dart.. Di main, ada class dari flutter_bloc.dart yang kita pakai, makanya kita import itu juga..
maaf pak mau tanya apa perbedaan async, return dengan async*, yield ? karena saya pernah liat tutorial lain pakai stream juga tapi tetap pakai async, return
@@ericodarmawan sudah paham pak kalau async cuma maksud saya kenapa sih pakai async* , yield kalau bisa pakai async, return. Atau mungkin kenapa sih di contoh tutorial ini harus pakai async*.
Kalo ada case begini: fitur perpustakaan digital dimana nanti nya ada fitur sudah sampai mana bacaan sudah dibaca , itu bagusnya disimpan setingan nya pake provider state atau bloc ya?
Semisal _color yang di ColorBloc nya didapat dari perubahan warna terakhir gmana ya pak ? saya coba simpan warna terakhir di shared preferences, tapi belum bisa
Pak, saya ada case gini. saya punya data user ketika login. data itu di simpan di dalam class. dan data di class ini bisa di akses oleh semua screen di flutternya. solusinya gimana pak. mau nya saya ga pake sharedpref. jadi datanya di simpan di variable classnya. mohon bantuannya pak
kalo kita ada model yg mengembalikan stream berbeda apa tetap satu class bloc mas? misalnya satu utk return list user, satu lagi mau return user aja. soalnya satu class bloc udah satu di set satu aja output streamnnya berdasarkan contoh.
Sebetulnya.. Kalau memang buat sendiri (seperti pada video nomor 44), bebas2 aja sih.. Kita bisa aja buat ada lebih dari 1 jenis Stream.. Stream yg dipakai tergantung dari jenis event yg dimasukkan.. Tapi, cara seperti ini tidak disarankan, karena akhirnya si BLoC tersebut isinya jadi campur2.. Jadi kotor.. Jadi, sebaiknya memang 1 BLoC mengeluarkan 1 jenis Stream saja.. Kalau menggunakan package flutter_bloc (pada video nomor 45), itu sudah dibuat memang hanya 1 jenis Stream saja yg bisa keluar falam 1 jenis BLoC. Semoga menjawab pertanyaannya.
@@ericodarmawan harus pake perintah "flutter pub get" ke terminal setelah nambah di pubspec.yaml dan di save nya gk sih bang ? di video abang keknya gk pernah ngetik perintah itu di terminal, saya pake vscode harus pake flutter pub get biar di import keluar nama packagenya
@@ericodarmawan ok bang makasih, saya kn ngikutin kelas abang yang flutter fundamentalis di website buildwithangga, jumlah videonya beda ama yang di youtube kenapa bang?
bang sy liat subscribernya sudah banyak, kenapa ga pasang iklan bang? Sy udah saranin ke teman teman sy nih untuk nonton channelnya abang buat yg mau belajar flutter.
Halo Mas.. Haha.. Makasih ya.. Syarat utk pasang iklannya belum memenuhi.. Masih ada syarat watch time (jumlah waktu ditonton). Harus 4000 jam dalam 1 tahun terakhir.. 😆 Kebanyakan kalo nonton video tutorial kan di skip-skip.. Jadinya lama dapetnya.. Hahaha..
@@ericodarmawan Oh sisa watch time nya yah.. Sip sip, semoga dengan ikutnya teman sy nonton tutorial flutternya ini. Watch timenya segera tercapai. Semangat bang... Terus berkarya.
Hehe.. Makasih ya Mas utk support nya.. Semoga semua videonya dapat memberikan banyak manfaat utk semua orang.. Terutama masyarakat Indonesia yang mungkin belum ada kesempatan utk mengenyam pendidikan di Universitas.. 😊🙏🏻
Sama aja.. Pakai http request.. Bloc itu cuma masalah State Management aja.. Sisanya sih sama.. Berikut ada contohnya, hanya saja package yg digunakan bukan rxdart, tapi flutter_bloc sperti yang saya pakai di video saya. felangel.github.io/bloc/#/flutterinfinitelisttutorial
Kan initState itu nilai default sedang kang klo mau pakein _color state nanti kan si _color nilainya berubah ubah.. berarti nilainya ga bisa default lagi dong
gan kalo kita mau ngirim data lewat bloc gimana caranya? misalnya kita menambahkan item ke cart, nah ngirim data nya itu apakah lewat event atau gimana?
Nah class event nya itu seperti apa gan? Kalau tutorialnya kan pakai enum, kalau memakai kelas Item seperti apa kelasnya. Mungkin kalau boleh minta dibuatin tutorial juga 😊
@@misbahansori mirip spt ini ruclips.net/video/5ZwNx9GG3pc/видео.html Di sana State saya yg berupa class.. Tinggal diganti aja, event nya yg berupa class..
// Kalau seperti ini UI nya tidak mau update gan currentState.add(event.cart); yield currentState; // Jadi saya buat seperti ini yield List.from(currentState); memang harusnya begitu atau ada cara lain gan?
Sampai saat ini sih belum ada yg bisa bilang mana yg lebih bagus dari yg mana.. Kalau pun ada yg nyoba itu pun terbatas dari kasusnya.. Jadi, menurut saya.. Sebaiknya sih dipelajari aja bbrp teknik State Management nya.. Lalu silahkan dipakai yang paling dikuasai dan dimengerti.. Krn tujuan dari tiap teknik State Management sih sama, yaitu menghindari refresh/redraw widget2 yang tidak diperlukan utk meningkatkan performa.. 😊 Tapi kalau yg saya, saya pakainya BLoC krn ada Hydrated BLoC nya juga.. Jadi ga perlu terlalu repot ngurus Shared Preference nya juga ketika mau menyimpan state dari si BLoC tersebut.. 😁
async* bintang itu utk method yg berupa stream.. Dia akan memberikan nilai terus menerus.. Makanya pakai yield, bukan return.. Kalau return, cuma sekali mengembalikan nilai lalu selesai..
Terimakasih ilmunya pak erico, sangat paham dengan penjelasan Bapak🙏😊
Iya.. Sama2.. 😊
Di sini baru agak paham, video 44 masih kurang paham saya😁
Haha.. Justru ini uda dibungkus.. Klo video 44 itu penjelasan dalem2nya.. Supaya kebayang kira2 apa yg ada di sini..
hi brothers, I'am from turkey. nice lessons. very thank you.
Hello.. Thank you very much.. English is not common language here.. So, many people here struggle in learning in English. That's why I made these videos in Indonesian.. I hope these videos still can help you although you don't understand my language.. :)
@@ericodarmawan
English doesn't matter. I'm trying to understand the codes. I like your subjects. My English is not good either. I'd like to be able to speak Indonesian one day.Turks and Indonesians are brothers.thank you for your training
Jika menggunakan flutter SDK saat ini (sdk ver 2.2.3 untuk windows) maka code ini jadi error pak. Supaya code nya bisa jalan lagi:
1. Mesti ganti di pubspec.yaml nya jadi flutter_bloc: ^3.0.0
2. Di main.dart nya, semua perintah bloc.dispatch diganti jadi bloc.add
3. di bagian atas (sebelum) dari ColorBloc blocVar = BlocProvider.of(context); harus ditambah perintah //ignore: close_sinks (supaya tidak ada warning dari flutter nya)
Berdasarkan hal seperti ini, apa sebaiknya kita pakai BLoC dengan library flutter_bloc (yang kemungkinan kedepannya akan ada perubahan syntax lagi, saat ini saja sudah versi 7.1.0) atau memakai BLoC dengan stream controller dan stream builder (code jadi lebih panjang dan terlalu detail tapi tidak ada ketergantungan pada suatu library)?
Pak Erico pakai BLoC metode flutter_bloc atau metode stream controller + stream builder?
Flutter SDK terbaru gpp selama yg digunakan itu bukan SDK yg terbarunya.. Dan juga versi package yg digunakan sesuai video.. Coba tonton video Flutter Tutorial saya yg nomor 00.. Di sana saya jelasin caranya supaya bisa tetep ngikutin video saya meski Flutter SDK nya yg terbaru..
Pakai Flutter Bloc juga ga masalah.. Skrg pas belajar kayak yg sering berubah.. Itu krn baru sekarang2 belajarnya.. Aslinya itu lama banget berubahnya.. Kalau utk belajar, sebaiknya tetep ikuti sesuai video.. Supaya bener2 ngerti dari awalnya.. Bahkan klo belajar lewat Stream kan jadi lebih ngerti.. Klo lomoat ke versi terbaru, mgkn cuma bisa pake doank.. Tapi ga ngerti dalem2nya..
Saya sendiri pakai Flutter Bloc.. Bikin mobil ga usah bikin rodanya juga.. Saya ajarin bikin rodanya supaya kalau2 perlu roda custom atau parik rodanya bangkrut, kita masih bisa bikin mobil dgn roda buatan sendiri.. 😊
klu pakau v 3.0.0,di dokumentasi gk perlu ColorBloc bloc = BlocProvider.of(context);
tp di floatingactionbutton diganti jadi BlocProvider.of(context).add(ColorEvent.to_amber);
sama saja sih.cuma di tampungin ke variabel saja.
setidaknya peringatan diterminal yang //ignore: close_sinks gk ada.heheh
temen temen yang baru nonton ini, flutter_bloc sudah ada versi yang baru, jadi beberapa kode di video ini sudah ditinggalkan, seperti mapeventtostate sudah digantikan, untuk melihat vidio yang baru lihat playlist flutter 2 erico episode 16
Untuk mengikuti video di playlist saya, pakai versi yg sama dengan di video.. Karena saya ingin mengajarkan agar dapat menjadi programmer yg memiliki pemahaman yg kuat, maka yang perlu ditangkap dalam setiap video adalah konsepnya dan logika berpikirnya.. Jangan terpaku atau terganggu dgn masalah syntax.. Contohnya dalam video ini.. Meskipun syntaxnya dan versinya menggunakan yg lama, namun saya menjelaskan konsep dan cara kerja Bloc di sini.. Di video2 selanjutnya, saya hanya mengajarkan beberapa perubahan yg ada di versi tersebut. Saya tidak menjelaskan ulang mengenai konsep Bloc lagi.. Jadi, kalau yg belajarnya loncat2 atau hanya melihat syntax (cara penulisan) nya saja.. Pasti di suatu titik akan bingung dgn apa yg saya jelaskan atau bingung dgn pola pikir yg saya terapkan.. Pasti akan bingung dengan "why" nya..
@@ericodarmawan makasih penjelasanya pak
mohon maaf pak karena saya masih awam dan kalau pertanyaan saya tidak sesuai dengan konteks. ijin bertanya pak, di video yang ingin di ubah adalah warna nya sehingga state nya itu color. apakah itu adalah type data atau properties nya ya pak. misalkan saya ingin mengubah teks, apakah state nya nanti jadi text atau string pak
Color itu adalah tipe dari state nya.. Kalau yg mau disimpan adalah sebuah tulisan, maka tipe dari state nya adalah String.. Dicoba2 aja dulu.. Jgn langsung lanjut ke video selanjutnya.. Supaya lebih paham..
Mantap pak, btw mau nanya utk fitur subscription gimana ya pak, yg mana ketika suatu screen di buka dia menjalan kan suatu function terlebih dahulu. thx pak 👍👍
Pakai BlocListener..
wow thank's a lot for the fast responses. saya pelajari dlu pak 👍👍
Terimakasih bang, ini lebih simple bang. tapi mending mana kalau bang rico bki sendiri atau pakai package? kalau makain package apa g bkin size app nya nambah?
Bedanya pakai package atau bikin sendiri itu sama dengan buat nasi goreng pakai bumbu Indof**d atau buat sendiri. Bahan2 tetep sama.. Size juga ga akan terlalu pengaruh.. Krn bedanya hanya kode program tersebut kita yg tulis atau pembuat package yg nulis.. Bedanya, ya kita jadi lebih ga repot. Kekurangannya, kita harus ngikutin fitur dan cara kerja package tersebut. Kalau buat sendiri, bisa suka-suka kita mau kasih fitur apa aja. Tapi, kalau memang fiturnya udah lengkap dan memang bagus, kenapa tidak? Pakai aja packagenya.. Ga perlu kita repot2 buat semua dari nol.. Saya ajarin cara manual (video nomor 44), supaya para viewer bisa ngerti daleman nya. Seperti apa. Jadi, kalau tiba2 package nya ngga dilanjutkan/hilang, minimal bisa bikin sendiri dengan cara manual tadi.
@@ericodarmawan mantap bang rico. sukses selalu
kalo pas di running mncul throw FlutterError.fromParts([blablabla itu fix nya gmn ya om?
Mantap, terima kasih ilmunya
untuk tahun sekarang karena bloc udah update jauh banget dari video ini, jadi kasusnya gak bisa di praktekan, kalau di paksa untuk praktek bakalan error karena null safetynya
cara buat lebih dari 1 yield atau output dengan bloc dalam satu class caranya gimana pak? misal saya ingin ubah warna jadi biru, terus ada teksnya juga berubah jadi "Tema Biru". kalau provider kan gampang tinggal buat variabel baru. tapi kalau bloc ada dalam mapEventToState. Mohon penjelasannya pak, masih belajar
Text dan Warnanya dijadikan satu di dalam 1 state.. Nanti di materi2 Bloc berikutnya ada yg State nya buat class sendiri.. Jadi, bisa dimasukkan di situ yg mau berubahnya apa aja.. Ikutin aja terus tutorialnya
bg, maaf saya nanya lagi nih, dari kemaren selalu nnya bg
di tutor ini abg ngajari cara penggunaan 1 bloc saja, apa ada referensi penggunaan MultiBlocProvider bg, atau bisa di bikinin cara penggunaan MultiBlocProvider dalam satu halaman yang sama bg, atau ada cara lainnya bg
mohon bantuannya bg
Bisa koq pakai multiblocprovider.. Kebetulan video berikutnya mau nunjukin itu.. Selain multibloc, juga nanti multipage.. Ditunggu ya.. Saya masih sedang nyiapin bahan kuliah dulu..
Siappp bg, terima kasih banyak bg, yaa alhamdulilah selama saya ngikuti tutor dri abg saya sedikit2 mulai paham, karena untuk flutter ini masih baru dan saya dulu basic nya web, dan frameworknya make react native bg, so aturan dan tata cara pengkodingan dart ini masih nol besar bagi saya bg, sekali lagi saya ucapkan terima kasih atas tutornya bh🙏🙏🙏
Sudah ada ya penjelasannya.. Video nomor 54..
Terimakasih atas ilmunya pak, sangat mudah untuk dipahami, saya merasa sangat terbantu dengan penjelasannya.. :)
Ada yg ingin saya tanyakan terkait bloc pak, flutter_bloc ini kayanya hampir sama perannya ya dengan rxdart. Jika memang jawabannya sama, pertanyaan saya ini pak, kira kira lebih powerfull mana ya antara flutter_bloc atau rxdart tersebut, powerfull dalam hal penggunaan memory maupun fiturnya..
Terimakasih pak atas kesediaanya menjawab :)
Halo.. Untuk rxdart saya belum pernah coba.. Jadi blm bisa menjawab pasti.. Coba di-googling atau tanya di group Telegram/FB Flutter Indonesia.. Mungkin ada yang pernah coba.. Sorry ya..
Siap pak. Terimakasih pak, saya jg blm pernah mencoba pak, dr googling saya sering nemu code yg pake rxdart tsb, jadi penasaran kenapa kebanyakan orang pakai rxdart, padahal mgkin menurut saya yg di flutter_bloc sdh cukup..
Salam
Mas Req Desain UI ..
Desain UI gimana ya maksudnya?
@@ericodarmawan ngedesain Flutter mas .. Contohnya kaya UI/UX Tokopedia
Ooh.. Ntar ya.. Satu2.. Saya jg harus bahas widget2 dasarnya dulu.. Supaya ga bingung nanti pas nontonnya.. 😁
@@ericodarmawan ditunggu mbah awokawokawok
mohon maaf sebelumnya Om Erico bedanya async* sama async itu apa ya?
Sama-sama asyncronous, tapi kalau async itu nanti akan mengembalikan sebuah data (return). Kalau async*, mengembalikan aliran data / stream (yield).
@@ericodarmawan terimakasih Om Erico. Semoga sukses dan terus berkarya.
izin menambahkan pak, untuk fllutter_bloc versi baru, 'dispatch' diganti dengan 'add' .
lalu untuk class ColorBloc-nya (karena dia extends ke Bloc) harus pakai constructor, dimana constructornya bisa diisi dengan initialState (dalam kasus ini bisa diisi dengan Colors.amber)
.
.
.
benar begitu bukan Pak ? heheh
Untuk flutter bloc versi terbaru, seharusnya syntaxnya masih sama dengan video berikut ini..
ruclips.net/video/zQ3FjZws42E/видео.html
Hanya saja mulai versi 7 sudah mendukung null safety..
Kalau bingung, ikuti aja dulu sesuai video.. Supaya syntaxnya sama dan ga bingung.. Fokus dengan materinya dulu.. Terutama utk flutter bloc, saya pasti update kalau ada perubahan2 krn saya memang pakainya Bloc..
@@ericodarmawan okeh siap terima kasih banyak pakkk :D
Om maaf belum paham
Bedanya import 'package:bloc/bloc.dart'; di color_bloc.dart
dengan import 'package:flutter_bloc/flutter_bloc.dart'; di main.dart
apa ya?
Terimakssih
Di color_bloc.dart, ada class dari bloc.dart yang kita pakai.. Makanya kita import bloc.dart..
Di main, ada class dari flutter_bloc.dart yang kita pakai, makanya kita import itu juga..
maaf pak mau tanya apa perbedaan async, return dengan async*, yield ? karena saya pernah liat tutorial lain pakai stream juga tapi tetap pakai async, return
Untuk async, penjelasannya ada di playlist PBO Dart..
@@ericodarmawan sudah paham pak kalau async cuma maksud saya kenapa sih pakai async* , yield kalau bisa pakai async, return. Atau mungkin kenapa sih di contoh tutorial ini harus pakai async*.
@@akhmadnuralamsyah436 yield dan return beda.. Yield itu ga berakhir fungsinya.. Kalau return lgsg selesai..
@@ericodarmawan tidak berakhir karena stream kah ?
@@akhmadnuralamsyah436 Stream itu koneksinya yg ngga berakhir.. Kalau yield itu, methodnya yg ga langsung berakhir.. Kalau pakai retuen, lgsg selesai methodnya
Kalo ada case begini: fitur perpustakaan digital dimana nanti nya ada fitur sudah sampai mana bacaan sudah dibaca , itu bagusnya disimpan setingan nya pake provider state atau bloc ya?
Mantap tutorialnya, sedikit mau tanya, bedanya kita manajemen state dengan BLoC sama provider apa ya? Terimakasih sebelomnya
Beda teknik.. Coba aja liat di video nomor 42.. Trua, Bloc juga merupakan arsitektur aplikasi.. Lihat video saya yg judulnya MVVM..
Okey siap, terimakasih saya ikuti dulu tutorialnya
Bedanya extended dengan with apa ya koh ?
ruclips.net/video/jKb3_EuJaRE/видео.html
Tapi sebaiknya nonton dari nomor 9
Semisal _color yang di ColorBloc nya didapat dari perubahan warna terakhir gmana ya pak ? saya coba simpan warna terakhir di shared preferences, tapi belum bisa
Ntar pakai HydratedBloc aja.. Ikutin aja tutorialnya.. Ntar kan ketemu HydratedBloc
Pak, saya ada case gini. saya punya data user ketika login. data itu di simpan di dalam class. dan data di class ini bisa di akses oleh semua screen di flutternya. solusinya gimana pak. mau nya saya ga pake sharedpref. jadi datanya di simpan di variable classnya. mohon bantuannya pak
kalo kita ada model yg mengembalikan stream berbeda apa tetap satu class bloc mas? misalnya satu utk return list user, satu lagi mau return user aja. soalnya satu class bloc udah satu di set satu aja output streamnnya berdasarkan contoh.
Sebetulnya.. Kalau memang buat sendiri (seperti pada video nomor 44), bebas2 aja sih.. Kita bisa aja buat ada lebih dari 1 jenis Stream.. Stream yg dipakai tergantung dari jenis event yg dimasukkan.. Tapi, cara seperti ini tidak disarankan, karena akhirnya si BLoC tersebut isinya jadi campur2.. Jadi kotor.. Jadi, sebaiknya memang 1 BLoC mengeluarkan 1 jenis Stream saja..
Kalau menggunakan package flutter_bloc (pada video nomor 45), itu sudah dibuat memang hanya 1 jenis Stream saja yg bisa keluar falam 1 jenis BLoC. Semoga menjawab pertanyaannya.
@@ericodarmawan terima kasih mas atas penjelasannya
kak saya flutternya disambungkan ke android studio, cara untuk menambahkan bloc package bagaimana ya, terima kasih
Sama aja seperti di VS Code.. Tambahin dulu di pubspec yaml nya..
@@ericodarmawan harus pake perintah "flutter pub get" ke terminal setelah nambah di pubspec.yaml dan di save nya gk sih bang ? di video abang keknya gk pernah ngetik perintah itu di terminal, saya pake vscode harus pake flutter pub get biar di import keluar nama packagenya
@@syariftaufikhidayat4158 di save aja pub spec nya.. Lgsg otomatis kayak pub get
@@ericodarmawan ok bang makasih, saya kn ngikutin kelas abang yang flutter fundamentalis di website buildwithangga, jumlah videonya beda ama yang di youtube kenapa bang?
bang sy liat subscribernya sudah banyak, kenapa ga pasang iklan bang?
Sy udah saranin ke teman teman sy nih untuk nonton channelnya abang buat yg mau belajar flutter.
Halo Mas.. Haha.. Makasih ya.. Syarat utk pasang iklannya belum memenuhi.. Masih ada syarat watch time (jumlah waktu ditonton). Harus 4000 jam dalam 1 tahun terakhir.. 😆 Kebanyakan kalo nonton video tutorial kan di skip-skip.. Jadinya lama dapetnya.. Hahaha..
@@ericodarmawan Oh sisa watch time nya yah.. Sip sip, semoga dengan ikutnya teman sy nonton tutorial flutternya ini. Watch timenya segera tercapai. Semangat bang... Terus berkarya.
Hehe.. Makasih ya Mas utk support nya.. Semoga semua videonya dapat memberikan banyak manfaat utk semua orang.. Terutama masyarakat Indonesia yang mungkin belum ada kesempatan utk mengenyam pendidikan di Universitas.. 😊🙏🏻
perintah bloc.dispatch udah gak ada pak??? skrg flutter_bloc versi 3.0 , gmana cara nyikappin nya pak???
diganti jadi bloc.add
pakai package sesuai di atas , flutter_bloc: ^0.20.1
mas kalau saya mau consume api pake rxdart bloc seperti apa ya?
Sama aja.. Pakai http request.. Bloc itu cuma masalah State Management aja.. Sisanya sih sama.. Berikut ada contohnya, hanya saja package yg digunakan bukan rxdart, tapi flutter_bloc sperti yang saya pakai di video saya.
felangel.github.io/bloc/#/flutterinfinitelisttutorial
@@ericodarmawan perbedaannya apa ya mas rxdart / flutter_bloc
@@bayuyuniantopabisa9384 sama-sama package untuk implementasi bloc. Hanya beda package saja. Yang buat package tersebut juga orang/tim yang berbeda.
@@ericodarmawan baik terimakasih mas
Btw flutter bloc di dalamnya ada rxdart juga.
Pak, kenapa initialStatenya ga dikasih value _color dan kenapa malah Colors.amber?
Kan initState itu nilai default sedang kang klo mau pakein _color state nanti kan si _color nilainya berubah ubah.. berarti nilainya ga bisa default lagi dong
gan kalo kita mau ngirim data lewat bloc gimana caranya? misalnya kita menambahkan item ke cart, nah ngirim data nya itu apakah lewat event atau gimana?
Bisa seperti itu juga.. Eventnya berupa item yg dibeli, kembaliannya adalah list item yg dibeli yg sudah terupdate..
Nah class event nya itu seperti apa gan? Kalau tutorialnya kan pakai enum, kalau memakai kelas Item seperti apa kelasnya. Mungkin kalau boleh minta dibuatin tutorial juga 😊
@@misbahansori mirip spt ini
ruclips.net/video/5ZwNx9GG3pc/видео.html
Di sana State saya yg berupa class.. Tinggal diganti aja, event nya yg berupa class..
di tutorial itu dia cuma class User gan, saya coba List ketika di klik event nya bisa nambah list nya. tapi UI nya tidak mau update.
// Kalau seperti ini UI nya tidak mau update gan
currentState.add(event.cart);
yield currentState;
// Jadi saya buat seperti ini
yield List.from(currentState);
memang harusnya begitu atau ada cara lain gan?
Ada yang tau untuk emulator nya itu pakai apa?
Saya pakai device asli.. Yg tampil itu aplikasi APowerMirror utk nampilin layar HP saya..
Oke pak terimakasih atas jawabanya.
Pakek Dependency Injection lebih mantap pak...
Mana yang lebih disarankan antara BLoC (flutter_bloc) atau Provider?
Sampai saat ini sih belum ada yg bisa bilang mana yg lebih bagus dari yg mana.. Kalau pun ada yg nyoba itu pun terbatas dari kasusnya.. Jadi, menurut saya.. Sebaiknya sih dipelajari aja bbrp teknik State Management nya.. Lalu silahkan dipakai yang paling dikuasai dan dimengerti.. Krn tujuan dari tiap teknik State Management sih sama, yaitu menghindari refresh/redraw widget2 yang tidak diperlukan utk meningkatkan performa.. 😊
Tapi kalau yg saya, saya pakainya BLoC krn ada Hydrated BLoC nya juga.. Jadi ga perlu terlalu repot ngurus Shared Preference nya juga ketika mau menyimpan state dari si BLoC tersebut.. 😁
Oke sip, terima kasih untuk penjelasannya
kenapa pake async*
makasi
async* bintang itu utk method yg berupa stream.. Dia akan memberikan nilai terus menerus.. Makanya pakai yield, bukan return.. Kalau return, cuma sekali mengembalikan nilai lalu selesai..