Как отличить атомарный дизайн от UI-kit. Когда релиз? Оцениваем эффективность команды

TL; DR: Атомарный дизайн с использованием Sketch - это будущее продукции дизайна.

Иди со мной

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

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

Атомарный дизайн не занимается разработкой только одной модели или страницы, речь идет о проектировании огромной системы, а точнее о проектировании ядра этой ​​системы.

1-j1P0pjQtl36QJavv8lHdyw

Из чего состоит Атомарный дизайн?

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

Атомы

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

2 1-SmVWgKY2jdCYOV4dXJNlkg

Молекулы

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

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

3 1-kA-WoT5O0uCgeowzhuSwiQ

Микроорганизмы

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

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

4 1-aL51hsdFw7ugSXXB5HnWZQ

Шаблоны

Шаблоны по сути своей те же самые схемы. Объединив несколько микроорганизмов, мы действительно начинаем видеть большую картину того, что мы строим.

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

5 1-mx-cBDwsz3MkXa-oX_-56g

Страницы

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

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

Почему Sketch?

Несмотря на то, что Sketch может быть еще не лидер положения, которыми являются Adobe Illustrator или Photoshop, он по-прежнему уникальный инструмент при работе по методике Атомарного дизайна.

Организация

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

7 1-gyxduSTXDd1K-7eEuW1xHA

Модульность

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

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

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

9 1-QU5UMRKF7jnifIcA0K6RlA

Подсказка: Для того, чтобы элементы с текстом превратились в модульные символы в Sketch, убедитесь, что вы также проверили поле Исключить текстовое значение из символа в панели инструментов справа.

Для этого, во-первых, вы должны выбрать текст внутри символа. Если вы не сделаете этого, вы не увидите опцию в панели инструментов справа.

10 -5iQXZSddoS-OxEm0YfU1Sw

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

11-X9DNHPtyXiBxYEes10u_Iw

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

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

Преобразование в код

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

Экспорт в код

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

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

12-0JSPPy6qdMM6UUUfzH1Zmw

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

13-qrSfNi7EmBroFNQoM1zcuw

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

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

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

Брэд Фрост и Дэйв Олсон из Pattern Lab создали удивительный пример того, как это выглядит. Оцените.

Использование шаблонных языков

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

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

Таким образом, вы сделали это

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

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

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

Высоких конверсий!

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

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

Во избежание подобных ситуаций команде просто необходима система правил по разработке дизайна. В последнее время для систематизации процесса разработки сайтов нередко используют методологию «атомарного дизайна », предложенную в 2013 году Брэдом Фростом . Эта методология полезна не только для крупных компаний, но и для тех, кто работает над сайтами в одиночку, ведь она помогает значительно упростить процесс разработки. Сегодня мы постараемся разобраться, что такое атомарный дизайн и как эта методология поможет вам оптимизировать рабочий процесс.

Что такое атомарный дизайн?

Как утверждает сам создатель методологии, идея атомарного дизайна пришла к нему из химии. Как известно, в природе все вещества состоят из атомов и молекул. Подобным образом Фрост рассматривает интерфейсы, ведь они тоже состоят из определенных компонентов. Данная методология предлагает дизайнеру работать не над целым интерфейсом сразу, а создать сначала его компоненты, постепенно объединяя их в блоки и создавая дизайн. Одним словом, методология «атомарного дизайна» требует от разработчика умения мыслить от меньшего к большему и комбинировать готовые элементы.

В методологии атомарного дизайна выделяют 5 уровней разработки:

1. Атомы

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

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

2. Молекулы

Молекулы - это комбинации двух и больше атомов; наименьшие блоки, из которых состоит дизайн. К примеру, объединив несколько полей ввода, кнопок и иконок мы получим готовую форму. На этой стадии преимущества атомарного подхода уже более понятны - ведь очевидно, что молекулы можно использовать повторно, а это существенно сокращает время разработки.

3. Организмы

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

4. Шаблоны

Объединяя организмы и размещая их согласно намеченному эскизу, вы получаете шаблон - готовый прототип вашего интерфейса. Зачастую сначала создается структурная схема страницы (wireframe). В этой схеме дизайнер определяет, как будут размещены элементы и как они будут реагировать на действия пользователей. Некоторые разработчики создают простой черно-белый макет, который постепенно превращается в готовую страницу. Так или иначе, данный этап крайне важен - ведь стоит изначально определить, какие элементы должны привлекать внимание пользователей, а какие можно опустить на второй план.

