2021-02-25 16:23:30
Архитектура Flutter-приложения.
Часть 1. Введение и Vanilla.
Архитектура определяет организацию программной системы, делит ее на части и вводит правила их взаимодействия. Вопрос выбора архитектуры для мобильного приложения тесно связан с задачами бизнеса, которые оно решает, а задачи, в свою очередь, могут быть совершенно разными. Этот факт является причиной активных споров программистов на тему архитектуры. У одних есть успешные истории применения
CLEAN. Другие не понимают смысл такого сложного подхода и юзают
MVC в своих небольших проектах, не зная горя. Я нем мог обойти стороной эту важную тему в своём канале, поэтому следующие несколько постов будут про архитектуру.
Немного откачусь назад, к началу разработки моего pet-проекта на Flutter, и расскажу, как я выбирал архитектурный паттерн и от чего отталкивался.
Flutter, как UI-фреймворк, сам по себе диктует некоторые архитектурные правила. Например, он разделяет виджеты с состоянием и виджеты без состояния (мой пост на эту тему). Для виджетов с состоянием должен быть создан отдельный класс -
State, который хранит данные представления и может служить для работы с внешними источниками данных. Это означает, что в простых приложениях с небольшим количеством логики Flutter можно юзать "как есть", без архитектурных дополнений. Такой подход получил название
Vanilla, он же является самой простой архитектурой для Flutter.
У
Vanilla есть один большой плюс - низкий порог входа. Она хорошо подойдет для небольших проектов, а для начинающих Flutter-разработчиков поможет понять тонкости фреймворка. Если для проекта важна гибкость кода и простота масштабирования,
Vanilla может не подойти, так как нарушает сразу несколько принципов SOLID. По этой причине я решил не использовать ее и перешел к изучению других возможных вариантов. О них поговорим в следующих постах, не переключайтесь
#development #tortiki_app
388 views13:23