6. purely functional front-end language
purely functional front-end language
purely functional front-end language
Чего не будет на этом докладе ?
7. purely functional front-end language
functional front-end language
purely functional front-end language
purely functional front-end language
Чего не будет на этом докладе ?
19. pure fp
- Нет циклов
- Нет переменных
- Нет мутабельности
20. pure fp
- Нет циклов
- Нет переменных
- Нет мутабельности
- Нет “Императивности”
21. pure fp
- Нет циклов
- Нет переменных
- Нет мутабельности
- Нет “Императивности”
--------------------------------
- null check ?
- callbacks ?
- errors ?
- side effects ?
22. pure fp
- Нет циклов
- Нет переменных
- Нет мутабельности
- Нет “Императивности”
- рекурсия
- функция как
переменная
- Иммутабельность
- “Декларативность”
49. Re-think Объекты
1. Объект это Контейнер/Wrapper для
значения
2. Методы отсутствуют
3. Не является существительным
50. Re-think Объекты
1. Объект это Контейнер/Wrapper для
значения
2. Методы отсутствуют
3. Не является существительным
4. Большинство Объектов за вас уже
“создано”
67. Either(“Или”) Functor
- Обычно используется для
логирования ошибок
- Почти как Maybe Functor, вместо null
отдает сообщение об ошибке
- Имеет 2 саб-класса Left/Right
- .map работает с Right и игнорирует
Left
71. EventStream Functor
- Бесконечный список результатов
- Маппинг для ленивого обновления
данных
- Вызывает замапленную функцию
каждый раз при срабатывании
события
75. IO Functor
- “Конструктор” для ленивых
вычислений
- Обычно используется для side-effects
- Отложенный запуск только после
команды runIO
- .map - добавляет функцию в очередь,
выполняющуюся при runIO