5. Страницы

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

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

В следующей статьей вы узнаете о преимуществах и применении атомарного дизайна.

Предлагаю читателям «Хабрахабра» перевод статьи Брэда Фроста (Brad Frost) «Atomic Web Design» .

Мы не проектируем страницы, мы проектируем системы компонент. - Stephen Hay

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

Многое было сказано насчeт создания систем дизайна, и наибольший акцент делается, в основном, на установление цветов, типографии, сеток, текстур и т.п. Такой тип мышления , несомненно, важен, но я чуть меньше заинтересован в этих аспектах дизайна, потому что, по большому счeту, они всегда субъективны. В последнее время меня больше озадачил вопрос о том, из чего состоят наши интерфейсы, и как мы можем проектировать их более систематично.

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

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


Переодическая система элементов HTML.

Что такое атомарный дизайн

Атомарный дизайн это методология создания систем дизайна. В атомном дизайне есть пять отчётливых уровней:

  1. Атомы
  2. Молекулы
  3. Огранизмы
  4. Шаблоны
  5. Страницы

Атомы

Атомы в природе - это основные строительные блоки материи. В контексте веб-интерфейсов атомы - это HTML тэги, такие как форма, поле ввода, или кнопка.


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

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

Молекулы

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

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


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

Организмы

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


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

Огранизмы могут состоять из похожих или разных типов молекул. К примеру, заголовок страницы может состоять из разных компонент - логотипа, главного меню, формы поиска и списка медиа-каналов. Но организм, отображающий сетку товаров, может содержать одну молекулу (изображение продукта, название и цена), которая повторяется много раз.

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

Шаблоны

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


Шаблоны очень конкретные и предоставляют контекст ко всем довольно абстрактным молекулам и организмам. Именно шаблон позволяет видеть конечный дизайн. В моём опыте работы с этой методологией шаблоны начинаются с HTML wireframe"ов, но со временем становятся более точными. В итоге они становятся конечными продуктами. Bearded Studio в Питтсбурге имеют похожий процесс, при котором дизайны начинают разрабатывать чёрно-белыми и без разметки, но постепенно набирают конкретики и деталей до тех пор, пока не становятся конечными работами.

Страницы

Страницы - это конкретные экземпляры шаблонов. В них для точной передачи того, что увидит пользователь, «заглушечный» контент заменён настоящим.


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

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

Также это стадия для тестирования изменений в шаблонах. Например, вам нужно удостовериться в том, что заголовок с 40 символами выглядит согласованно с заголовком из 340 символов. Или проверить, как вместо корзины с одной вещью выглядит она же с 10 вещами и со скидкой по промо-коду. Эти ситуации влияют на то, как мы строим нашу систему.

Почему атомарный дизайн

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

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

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

Pattern Lab

Для применения этой методологии в своей работе я (с помощью Дейва Ослена) разработал инструмент Pattern Lab , предназначенный для создания атомных систем дизайна. Расскажу о Pattern Lab в деталях позднее, но не стесняйтесь посмотреть исходники на Github

Дизайн-система с детальной документацией может сыграть большую роль в успехе любого крупного проекта. Существует множество подходов к созданию такой системы. Atomic Design - один из недавно предложенных методов.

Я работаю в компании, которая специализируется на дизайне и разработке проектов для крупных корпоративных клиентов. Мы начали использовать atomic-подход летом 2016 года. С тех пор у нас была возможность испробовать эту методологию на нескольких длительных проектах.

В теории atomic-подход был достаточно понятным. Однако на практике нам потребовалось какое-то время, чтобы выработать методы его использования как дизайнерами, так и разработчиками.

Часть 1. Компонентно-ориентированные системы

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

Так появилось компонентно-ориентированное программирование. Эта методология разработки основана на компонентах или модулях: частях кода, предназначенных для многократного использования. Другими словами, вам не нужно программировать одно и то же дважды. Этот подход также позволяет модифицировать модуль один раз для того, чтобы обновить его во всех экземплярах в системе. Кроме того, приложение получает более понятную архитектуру и унифицированный процесс разработки.

