Что такое реактивное программирование?

от автора

Я хочу рассказать о современной дисциплине программирования, отвечающей растущим требованиям масштабируемости, отказоустойчивости и быстрого отклика, и незаменимой как в многоядерных средах так и в облачных вычислениях, а также представить вам открытый онлайн-курс по ней, который начнётся всего через несколько дней.

Если вы ничего не слышали про реактивное программирование, всё в порядке. (Хотя в этом случае вы пропустили несколько хабрапостов: Haskell, Rx for Javascript, Bacon.js, Meteor JS.) Это стремительно развивающаяся дисциплина, в которой скомбинированы параллелизм (concurrency) c ориентированностью на события и асинхроностью. Реактивность присуща любому веб-сервису и распределенной системе, и служит ядром во многих выскопроизводительных системах с большой степенью параллелизма. Если коротко, то авторы курса предлагают рассматривать реактивное программирование как естественное расширение функционального программирования (с функциями высших порядков) на параллельные системы с распределенным состоянием, координируемые и оркестрируемые асинхронными потоками данных, которыми обмениваются активные субъекты, или акторы.

Более понятными словами это описывается в Реактивном манифесте, его полный перевод опубликован на хабре. Как рассказывает википедия, термин реактивное программирование существует довольно давно и имеет практические применения, но новый толчок к развитию и распространению он получил совсем недавно, благодаря усилиям авторов Реактивного манифеста — инициативной группе из Typesafe Inc. Typesafe известна в среде функционального программирования как компания, основанная авторами прекрасного языка Scala и революционной параллельной платформы Akka. Сейчас они позиционируют свою компанию как создателя первой в мире реактивной платформы, предназначенной для разработки нового поколения. Их платформа позволяет быстро разрабатывать сложные пользовательские интерфейсы и предоставляет новый уровень абстракции над параллельными вычислениями и многопоточностью, уменьшая присущие им риски благодаря гарантированно предсказуемому масштабированию. Таким образом, платформа Typesafe реализует на практике идеи Реактивного манифеста и позволяет разработчику осмыслять и создавать приложения, отвечающие современным запросам.

Вы можете познакомиться с этой платформой и реактивным программированием, приняв участие в массовом окрытом онлайн-курсе сайта coursera.org «Принципы реактивного программирования». Этот курс является продолжением курса Мартина Одерски «Принципы функционального программирования на Скала», который набрал более 100 000 участников и продемонстрировал одну из самых высоких в мире степень успешного прохождения массового открытого онлайн курса его участниками. Вместе с создателем языка Скала новый курс читают Эрик Мейер, разрабатывавший среду Rx для реактивного программирования под .NET, и Роланд Кун, ведущий команду разработки Akka в Typesafe в настоящее время. Курс раскрывает ключевые элементы реактивного программирования и показывает, как они применяются для конструирования событийно-ориентированных систем, обладающих масштабируемостью и отказоустойчивостью. Учебный материал иллюстрируется короткими программами и сопровождается набором заданий, каждое из которых — это программный проект, в случае успешного выполнения заданий участники получают сертификаты. Курс продолжается 7 недель и начинается в этот понедельник, 4 ноября. Подробный план курса доступен на его странице на сайте coursera.org: www.coursera.org/course/reactive.

ссылка на оригинал статьи http://habrahabr.ru/post/200338/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *