ДИЗАЙН-СИСТЕМА: опыт внедрения в реальные проекты

Рано или поздно каждая студия разработки, которая занимается, в том числе и UI/UX, приходит к созданию дизайн-системы. Теоретического материала на эту тему много, поэтому рассказываем как мы пришли к тому, чтобы разработать собственную дизайн-систему для своих проектов, и как дизайн-система сможет помочь в работе.

Дизайн-система — комплекс элементов, который включает в себя гайдлайны и наборы компонентов, использующиеся в проектировании дизайна интерфейсов.

27d6d3a54547c3174e48d9dddbb70074.png

Во время проектирования интерфейса для приложения «Заступник», мы на практике пришли к тому, что необходимо оптимизировать эту работу за счет разработки дизайн-системы, так как приложение вышло из стадии MVP и выросла в продуктовую историю, поддержка макета которой стала достаточно сложной в одной фигма-файле.

MVP-версия приложения и конечный продукт, тем более когда он остается на дальнейшей поддержке, могут сильно отличаться, так как в процессе работы подвергается и продолжает подвергаться миллиону корректировок и правок.

В таких условиях мы приходим к тому, что обычного UI-кита не хватает, по той причине, что он становится неактуальным — хранит в себе компоненты, которые уже не используются, следовательно, фигма-файл превращается в хаос, что ухудшает работу как дизайнеров, так и разработчиков.

Чтобы оптимизировать работу с макетами, было создано три файла для разных задач, а для их поддержки реализовали дизайн-систему.

7ed88bd5ca14add16511490a1e5d6a3a.png

  • Dev — для создания макета дизайнерами;

  • PreProd — для создании версии макета на следующий релиз, он же основной макет для разработчиков;

  • Prod — актуальная версия макета, которая на данный момент лежит в Сторах. Этот файл используют тестировщики, чтобы искать баги.

Такое разделение упрощает задачу тем, что поддержка этих файлов происходит не в трех разных файлах, а в одном — в файле дизайн-системы.

Такое разделение упрощает задачу тем, что поддержка этих файлов происходит не в трех разных файлах, а в одном — в файле дизайн-системы.

В случае если эти три файла не будут соединены дизайн-системой, то вносимое изменение в один элемент придется вручную вносить отдельно в каждый из них.

В случае если эти три файла не будут соединены дизайн-системой, то вносимое изменение в один элемент придется вручную вносить отдельно в каждый из них.

Дизайн-система решает эту проблему — она объединяет и структурирует библиотеку компонентов. Внеся изменение в компонент в дизайн-системе, он меняется и в остальных макетах.

5274044b0acf69111e12e01221d43f51.png

Как дизайн-система упростит работу над любыми будущими проектами.

При работе над приложениями, дизайнеры разрабатывают с чистого фрейма каждый компонент, а разработчики пишут под них код.

Все приложения имеют похожую структуру и, примерно, одинаковый набор базовых компонентов, получается, что из проекта в проект проделывать одну и ту же работу — как-то бессмысленно…

Намного проще собрать в одно место все основные компоненты вместе с прописанным для них кодом. А при разработке MVP-версии нового проекта, брать готовые компоненты адаптируя их под фирменный стиль и требования заказчика.

788f7d38eeb8fa6c9e509fa5bc4134d4.png

Как результат, внедряя дизайн-систему в свою работу мы получаем следующее:

  • Ускорение разработки MVP-версий приложений;

  • Наиболее структурированная работа над проектом, что повышает удобство работы всей команде разработки: дизайнерам, разработчикам, тестировщикам и аналитикам;

  • Автоматизация внесения изменений во все дизайн-файлы;

  • При переходе в продуктовую историю, дизайн-система является хорошей базой, которую удобно масштабировать;

  • Сведение к минимуму дублирования сущностей;

  • В случае передачи макета другому дизайнеру, ему проще погрузиться в проект.

© Habrahabr.ru