Такой подход не уникален для программирования. Существует 2 наиболее распространенных компонентно-ориентированных метода в дизайне сайтов.

  • Сложно проследить наследование компонентов. Для крупного проекта не редкость наличие нескольких стилей для кнопки, поля ввода или другого элемента. И когда разработчики (или другие дизайнеры) будут рассматривать ваш макет, у них могут возникнуть трудности с пониманием, какой конкретно компонент из стайл-гайда вы используете.
  • Большое количество компонентов не описывается в типичном стайл-гайде. Обычно он содержит информацию лишь о текстовых стилях, иконках, кнопках, полях ввода и так далее. Мелочах. Без детальной документации дизайна макеты зачастую имплементируются не так, как задумал дизайнер.
  • Плохая документация серьезно уменьшает повторное использование ваших дизайн-компонентов. Если в проекте больше десятка страниц, это может стать проблемой. Далеко не всегда другие дизайнеры или разработчики пройдутся по всем макетам вашего проекта, чтобы убедиться, что всплывающее окно «ну такое, с кнопочками» не было уже сделано ранее. Дизайнер рисует новое окошко. Разработчик кодит новое окошко. Прошел месяц, у вас в проекте пятнадцать15 разных версий всплывающего окна для простого вопроса «да/нет».

Часть 2. Что такое Atomic Design

Что, если бы вы могли использовать преимущества и фреймворков, и стайл-гайдов? Одно из решений было предложено Брэдом Фростом , веб-дизайнером из Питтсбурга, США. Оно называется Atomic Design.

Atomic Design - это методология, которая позволяет (и требует) описать каждый компонент в вашей дизайн-системе.

Этот подход делит элементы на пять категорий:

1. Атомы. Наименьшие конструктивные блоки вашего проекта. Прямо как кубики LEGO. Текстовые стили, кнопки, иконки, поля ввода, чекбоксы и так далее. Все эти компоненты не могут быть поделены на более мелкие части, не потеряв при этом всякого смысла (зачем, например, вам кнопка без текста или иконки?).

Атомы

2. Молекулы. Это уже более сложные элементы, состоящие из нескольких атомов. К примеру, «тостеры» с уведомлениями, поля ввода с кнопками (поле поиска), значения данных (например, «скорость: 343 м/c», где слово «скорость» написано в одном стиле, а значение - в другом) и прочие. Иногда молекулы уже становятся полноценно функционирующими элементами. Но, как правило, они должны быть частью организма , чтобы иметь практическую ценность.

3. Организмы . По-настоящему функционирующие части страницы, состоящие из групп атомов и молекул . Многие организмы могут полноценно работать, не полагаясь на остальные компоненты на странице. Обычно они достаточно большие. Например, главное меню сайта, боковая панель, форма для заполнения, всплывающее окно с множеством данных и так далее.

Организмы могут быть достаточно сложными и содержать более мелкие организмы (прямо как в жизни).

Организм «кот» с организмом «мышь» внутри. Фото Тимоти Мейнберг

4. Темплейты. По сути, это страницы без реального контента. Темплейты комбинируют организмы в полноценный макет сайта.

5. Страницы. Когда вы создали темплейт , на основе его копий вы генерируете страницы , заполняя их реальным контентом. Давайте, к примеру, возьмем статью из Википедии. Если упростить её структуру, темплейт статьи будет состоять из таких организмов , как боковая панель, навигация и основной контент. Каждая статья Википедии с реальным контентом будет страницей, которая использует один и тот же темплейт .

Организмы высокого уровня в статье из Википедии

Как atomic-подход используется на практике? Брэд Фрост вместе с командой разработчиков создали инструмент Pattern Lab . Он позволяет сгенерировать статический веб-сайт для документирования вашей atomic-библиотеки. Вы можете хранить там код ваших компонентов и их описание. Это решение для разработчиков.

Давайте рассмотрим, как применять atomic-методологию с точки зрения дизайнера.

Часть 3. Atomic в рабочем процессе дизайнера

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

Если вы веб/UI-дизайнер, то в повседневной работе, скорее всего, используете Sketch или (до сих пор?) Photoshop для создания дизайн-макетов. Также, с помощью InVision/Zeplin/Avocode вы передаете ваши макеты команде разработчиков, где они могут рассмотреть структуру и сделать все необходимые измерения. Кроме того, у вас есть какой-никакой стайл-гайд, где описаны некоторые дизайн-элементы.

В рамках этой статьи я буду использовать следующую комбинацию инструментов для описания процесса работы:

Atomic-подход со знакомыми инструментами

Стайл-гайд

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

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

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

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

Базовый стайл-гайд

