37
Автоматическое формирование интерфейса по метаописанию Букуров Алексей, HWdTech

2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Embed Size (px)

Citation preview

Page 1: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Автоматическое формирование интерфейса по метаописанию

Букуров Алексей, HWdTech

Page 2: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

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

2

Page 3: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

3

Page 4: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

4

Page 5: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

5

Page 6: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

6

Page 7: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

7

Page 8: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

8

Page 9: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

9

Page 10: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

10

Page 11: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Задачи• Анализ структуры сайтов.• Выделение однотипных составляющих.• Реализация инструмента.

11

Page 12: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Модель данных

12

Model

Field Field Field

Page 13: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Модель данных

1313

Model

Field Field Field

Page 14: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Модель данных

14

Model

Fieldset

Field Field

Fieldset

Field Field

Page 15: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Структура метаописания{ name: “Название модели”, fieldsets: [{ name: “Название набора”, fields: [{ описание поля }, ...] }]}

15

Page 16: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Основные свойства поля• Тип• Название

16

Page 17: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Расширим метаописание... fields: [{ type: “Тип поля”, name: “Название поля” }]...

17

Page 18: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Как валидировать модели?

18

Page 19: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

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

19

Page 20: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Расширим метаописание... validators: [{ method: “Тип поля”, message: “Название поля”, value: “Значения для сравнения” }]...

20

Page 21: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Выбор следующего этапа

21

Page 22: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Реализация генератора

22

Page 23: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Реализация CMS

23

Page 24: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Создание интерфейса

24

Page 25: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Принципы BEM

25

Page 26: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Принципы BEM

26

Page 27: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

“Комплетующие” блока• Шаблон• Набор стилей• Набор скриптов

27

Page 28: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Набор блоков• Form• Fieldset• FormF

28

Page 29: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

P

Валидации на клиенте

29

Page 30: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Сложноподчиненные поля• Включение в метаописание• Реализация механизма

30

Page 31: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Расширим метаописание... dependencies: { “Название поля”: { “Предикат”: “Значение” } }...

31

Page 32: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Форма подачи1. Валидация на клиенте2. Отправление на сервер3. Валидация на сервере4. Сохранение в БД.

32

Page 33: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Различия форм

33

Page 34: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Расширим метаописание... { name: “Название поля”, query: “filter или range”, ... }...

34

Page 35: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Форма поиска1. Отправление на сервер2. Формирование запроса в БД3. Получение моделей из БД4. Отображение

35

Page 36: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Дальнейшие развитие

36

Page 37: 2015-12-06 Букуров Алексей - Автоматическое формирование интерфейса по метаописанию

Спасибо за внимание!

37