Если кратко: Atomic Design с использованием Sketch – это будущее разработки продуктового дизайна.

Следуйте за мной

Брэд Фрост, потрясающая личность из видеоролика, является одним из основателей системы, о которой пойдет речь в этой статье. Atomic Design был разработан в ответ на этот цифровой, адаптивный мир, в котором мы все живем и работаем.

Мы создаем руководства по стилям, руководства по элементам, мудборды и прочие инструменты с целью упростить понимание и будущее применение наших дизайнов. Точно также разработчики используют вещи вроде Bootstrap, Foundation, Bourbon и прочие похожие инструменты, чтобы ускорить процесс кодинга. Когда мы работаем в команде, с помощью таких вещей жизнь заметно облегчается. И вот именно для этого существует Atomic Design.

Atomic design больше пригоден для дизайна большой картины в целом, чем создания какой-то отдельной сущности или страницы. Этот инструмент отлично подойдет для дизайна ядра системы.

Верстка сайта с помощью Sketch и Atomic Design

Как я понимаю Atomic Design?

Atomic design подразумевает создание системы отдельных фрагментов, которые могут использоваться для создания элементов и шаблонов, которые можно использовать повторно множество раз.

Атомы

Атомы – это абсолютный фундамент нашей системы. Атомы включают палитры цветов, шрифты, индивидуальные элементы (например, заголовки, абзацы, кнопки и т.д.) и прочие вещи, которые соединяются с другими атомами для создания молекулы.

Как я понимаю Atomic Design

Молекулы

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

Молекулы включают такие элементы, как поля формы с надписью или таблица с заголовками и колонками данных.

Молекулы – это кусочки системы, которые мы строим из атомов

Организмы

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

Пример организма – главная навигация на страничке, которая включает лого, ссылки навигации и поле поиска или кнопку регистрации.

Пример организма – главная навигация на страничке

Шаблоны

Шаблоны – это по сути наши каркасные модели или макеты. Комбинируя множество организмов, мы действительно начинаем видеть целостную картину того, что мы создаем.

Если высокоточный, детальный результат не требует, с этой точки мы можем уже начать реализовывать нашу систему в коде.

Шаблоны – это по сути наши каркасные модели или макеты

Страницы

Страницы – это уже более детализированная версия шаблонов. Дизайн на картинке выше уже расценивается как страничка. Здесь уже даже новичок в дизайне может понять, что за проект мы создаем.

Страницы не всегда являются необходимостью, но кто же не любит красивую визуализацию?

Почему Sketch?

Хотя Sketch еще не стал таким мощным центром разработки дизайна, как Adobe Illustrator или Photoshop, это потрясающий инструмент для работы по методологии Atomic Design.

Организация

Sketch – это своего рода удачное дитя любви Adobe Illustrator и Photoshop. Несомненно, Sketch еще очень молод, но уже достаточно мощен, и помимо этого, невероятно прост в работе.

Вы можете не только реализовать практически все, что нужно, без этого нескончаемого поиска нужного инструмента в залежах многочисленных многоуровневых менюшек, но и организовать свой рабочий процесс еще лаконичнее с помощью иерархии слоев.

Если вы не организуетесь, как следует, скорее всего, вы начнете терять деньги на процессе дизайна, просто вы еще не осознали эти потери. Организация работы крайне важна в эффективном расходовании времени и прочих ресурсов!

Sketch – это своего рода удачное дитя любви Adobe Illustrator и Photoshop

Модульность

Sketch отлично подходит для Atomic Design из-за простоты создания модульных систем. Вы не только можете добиться идеальной организации со слоями, как в Adobe Photoshop, вы также можете создавать модульные элементы. В Sketch такие элементы называются символами.

Создание символа позволяет вам менять все стили элемента, и эти изменения будут отражаться на всех сущностях символа в рамках одного файла.

Для начала нарисуйте свой элемент, каким вы хотите его видеть.

Sketch отлично подходит для Atomic Design из-за простоты создания модульных систем

Затем выделите его и кликните на кнопку Create Symbol (создать символ) на верхней панели инструментов.

Затем выделите его и кликните на кнопку Create Symbol

Совет от профессионала: Чтобы превратить элементы с текстом в идеально модульные символы в Sketch, обязательно отметьте галочкой опцию Exclude Text Value from Symbol в наборе инструментов справа.

Чтобы сделать это, вам нужно сначала выделить текст в символе, если вы этого не сделаете, вы не увидите нужную опцию в наборе инструментов.

обязательно отметьте галочкой опцию Exclude Text Value from Symbol в наборе инструментов справа

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

Теперь вы можете вставить символ где угодно и изменить внутренний текст

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

Всегда, когда хотите разместить один из созданных элементов, нужно просто кликнуть на дропдаун Insert, найти опцию Symbols и выбрать символ, который хотите вставить.

Конвертация в код

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

Экспорт в код

Что может быть лучше модульных символов? Экспорт дизайна прямо в код. Это означает, что вам, дизайнерам, не нужно учиться правильно разделять исходники для кода. Хотя, и это не помешает.

Чтобы получить код ваших элементов, сначала нужно убедиться, что они соответствующим образом между собой сгруппированы и конвертированы в символы. После этого нужно просто кликнуть правой кнопкой мыши на элементе и выбрать Copy CSS Attributes в выпавшем меню.

Когда дизайн готов, настает время экспортировать наши элементы в html код

И тут осталось просто скопировать и вставить код в ваш любимый текстовый редактор.

И тут осталось просто скопировать и вставить код в ваш любимый текстовый редактор

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

HTML

Как и при использовании Bootstrap или Foundation, у нас есть стилизованные элементы. Все, что осталось сделать – добавить класс к элементу в нашем коде HTML.

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

Брэд Фрост и Дэйв Олсон из Pattern Lab создали отличный пример, посмотрите:

Pattern Lab Demo

Использование шаблонизаторов

Это бонус для тех, кто освоил шаблонизаторы и CSS, вроде swig, jade, haml и множество других языков, доступных сегодня.

Множество организмов, которые мы создали, станут частичными шаблонами (partials), как только конвертируются в код.

Мы сделали это

Теперь можно притвориться, будто вы разбираетесь в науке. И до определенной степени, вы таки разбираетесь в этом. Atomic Design – это наука высококачественного дизайна.

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