Важным дополнением к стайл-гайду будет страница со списком изменений. Для номера версии используйте дату обновления. Как только вы добавили или изменили компонент в системе, добавьте заметку на эту страницу: дату обновления, ваше имя и описание изменений. Это позволит всем участникам команды заметить изменения в стайл-гайде. Разработчики определенно будут благодарны за это.

Правила наименования

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

Слова всегда написаны в нижнем регистре и разделены дефисами. Так их просто использовать дизайнеру. И легко использовать разработчику в исходном коде и для наименования файлов. Более того, такой формат названий позволяет быстро понять, какие слои или группы из вашего макета описаны в стайл-гайде. У вас все равно останутся простейшие слои типа bg, divider и так далее.

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

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

Примечание: чтобы сделать этот процесс простым и легким, я рекомендую плагин Rename It . Пользуйтесь горячими клавишами и групповое переименование слоев будет более быстрым.

Четко установленные правила наименования имеют немаловажную роль в успехе дизайн-системы. К примеру, разработчик изучает ваш макет и видит организм o-popup-alert-exit . Он открывает папку с исходным кодом проекта и видит, что компонент уже разработан в файле o-popup-alert-exit.html (ведь у него такая же система наименования). Вместо того, чтобы заново делать компонент, он оперативно добавляет его в нужное место проекта.

  • Старайтесь делать имена различимыми и понятными, не используйте числа. Например, a-dropdown-main, a-dropdown-secondary , вместо a-dropdown-1, a-dropdown-2 . Имена, в которых содержится смысл, позволят избежать недоразумений (у нас на практике был случай, когда неправильная цифра повлекла за собой целую серию ошибок в макетах и имплементации).
  • Во время наименования старайтесь сосредоточиться на роли элемента в системе, а не его внешнем виде. Не называйте кнопку для главного действия a-button-blue только потому, что она синяя. Это главная кнопка, так что зовите её a-button-primary . В будущем, если цвет главных кнопок у вас поменяется, вам не придется переименовывать каждую синюю кнопку на каждой странице. И просто взглянув на название компонента, вы сможете прикинуть, какую роль он играет в системе.

Sketch Libraries

Примечание: не забудьте организовать и упорядочить символы вашего стайл-гайда на странице Symbols. Когда гайд растет, эта страница становится беспорядочной свалкой. Вам не нужно делать это вручную, достаточно использовать плагин, например, Symbol and Artboard Organizer . Если вы назвали ваши символы правильно, он сделает всё в один клик.

Дизайн-макеты

Базовый стайл-гайд создан, настало время собирать страницы. Организуйте ваш рабочий процесс следующим образом:

1. Соберите макет страницы. Некоторые элементы будут из стайл-гайда, но многие - абсолютно новые. Пока что организуйте ваши слои в группы так, как вы обычно делаете.

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

3. Дизайн-макет утвержден, настало время атомизировать его. Убедитесь, что все ваши слои и группы названы и структурированы согласно методологии, описанной выше. Добавьте компоненты и их описания в стайл-гайд. Как правило, на начальных этапах проекта этот шаг занимает существенное количество времени. Будьте готовы к этому.

4. На иллюстрации ниже приведен пример документации организма таблицы. Под именем организма добавляется список элементов, из которых он состоит. Они кликабельны - это позволяет с легкостью перемещаться по структуре компонента и изучать информацию о его составных частях.

5. Наконец, ваша страница задокументирована полностью. Это означает меньше вопросов от разработчиков и более продуктивный рабочий процесс.

6. В идеальных случаях исходный код разработчика будет выглядеть так же, как и структура слоёв вашего макета:

Часть 4. Как Atomic-методология может помочь вашей команде

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

Разработчики пользуются Invision Inspect для просмотра структуры макето в

Уменьшение времени для дизайна и разработки . Когда каждый компонент в дизайн-системе задокументирован, существенно уменьшается количество лишней работы. Вам не нужно изобретать велосипед, когда наглядно видно все «велосипеды» в проекте. Кроме того, когда библиотека становится достаточно полной, новые страницы собираются намного быстрее. Следовательно, у вас будет больше времени для других, более сложных задач.

Улучшения имплементации дизайна и коммуникации в команде . Успех любого проекта значительно зависит от хорошей кооперации дизайнеров и разработчиков. Методология, описанная в статье, позволяет команде найти общий язык общения. Принятые правила наименования и детализированные описания компонентов играют существенную роль в этом. Любой участник команды имеет полную наглядную документацию. Это означает меньше недопониманий и более качественно имплементированный дизайн.

