Я понял, что можно создавать виджеты, используя простые функции вместо создания подклассов StatelessWidget. Пример будет такой:
Widget function({ String title, VoidCallback callback }) {
return GestureDetector(
onTap: callback,
child: // some widget
);
}
Это интересно, потому что требует гораздо меньше кода, чем полноценный класс. Пример:
class SomeWidget extends StatelessWidget {
final VoidCallback callback;
final String title;
const SomeWidget({Key key, this.callback, this.title}) : super(key: key);
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: callback,
child: // some widget
);
}
}
Итак, мне было интересно: есть ли разница, кроме синтаксиса между функциями и классами для создания виджетов? И это хорошая практика для использования функций?