Frontend
October 15, 2023

Введение в прототипирование с Figma

Что такое прототипирование?

Прототипирование - это процесс создания прототипа, то есть макета или модели, которая демонстрирует основную идею и функциональность продукта.

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

Зачем нужно прототипирование?

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

Короче, прототип позволяет сэкономить кучу времени и денег, если вдруг выяснится, что основная идея не очень хороша.

Что такое Figma?

Figma - это онлайн-сервис для создания прототипов, дизайна и командной работы. В Figma можно:

  • Создавать прототипы мобильных и веб приложений
  • Делать дизайн сайтов, приложений, презентаций и другой графики
  • Работать совместно с другими дизайнерами и разработчиками в реальном времени

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

Это позволяет командам проектировщиков, дизайнеров и разработчиков эффективно взаимодействовать в единой среде.

Figma бесплатна для личного использования и имеет платные тарифы для команд.

Как начать работу в Figma?

Чтобы начать работу в Figma нужно просто зайти на сайт www.figma.com и зарегистрироваться - для этого потребуется только email.

После регистрации можно создать новый проект, пригласить туда коллег и приступить к работе!

Давай посмотрим как это выглядит:

// Регистрация пользователя
const user = registerUser({
  email: 'ivanov@mail.ru',
  password: 'qwerty123'
});

// Создание нового проекта
const project = createProject({
  name: 'My App',
  user  
}); 

// Добавление участников в проект  
inviteToProject({
  users: ['petrov@mail.ru', 'sidorov@mail.ru'],
  project  
});

Как видишь, начать работать в Figma совсем просто. Дальше разберем основы интерфейса.

Интерфейс Figma

После создания проекта ты попадаешь на холст - это рабочая область, где будет создаваться прототип.

Слева расположена панель слоев, на ней отображаются все объекты на холсте. Справа - панель свойств, где можно настраивать выделенные объекты.

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

Давай создадим простую кнопку, чтобы посмотреть как это работает:

// Создание прямоугольника 
const button = createRectangle({
  x: 0,
  y: 0,
  width: 200,
  height: 50  
});

// Добавление текста
addText({
  content: 'Click me!',
  fontSize: 14,
  fontFamily: 'Arial',
  color: '#FFF'  
  button  
});

// Установка заливки 
button.fill = '#31B057';

Вот так с помощью простых инструментов в Figma можно создавать различные объекты для дизайна и прототипирования.

Создание прототипа в Figma

Чтобы создать прототип в Figma, нужно выполнить несколько шагов:

  1. Нарисовать экраны приложения
  2. Связать экраны переходами
  3. Добавить интерактивные элементы
  4. Опубликовать прототип для тестирования

Например, для простого прототипа калькулятора мы можем сделать так:

// Создание экранов 
const screen1 = createScreen('Calculator'); 
const screen2 = createScreen('History');

// Добавление объектов на экраны
addObjects(screen1, [
  // кнопки, поле ввода  
]);

addObjects(screen2, [
  // история вычислений
]);
  
// Связывание экранов
linkScreens(screen1, screen2, {
  onClick: '.history-btn' 
});

// Добавление интерактивности 
makeInteractive({
  '.calc-btn': handleCalcClick,
  '.clear-btn': handleClearClick
  // ...
});

// Публикация прототипа
publishPrototype({
  screens: [screen1, screen2] 
});

Теперь прототип готов и его можно протестировать!

Тестирование прототипа

Чтобы протестировать прототип в Figma, нужно перейти в режим preview. В этом режиме можно:

  • Кликать по элементам и проверять переходы между экранами
  • Вводить данные в поля
  • Запускать анимации и другие интерактивные элементы

Например, мы можем протестировать работу кнопок нашего калькулятора:

// Вводим 2 + 3 в поле
setInputValue('2 + 3'); 

// Нажимаем кнопку "="
clickButton('.calc-btn');

// Проверяем результат 
expect(getOutputValue()).toEqual('5');

// Очищаем поле
clickButton('.clear-btn'); 

// Поле должно быть пустым
expect(getInputValue()).toEqual('');

Тестирование помогает найти ошибки и улучшить прототип до начала полноценной разработки.

Что в итоге

Главное преимущество Figma в том, что это удобный инструмент для командной работы над прототипами. Это экономит время и помогает улучшить продукт на ранних стадиях разработки.

Удачи в создании крутых прототипов 😉