Добрый вечер. Хочу попробовать внедрение методологии БЭМ в документировании принципов сборки приложения на основе общих высокоуровневых блоков (заголовок приложения, навигация, система уведомлений, справочники, компоненты и т.д.).
Что ожидаю получить:
- актуальная документация которую легко поддерживать
- общая терминология для всех участников процесса создания продуктов
- UX-проектировщик упорядочивает свои решения и формирует библиотеку общих решений
- UX-проектировщик занят актуальными проблемами вместо перерисовки устаревающих макетов
- менеджеры проектов пользуются документацией и применяют описанные решения
- менеджеры проектов дают обратную связь и участвуют в развитии общей документации
- менеджеры проектов совместно с UX-проектировщиком доопределяют документацию согласно требованиям своего проекта
- программисты пользуются документацией
- программисты понимают где собрана вся документация по определённому блоку
- программисты понимают, что пытался донести UX-проектировщик
- менеджеры проектов и программисты имеют доступ к примерам как стоит и не стоит использовать блоки
- продукты компании выполнены в общем стиле и с единым подходом к навигации, структуре контента и т.д.
Что потребуется:
- Терминология, принципы именования и размещения на файловой системе - заимствуются у БЭМ
- Выбор технологий для описаний, макетов, примеров
- Инструменты и технологии сборки
- Технология публикации артефактов и документации (сайт)
- Упоротость и удача
- Преодоление множества "подводных граблей" на пути к мечте
Данный пост можно рассматривать:
- попытку определить и упорядочить цели и задачи
- сбособ получить критику, замечания и напутствия от сообщества
@Guria с помощью enb-magic-platform и bem-site-engine можно собрать свой аналог bem.info, включая документацию на блоки с инлайновыми примерами — когда из https://github.com/bem/bem-components/blob/v2/common.blocks/button/button.ru.md получается http://ru.bem.info/libs/bem-components/v2/desktop/button/ (сниппеты, описывающие блоки, подменяются на iframe с живым примером).
если это то, что нужно, готов помочь с настройкой.
@tadatuta автоматически генерируемый сайт надо будет делать обязательно. Помощь в этом деле будет очень кстати. Я пока пробую описать навигационный блок в БЭМ-терминологии. Выкачу промежуточный вариант на команду и обязательно поделюсь в этом треде, чтобы собрать замечания и понять дальнейшее направление движения. После этого можно проконсультироваться на счёт сайта с документацией.
Поднабрался опыта в прототипировании на базе bem-стека. Действительно очень мощный инструмент. Долго не понимал с какой стороны начать. Но как только попробовал - дело пошло. Ещё много непокрытых вопросов и неосвоенных техник, но уже понятно что я хочу и буду этим пользоваться. То как легко у меня получается уже начинает впечатлять и вдохновлять коллег. Мои первые шаги можно посмотреть в проекте на github. JS там пока не особо причёсан, но он делает то, что от него на тот момент требовалось. i-bem ещё впереди.
@tadatuta, если предложение о помощи в настройке сайтика ещё в силе, то я готов им воспользоваться. Конфиги сборщиков, bem-site-engine и т.п. пока за гранью возможностей моего понимания, к сожалению.
@Guria верно ли я понимаю, что необходимо собирать сайт с документацией к
bem-app-layout-test
? Если так, то я сначала попрошу, чтобы там появилась хоть как-то документация к блокам, пусть в виде рыбы, и хоть несколько примеров. Без этого сложно будет тестировать результаты сборки ;)@tadatuta Не совсем уверен, что именно bem-app-layout-test будет исходником. Но мысль понял. Вернусь когда будет что показать, ещё раз спасибо.