README
learn_flutter
Track progress (login with github, choose a topic and update status): https://roadmap.sh/flutter
learn dart in one video (bangla): https://youtu.be/_8Q5cwfvi64?si=viy6l_gyWfndPX5x
- Lists
- Map
- Lambda Function
- mixins
- await and async
flutter full course 1 (hindi): https://youtu.be/1bQwDO88Gyw?si=swsGhFjJTqlmVytp
Ostad flutter curriculum https://ostad.app/course/flutter
- Dart programming language (With OOP)
- Flutter widgets
- Flutter theming, navigation
- Responsive design, Google Map
- Firebase, Supabase, State management
- Database: SQLite
- Payment gateway: Stripe, bKash, sslcommerz
- MVVM
- লোকাল ডাটাবেজ: SQLite, Hive, Moor
- অ্যানিমেশন, Gesture
- ফ্লাটার ইউনিট টেস্টিং, উইজেট টেস্টিং এবং ইন্টিগ্রেশন টেস্টিং
Note: Project list: https://ostad.app/course/flutter/projects
some instructions
- Dribbble থেকে যেকোনো একটা UI নিয়ে নিন, আর ফ্লাটারে হোয়াটসঅ্যাপ, টিকটক ইত্যাদির মত সেটার ক্লোন বানানো শুরু করুন।
- API call package list: http, dio, retrofit, chopper
- State management package list: provider, riverpod, getx, bloc, cubit
- Database package list: sqflite, hive, moor, floor
- create app with api call of jsonplaceholder.typicode.com and state management
- একবার API ইন্টিগ্রেড আর API কল করা হয়ে গেলে আপনাকে ওই API রেসপন্সকে একটি মডেল ক্লাসের ভেতরে parse করতে হবে।
- শুরুতে আপনি Provider ইউজ করতে পারেন, কারণ এটা সবচেয়ে বেসিক স্টেট ম্যানেজমেন্ট প্যাকেজগুলোর একটি। তারপরে আপনি যদি চান তাহলে Riverpod বা GetX ব্যবহার করতে পারেন।
- বেশ কিছুপ্রিডিফাইনড আর্কিটেকচার রয়েছে যেমন MVVM, MVC, TDD ইত্যাদি (for own architecture, must need to follow KISS, DRY, SOLID principle)
- KISS: Keep It Simple, Stupid
- DRY: Don't Repeat Yourself
- SOLID: Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, Dependency Inversion
- আপনি যদি চান তাহলে এই প্রজেক্টে টেস্ট কেস লিখতে পারেন।