Post Image

Як правильно створити дизайн систему для проєкту

Що таке дизайн система?

Дизайн система — це набір компонентів для проєктування, які можна повторно використовувати в різних комбінаціях, щоб пришвидшити створення якісного функціоналу продукту.

Цей комплексний підхід покращує процес розробки продукту:

- мінімізує непорозуміння між дизайнером і розробником;


- оптимізує ресурси, що необхідні для проєктування і розробки продукту;


- покращує загальну якість дизайну на проєкті;


- спрощує обслуговування і оновлення;


- забезпечує ефективність і масштабованість процесу проєктування.

Як правильно створити дизайн систему для проєкту:


Однією з найпопулярніших методологій, які використовуються для створення системи дизайну є атомарний дизайн. Цю методологію запропонував Brad Frost і згідно з нею система дизайну повинна складатися з наступних елементів:


‍

Головний принцип атомарного дизайну – від меншого до більшого.

‍

01 - Атоми

фундаментальні стилі, які не можна розділити на більш дрібні елементи (текстові стилі, палітра кольорів, іконки, кнопки, поля вводу);


02 - Молекули

функціональні одиниці з кількох атомів, відносно прості групи елементів інтерфейсу користувача, які функціонують разом як єдине ціле (поля для пошуку, фільтри та інш.);


03 - Організми

незалежні і відносно складні за структурою частини інтерфейсу, що складаються з групи атомів/молекул (картки товару, форми пошуку, навігація);


04 - Шаблони

шаблони визначають порядок і налаштовують розташування елементів, розміщують компоненти в макеті та формують основну структуру сторінки;

05 - Сторінки

шаблони, наповнені контентом, що готові до застосування, показують, як виглядає інтерфейс користувача з реальним репрезентативним вмістом. ми можемо взяти ї та додати в шаблон репрезентативний текст, зображення та медіа, щоб показати реальний вміст у дії.

‍

З чого почати створення дизайн системи?

‍

1. Типографіка

Перше, що ми повинні зробити - це вибрати відповідний під стилістику шрифт або пару шрифтів, щоб задати текстові стилі. Створюючи їх, визначаємо відповідний розмір і товщину заголовків, підзаголовків, основного тексту, підписів. Підбираємо оптимальну висоту строки (інтерліньяж), щоб текст легко читався і слідував вертикальному ритму.

Потрібно правильно називати стилі тексту, щоб полегшити роботу розробникам і собі. Назви текстових стилів задаються в залежності від типу проєкту, якщо це веб-додаток - Bootstrap, якщо Android, то ми керуємося правилами для Material Design, а якщо це додаток IOS - Human Interface Guidelines. Flutter використовує свій власний неймінг, оснований на Material design. У будь-якому випадку в назві стилю ми вказуємо ім'я (Header, tittle, body і т.п.) і властивості (товщина, колір, розмір).

‍

2. Палітра кольорів

‍Сворюючи палітру визначаємо основні і другорядні кольори, а також для тексту, фону, помилок і інших повідомлень. Після вибору тестуємо їх у різних поєднаннях, щоб побачити, як вони працюють разом. Особливо важливо перевірити кольори на відповідність вимогам Web Accessibility, щоб переконатися у їх доступності для всіх користувачів. Після цього надати їм відповідні назви.

‍

3. Візуальний стиль

‍Коли вже є кольори, ми визначаємо радіус кутів округлення і тіней для інтерфейсу. Заокруглення кутів — це основа для ваших кнопок, карток, таблиць, навігації, все що визначає зовнішній вигляд вашого інтерфейсу. Вже потім підбір ілюстрацій та інших графічних матеріалів.

‍

4. Іконки

‍При виборі можна використовувати готові набори або створювати іконки самостійно. Переконайтесь, що іконки відповідають вашим потребам і допомагають передавати необхідні значення/контекст. Іконки повинні бути в єдиному стилі, щоб інтерфейс виглядав консистентно.

‍

5. Компоненти

‍У таблиці бачимо назви різних компонентів та їх стани. Перед розробкою, продумайте компонент, враховуючи усі його можливі конфігурації. При створенні закладайте всі стани заздалегідь (детальніше в таблиці).

6. Організми

‍Коли визначили базові стилі та компоненти системи (атоми та молекули), тепер можете їх використовувати для створення більш складних організмів. Вони можуть складатися з однакових та різних типів молекул. Наприклад, організм з сторінок сайту може складатися з безлічі різних компонентів: логотипу, системи навігації, форми пошуку, блоку посилань на соціальні мережі. Або наприклад, фото, назву і ціну товару. На даному етапі проєктування стає наочним для формування візуального стилю інтерфейсу, внесення правок і обговорення із замовником.

‍

7. Сітки і відступи

При створенні дизайн-системи важливо підібрати сітку (направляючі) з урахуванням особливостей проєкту, технологій і цільової аудиторії.

Вертикальна сітка — обов'язкова складова адаптивного дизайну (підлаштовується під різні розміри екрану). Ширина екрану може бути 1024 px, 1200 px, 1440 px, 1920px і так далі. При проєктуванні потрібно побудувати надійну систему направляючих — одну для всіх.
Зазвичай використовують три типи розмірів екранів для адаптиву: під мобільний девайс, планшет і десктоп. Для дизайну мобільних застосунків вибираємо розмір екрану (все залежить від платформи: Android, Flutter або iOS).

Також важливою є горизонтальна і вертикальна сітка — це система відступів, щоб по всьому проєкту робити відступи між блоками та слідувати логічній системі відступів із дотриманням візуального ритму. Для зручності рекомендується використовувати 2-кратні відступи (сітка з відступами 4px, 8px, 16px, 18px і т.д.), для веб-сайтів може використовуватися 5-кратна сітка.

8. Шаблони і сторінки

Для того, щоб не виникло проблем при розробці екранів та їх передачі розробникам, дотримуйтесь цих порад:

  • Уточнюйте технічні нюанси, що розробник точно зміг реалізувати ваш дизайн.
  • Не користуйтесь дробними числами в макеті. У протилежному випадку розробник може все округляти або зламає всю композицію.
  • При створенні екранів придумуємо та враховуємо всі можливі кейси поводження контенту (стани та валідації) Щоб розробник легко розібрав і написав код у відповідності із задумкою дизайнера.
  • Слідуйте за порядком в документі. Видаляйте приховані шари і зайві стилі, розблокуйте всі шари, дайте всім об’єктам осмислені назви.
  • Якщо є сумніви у реалізації деяких ефектів, то надайте до них коментар з описом.