Дисциплина дизайн-команды. Зачастую большие и распределенные дизайн-команды не имеют четко сформулированного видения, как структурировать макеты и файлы. Более того, работая на крупных проектах, достаточно легко забыть описать все нужные состояния компонентов. Это в очередной раз негативно сказывается на кооперации внутри команды. Методология, описанная в статье, требует описывать каждый компонент в системе установленным образом. Такой подход автоматически решает данные проблемы.

Выводы

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

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

Атомарный дизайн

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

В 2013 году эту методологию предложил Бред Фрост и описал ее в книге Atomic Design. Он провел аналогию между интерфейсами и химией: точно так же, как все вещества во Вселенной состоят из атомов, все интерфейсы состоят из компонентов. Эти элементы можно разложить на 5 уровней.

  1. Атомы – самые маленькие элементы: форма, поле ввода, а также более абстрактные элементы, такие как анимации. Атомы задают единый стиль интерфейса и становятся строительным материалом для страницы.
  2. Молекулы – комбинация атомов, которые становятся более полезными вместе, чем по отдельности. Например, комбинация заголовка, ссылки, изображения.
  3. Организмы – крупные части интерфейса: логотип, шапка со всеми кнопками, полем поиска, списком соцсетей.
  4. Шаблоны – элементы из нескольких организмов, каркас страницы, ее прототип.
  5. Страницы – это последняя стадия с актуальным контентом, на которой проверяется эффективность всей дизайн-системы.

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

UI-kit

UI-kit набор элементов интерфейса: навигации, кнопки, табы, вкладки, баннеры. Главное, что в UI-kit прописаны все стили, размеры, их поведение при взаимодействии и состояния.

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



Это важный инструмент для кастомизации дизайна с учетом аудитории, обновления дизайна, создания единого стиля нескольких продуктов. Без UI-kit при создании новых страниц удается сохранить цвета и шрифты, указанные в гайде, но при этом кнопки, поля могут отличаться по размеру.

Для максимальной скорости работы готовый UI-kit должен быть переведен в код, к которому сможет обращаться верстальщик.

Почему эти понятия путают

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

Подробная дизайн-система объединяет и эту методологию, и UI-kit. Но методология, по которой будет проектироваться дизайн, выбирается перед началом работы. Затем создается дизайн из готовых атомов и моделей. А в конце UI-kit набирается готовыми элементами, чтобы использовать его для развития сайта и удобства верстки.

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

Если не разобраться до конца и перепутать понятия, вы рискуете получить только UI-kit – большой исходник с набором молекул, ожидая расширенную систему. Но что бы вы не выбрали в конце проекта, и UI-kit, и система атомарного дизайна, ускорят дальнейшую работу над дизайном.

В агентстве «ДАЛЕЕ» создают UI-kit в конце работы над дизайном, когда сайт начинает содержать больше определенного числа уникальных шаблонов, например, такие проекты как, «Поговорим от Сбербанка» , «Pony Express» . На проекте «Альфа-Тревел» специалисты агентства воспользовались готовой дизайн-системой Альфа-Банка, поэтому сайт нового продукта получился полностью в стиле бренда, а главное – с привычной для пользователей механикой действия.

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

Итак, ключевые отличия атомарного дизайна и UI-kit:

  • UI-kit собирается после завершения дизайна проекта;
  • В методологии атомарного дизайна существует страница как высший уровень конкретики, в UI-kit никогда не бывает такого уровня;
  • Атомарный дизайн принимают как методологию с самого начала работы над дизайном;
  • Атомарный дизайн – это расширенная дизайна-система, а UI-kit – ее часть.

Вконтакте

Одноклассники

Другие посты

Как найти сокровища в фотостоке

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

Искусство диалога: налаживаем общение с клиентом

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

Страница 404: как помочь пользователю, если он...

Все мы бывали на странице 404. Эта ошибка означает, что страница не найдена. Поделимся своим опытом, как этого избежать, и не только не...

5 Полезных инструментов для менеджера и всей...

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

Как работать с другим агентством и улучшить проект

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

Когда релиз? Оцениваем эффективность команды...

В команде разработки МегаФона мы постоянно работаем над контролем качества кода. Для этого у нас есть практика code review, автотесты и разные...

Must have в веб-дизайне

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

«Как у Тинькова»: какими решениями мы обязаны...

