- Variables
- Built-in Types
- Numbers
- Strings
- Booleans
- Lists
- Maps
- Null
- Iterable
- Hints on new types
- Enum
- Future and Stream
- Dynamic
- const vs final
- why to use final over const
- optimization
- Functions
- Parameters
- Named parameters
- Requirded
- Nullable
- Positional parameter
- nullable
- not nullable
- Optional positional
- Anonymous functions
- print
- interpolation
- Flow
- ternary condition
- switch will be used
- List
- map
- for each
- for vs for in
- asMap
- first where
- map vs foreach
- where
- iterable
- how to convert from iterable to list
- map → iterateable → tolist
Session 2
- Error catching
- try - on - catch - finally
- Throw
- rethrow
- Exceptions
- custom Exception
- Either
- right only
- right and left
- fold
- Future
- .value
- .delayed
- onError vs catchError
- Stream
- periodic
- listen
- cancel
- async vs async* - await
- return vs yield
- API
- status codes
- decode / encode
Session 3
- Class And Object
- attributes
- constuctors
- setter and getter
- methods
- Constructors
- defualt
- named
- const
- Override Methods
- other class methods
- operators
- Encapsulation
- getter
- setter
- Inheritance
- single level
- multi level
- Hierarchical level
- Super Keyword
- Implacity super constructor
- Abstractions
- Interfaces
- Mixins
Sessions Syllabus for Flutter
Session 4
- Motivation
- video vs picture
- what is frame
- what is state
- what is state
- change state
- stateful vs stateless
- what is statelss
- what is stateful
- importance why there is different
- how to manipulate state
- using set state
- brief intro about state management
- what is event
- Set state
- application
- type buttons
Session 5
- Project overview
- run vs main
- MaterialApp / Scaffold
- widget
- Appbar
- Container
- padding
- decoration
- Center
- Column
- Row
- Text
- CircleAvatar
- Icon
- Image
- Text Style
- Single Childview
- Divide
- VerticalDivider
- ListView
- GridView
- reusable components
- intro to clean code
Session 6
- onBoarding screen
- toast
- changing the icon of the app
- search bar
- sliver app bar
- change name of the app
- splash screen
- sliders
- svg package
- navigation bar
- snackbar
- alert
Session 7
- what is responsive and adaptive
- responsive
- why do we need responsive
- example of bad responsive
- good approach for responsive
- adaptive
- what is adaptive
- how many platforms are supported by Flutter
- IOS
- Linux
- Android
- Windows
- Web
- MacOs
- thinking type
- orientation
- device size
- local ui design
- Breakpoints
- what is breakpoints
- dimensions
- mobile
- 480
- table
- 768
- window
- 1024
- common error
- incorrect use of parrent wedgit
- expanded → column
- what is media query
- bad use of media query
- what is media query
- orientation vs size
- layout builder
- widgets
- expanded
- flexible
- spacer
- sizedbox
- screen_util approach