A new Flutter application.
Dev: flutter run -d chrome
Test: flutter test test/<testName>
There are available as pens on CodePen as well.
- Learnt how to use Form fields and TextEditingController
- Used Stack to stack the colors on the left hand side
- New classes: Tooltip, InputFormatter, RaisedButton
- Used Stack
- New classes: AnimatedContainer, Timer, Random, ThemeData
- Image Credit
- Inspiration
- Calculator logic with TDD first
- Simplify first (don't compute long expressions, just one operator per operation)
- Do happy path first then edge cases
- Show error for division error
- Edge Cases to consider
- 5 + -4 => 5 - 4
- 5 / -4 => 5 / -4
- 1 + 2 * 6 = 13
- 5..2 => 5.2
- 5.20.1 => 5.2
- 5 / 0 => how to handle divide by zero error
- Handling overflow with ellipsis
- New Classes: GridView
- New Classes: CustomScrollView, SliverAppBar, FlexibleSpacer, SliverGrid, SliverList, Hero, DecoratedBox
- New Classes: ListView, ListTile, Toggling Dark and Light Mode
- New Classes: FadeTransition
- New Classes: AnimatedPosition, AnimatedSwitcher
AnimatedPosition was pretty much hardcoded though.
- New Classes: Dialog, Transform, SizedBox.expand
- New Classes: SlideTransition
- New Classes: DateTime, Duration