17 октября, Харьков — Мастер-класс "JavaScript: функциональное программирование", SmartMe University

Организатор: SmartMe
Спикер: Коваленко Алексей

Описание
Функциональное программирование сегодня, как, впрочем, и всегда, является неотъемлемой частью разработки приложений разного характера. В JavaScript функциональный стиль программирования был заложен еще при его рождении. Как ребенок получает цвет глаз от одного из своих родителей, так и JavaScript получил данную парадигму в наследство от языка с гордым названием Scheme.

На данном воркшопе мы углубимся в теорию функционального программирования, научимся писать более абстрактный код без классов и прототипов. И, в итоге, напишем небольшую функциональную библиотеку для закрепления пройденного материала.

О тренере

Коваленко Алексей
(Front-End Developers Manager / Front-End Lead Developer at WIX)
За более, чем 10-ти летний опыт работы в Front-end, принимал участие в большом количестве проектов: как коммерческих, так и в проектах с открытым кодом.

План мастер-класса:

1. Функциональное программирование. Начало:
● Почему это важно
● Функции как единицы абстракции
● Функции как описание поведения
● Данные как Абстракция
2. Scope and Closures — в вкратце:
● Global Scope
● Lexical Scope
● Dynamic Scope
● Function Scope
● Closures (Using Closures; Closures as Abstractions)
3. Типы Функций:
● First-class functions
● Higher-order functions
● Function-Building Functions
● Currying
● Partial Applications
4. Рекурсии:
● Self-Absorbed Functions
● Codependent Functions
● Too Much Recursion!
● Generators
● Рекурсии как низкоуровневые операции
5. Функциональное программирование. Часть II:
● Теория Категорий
● Functors
● Applicatives
● Monads
6. Purity, Immutability.
7. Программирование на базе потоков:
● Chaining: A Lazy Chain
● Chaining: Promises
● Pipelining
● Data Flow против Control Flow
8. Lambda calculus:
● Y Combinator
● Transducers
9. Практическая часть. Давайте напишем мини библиотеку:
● От идеи к реализации
● TDD
10. Функциональное программирование. Заключительная часть.



Похожие статьи:
Написать эту статью меня вдохновило прочтение одной статьи на DOU, где название было более чем провокационным — «Карьера и возраст: как...
Всем привет, меня зовут Саша Емельянов, я Product Manager в MacPaw. В этом выпуске: с чего начинать разработку продукта, почему мы не используем...
У Вашей профессии нет перспектив, и Вы хотите изменить свою жизнь, перейдя в IT-сферу, но тестирование и программирование — не для...
Время: понедельник + среда, 19:00-21:00Продолжительность: 2.5 месяца 2 декабря стартует курс Front-End Developer. Курс рассчитан на людей, которые...
Новые версии Rust 1.5 TypeScript 1.7 Wine 1.8 Vagrant 1.8 Django 1.9 Angular 2 Beta darktable 2.0 Ruby 2.3.0 QEMU 2.5.0 django CMS 3.2 PHP 7.0 GitLab 8.3 Error 451 Исследования IT Research....
Яндекс.Метрика