Не слишком полагайтесь на пакеты, так как они могут сделать некоторые функции устаревшими, оставив вам дополнительную работу по созданию исправления.
Хотя это зависит от сложности функции, некоторых пакетов, таких как добавление анимации в контейнеры, можно избежать, поскольку это может быть то, что вы можете написать с нуля. Это позволит вам лучше контролировать виджет и легко вносить в него изменения.
Регулярно обновляйте файл pubspec.yaml
, удаляйте пакеты, которые были добавлены ранее, но больше не используются в проекте.
2. Настройте повторяющиеся виджеты
Виджеты, которые постоянно повторяются в проекте, можно выделить в отдельный виджет и использовать в нескольких местах. Это позволяет избежать повторного написания одного и того же виджета и экономит время и усилия.
Возьмем пример экрана с 4 кнопками. Вместо того, чтобы писать код кнопки с onPress
, цветом и другими свойствами 4 раза, я извлеку кнопку в отдельный виджет, а затем передам эти переменные свойства.
Виджет CommonButton
вызывается 4 раза, и каждый раз при его вызове передаются свойства onPress
, colour
и text
. Давайте теперь посмотрим на код виджета CommonButton
:
Переменные будут разными при каждом вызове CommonButton, и именно так мы можем повторно использовать виджет CommonButton несколько раз в проекте.
3. Используйте log() вместо print()
Flutter 2.5 и более поздние версии поставляются с пакетом flutter_lints, пакетом, который определяет возможные проблемы в исходном коде вашего дротика.
Каждый раз, когда вы используете print()
, отображается предупреждение «Избегайте вызовов print в производственном коде». Пакет помечает это как предупреждение, поскольку журналы печати в сборках выпуска могут регистрировать конфиденциальную информацию. Чтобы этого избежать, используйте log()
, встроенную функцию dart, которая помогает находить ошибки в коде, проверяет проблемы с производительностью, стили кодирования и форматирование.
4. Виджет Stateless или Hooks over Stateful
Виджеты с отслеживанием состояния вызывают большую нагрузку на приложение по сравнению с виджетами без сохранения состояния и крючками, поскольку они участвуют в перестроении виджета.
По возможности избегайте использования виджетов с отслеживанием состояния. Если вы новичок во Flutter Hooks, я написал статью, в которой объясняю, как использовать виджеты Hook вместо виджетов с отслеживанием состояния.
5. Общий файл для констант
Общий файл для размещения всех констант, таких как цвета, строки активов, украшения, стили текста, может упростить весь процесс проектирования.
Вот пример файла констант,
Теперь во всей программе вам не нужно каждый раз определять константу. Определите его один раз в constants.dart
файле и используйте в нескольких местах. Вы можете повторно использовать файл констант для нескольких проектов.
6. Виджет SizeBox без виджета
Используйте SizedBox с нулевой высотой, чтобы скрыть виджет.
В приведенном ниже коде я хочу отображать текстовый виджет только тогда, когда свойство showButton
равно true, иначе будет отображаться виджет SizedBox
с высотой 0, короче говоря, в пользовательском интерфейсе ничего не будет отображаться, если showButton
равно false.
Другой подход к отображению/скрытию виджетов — использование виджета Visibility()
.
Виджет «Следующий текст» будет отображаться, только если индекс равен 0 (visible = true), в противном случае виджет Text становится невидимым (visible = false).
У вас есть совет, которым вы хотите поделиться? Не стесняйтесь оставлять их в комментариях и делиться ими, если вы нашли это полезным!