which uses this principle to avoid rebuilding its
descendents when animating.
(“Same instance” is evaluated using operator ==,
but see the pitfalls section at the end of this page
for advice on when to avoid overriding operator ==.)
      Use const constructors on widgets as much as possible,
since they allow Flutter to short-circuit most
of the rebuild work. To be automatically reminded
to use const when possible, enable the
recommended lints from the flutter_lints package.
For more information, check out the
flutter_lints migration guide.
      To create reusable pieces of UIs,
prefer using a StatelessWidget
rather than a function.