Российские банки одними из первых в рунете начали превращать свои сайты в сервисы. Этому способствовало несколько факторов. Во-первых,...

Волшебная кнопка. Чек-лист для повышения...

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

Тренды диджитал-маркетинга в 2019 году

Мы давно слышим о том, что блокчейн и VR меняют нашу жизнь в Сети, но пока они все еще кажутся технологиями из сериала «Черное зеркало». Поговорим...

Топ 5 материалов 2018 года

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

Новогодние традиции в Далее. Спойлер: это не...

В декабре все переживают не только из-за отчетов и мероприятий, но и о том, как поздравить клиентов. В Далее есть праздничная традиция, которая...

Как нанять робота вместо менеджера проекта

Время экспериментов. 10 карточек по A/B...

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

Не заставляйте меня думать: как снизить уровень...

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

В поисках Dream Team для разработки сайта

Найти классную команду для разработки проекта – это челлендж для менеджера. Построить работу можно по-разному: собрать команду у себя в штате,...

Релиз или жизнь? Хеллоуин в digital

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

Как данные и эмоции меняют дизайн

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

Темная сторона дизайна

Apple сделал темную тему основной по умолчанию для новой Mac iOS, а Youtube начал тестировать темный фон еще год назад. Темные темы в интерфейсах...

Зачем нужно тестирование сайта

До тестирования сайт ведет себя как кот Шредингера. Вы не знаете, работает ли все так, как задумано. Тесты перед запуском или обновлением сайта...

Большой брат: как и зачем использовать...

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

Дизайн B2B-портала: найдите отличия

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

Еще раз об эффективности: чек-лист перед...

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

Типографика в веб-дизайне

Типографика на сайте – это не просто выбор шрифта, а набор правил оформления текста. Они основаны на том, как пользователь воспринимает текст на...

Как бренду рассказать свою историю

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

Финансовые сервисы в digital: будущее уже...

Удобство нашей жизни во многом зависит от скорости развития финансового сектора в digital. Многие уже привыкли к оплате коммунальных услуг на сайте...

UX-аналитик и другие профессии с приставкой UX

UX-дизайн определяет, каким будет опыт взаимодействия пользователя с продуктом. В процессе проектирования пользовательского опыта участвуют четыре...

Преимущество использования отзывчивого веб-дизайна

Как адаптировать дизайн под разные устройства, чтобы он оставался удобным для пользователя? Вместе с контент-продюссером компании InVision Уиллом...

Лучшие диджитал-кампании к Чемпионату Мира 2018

Чемпионат стартовал 14 июня, и острая борьба среди брендов началась задолго до этого. На самом главном спортивном мероприятии в мире мы увидим не...

Как составить контент-план, который работает

От контента зависит максимум эффективности кампании. Что лучше, традиционный подход с подготовкой всего контента на месяц вперед или эксперименты в...

Правило Хемингуэя: как агентству и заказчику...

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

Обзор самых популярных систем для управления...

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

Сам себе Youtube: 5 шагов к вирусному контенту

Над видео для компании лучше работать вместе с продакшн-агентством. Вы смотрите портфолио агентств и выбираете подходящее по стилю и по цене. Что...

Как агентства представляют свои кейсы

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

Просто о сложном: agile-разработка

Изначально аджайл был вотчиной программистов. Так они называли методы разработки ПО, принципиально отличавшиеся от традиционного. Но оказалось, что...

Что такое нативная реклама и как она работает

Несколько лет подряд все говорят о нативной рекламе. Недавно Business Insider заявили, что к 2021 году выручка от нее вырастет до 74% от общих...

Разработка единой дизайн-системы для группы ВТБ

Собственные дизайн-системы – что это? Модный тренд или рабочий инструмент для качественного продвижения бренда? Рассказываем про наш опыт.

Чем дизайнер продукта отличается от просто...

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

Быстрее, выше, сильнее: как использовать видео...

Почему видеоконтента становится всё больше, где стоит размещать ваши видеоролики, и как сделать их ещё лучше.

Микроинфлюенсеры – будущее маркетинга влияния

Одним из трендов инфлюенс-маркетинга стал «подъем микроинфлюенсеров» - блогеров с небольшой, но активной аудиторией. Бренды обращают меньше...

Мессенджер-маркетинг как современный способ...

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

Формы оплаты работ за разработку сайта

Мы разберем детально какие бывают формы ценообразования на создание интернет-проекта.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: