При проектировании форм важно не только быстро делать прототипы, но и чтобы они были понятны всем: заказчикам, тестировщикам и разработчикам. "Накидка" — это редактор, с помощью которого можно создавать формы, просто описывая их текстом, наглядно и при этом достаточно гибко. Пока он находится на раннем этапе разработки, но уже сейчас может быть для кого-то полезным. В этой публикации я расскажу, как он работает и где его можно применить.
Для начала, вот пример как "Накидка" преобразует текст:
--- Справочник: Магические зелья ---
< Заварить и забыть {ЦветФона = БледноСиреневый} | Записать в рецептурник >
Название зелья: Эликсир вечного сна
Тип магии: Энтропия__С
Затраты маны: 200__Д
[ ] Ядовито
в форму:
Я стремлюсь сделать язык похожим на Markdown, но не обязательно полностью с ним совместимым. При этом многие элементы будут знакомы тем, кто уже использовал этот язык разметки. Например, флажок:
[ ] Покупатель
Идея в том, чтобы текст был настолько наглядным, что по нему можно сразу представить финальную форму. Простые элементы должны быть интуитивными и легко запоминаться. Например, поле ввода выглядят так:
Фамилия: Иванов
Но язык должен уметь работать и с более сложными вещами. Например, если нужно настроить цвет кнопки, используется синтаксис с фигурными скобками, где можно указать нужные свойства:
< Зеленая кнопка {ЦветФона = Красный; ЦветТекста = Белый} >
Некоторые элементы, например группы или таблицы, неудобно вводить вручную. С таблицами, кстати, даже в Markdown бывают сложности. Но в “Накидке” уже есть встроенный редактор таблиц, который значительно упрощает работу с ними. Вот так выглядит представление таблицы:
| Название | Количество | Цена |
|----------|------------|------|
| Товар 1 | 10 | 100 |
| Товар 2 | 5 | 200 |
А так ее можно добавить в редакторе:
Где все это можно использовать? Самый очевидный вариант — создание реалистичных прототипов форм. Их может подготовить аналитик или дизайнер, показать заказчику, а разработчик — взять за основу для работы. Еще одно перспективное направление — автоматическое преобразование описаний в код, который создает элементы форм. Кроме того, обработка подходит для помощи в написании автоматизированных тестов до начала разработки, что позволяет реализовать подход "разработка через тестирование".
Если вам интересно узнать больше или попробовать "Накидку" в действии, следите за обновлениями в репозитории. Там вы найдёте примеры, документацию и инструменты для работы с этим языком. Также вы можете помочь проекту, став контрибьютором или написав идеи для дальнейшей разработки (issue).
Проверено на следующих конфигурациях и релизах:
- Управление нашей фирмой, редакция 3.0, релизы 3.0.10.210