Состояние приложения: через вселенные

Содержание

Слайд 2

Пример контрола: Grid

Поддержка источников данных, навигация(+виртуальная прокрутка), сортировка, поддержка иерархии, выбор записей,

Пример контрола: Grid Поддержка источников данных, навигация(+виртуальная прокрутка), сортировка, поддержка иерархии, выбор
группировка, редактирование по месту, drag-n-drop, панель операций над записью(+ swipe), настройка заголовка таблицы, режим поиска, работа с клавиатурой, темы оформления и т.д. и т.п.

Слайд 3

Timeline of JavaScript UI Frameworks

Timeline of JavaScript UI Frameworks

Слайд 4

Single Page Application

Single Page Application

Слайд 5

Пример типового реестра

Пример типового реестра

Слайд 6

Давайте разбираться

Давайте разбираться

Слайд 7

Цикломатическая сложность

Цикломатическая сложность

Слайд 8

Чистые функции

Чистые функции

Слайд 9

Связность и зацепление

Связность и зацепление

Слайд 10

А судьи кто?

А судьи кто?

Слайд 11

Any framework

Any framework

Слайд 13

Что не так с MVC?

Что не так с MVC?

Слайд 15

Diagram of interactions within the MVC pattern

Diagram of interactions within the MVC pattern

Слайд 16

MVC/Flux

Controller
(dispatcher, action creator, action)

View
(page, containers, components)

Model
(store, reducers)

User .

action

send data

receive data

display

MVC/Flux Controller (dispatcher, action creator, action) View (page, containers, components) Model (store,

Слайд 17

Типовые проблемы “MVC”?

Controller
(state, business logic)

View
(state, business logic, ui logic

Model
(state, business logic)

User .

Типовые проблемы “MVC”? Controller (state, business logic) View (state, business logic, ui

Слайд 18

Debug mode

Debug mode

Слайд 19

Современный подход

View

View

View

View

Dispatch
Action

Dispatch
Action

Dispatch
Action

Dispatch
Action

Dispatch
Action

Dispatch
Action

Store fragmen

Store fragmen

Store fragmen

Store fragmen

Store fragmen

Store

Page

Современный подход View View View View Dispatch Action Dispatch Action Dispatch Action

Слайд 20

Как быть?

Нет

Как быть? Нет

Слайд 21

Увеличиваем связность, уменьшаем зацепление

Увеличиваем связность, уменьшаем зацепление

Слайд 22

Однонаправленный поток данных

Input

Output

Domain model

User .

Однонаправленный поток данных Input Output Domain model User .

Слайд 23

Где состояние?

Где состояние?

Слайд 24

Особенности интерфейса СБИС

Особенности интерфейса СБИС

Слайд 25

Глобальное состояние – singleton. Компоненты могут иметь множество экземпляров

Проблемы глобального состояния*

Жизненный цикл

Глобальное состояние – singleton. Компоненты могут иметь множество экземпляров Проблемы глобального состояния*
состояния отличается от жизненного цикла компонентов

Может быть большим

Слайд 26

Компонентный подход

Компонентный подход

Слайд 27

Prop drilling

Prop drilling

Слайд 28

Композиция и render props

Композиция и render props

Слайд 29

Магия вне Хогвартса

Магия вне Хогвартса

Слайд 30

Информация о пользователе

Глобальные хранилища

Права

Локализация

Настройки приложения

Пользовательские параметры

Информация о пользователе Глобальные хранилища Права Локализация Настройки приложения Пользовательские параметры

Слайд 31

Проблемы юнит-тестирования singleton
С этим можно бороться.

Я создал несколько singleton’ов для хранения глобального

Проблемы юнит-тестирования singleton С этим можно бороться. Я создал несколько singleton’ов для
состояния

Но как же ты пишешь юнит тесты?

Слайд 32

Технологии устаревают очень быстро.
Не гонитесь за технологиями. Изучайте фундаментальные основы программирования. Чаще

Технологии устаревают очень быстро. Не гонитесь за технологиями. Изучайте фундаментальные основы программирования.
задавайте вопросы в стиле: «Как это работает?», набирайтесь опыта.

В заключение

Имя файла: Состояние-приложения:-через-вселенные.pptx
Количество просмотров: 36
Количество скачиваний: 0