Как понять `Iteratee` в play2? - PullRequest
8 голосов
/ 25 марта 2012

В play2 есть пакет play.api.libs.iteratee с большим объектом Iteratee, который содержит более 1000 строк.

Зачем play2 такой большой объект и как его понимать?

Ответы [ 2 ]

16 голосов
/ 02 сентября 2012

Я только что написал статью, пытаясь объяснить концепции Итераторов, предоставляемые Play2 для тех, кто пытается их обнаружить.

http://mandubian.com/2012/08/27/understanding-play2-iteratees-for-normal-humans/

Вот вывод статьи, потому что, похоже, я должен поставить части, чтобы ответить на ваш вопрос. Но моя статья в целом, и ваш вопрос тоже довольно большой ...

В любом случае, зачем мне использовать Iteratee / Enumerator / Enumeratee?

Я хочу сказать вам, что Iteratee / Enumerator / Enumeratee не является забавный инструмент для людей найденных из функциональных конструкций. Они есть полезно во многих областях, и как только вы поймете, как они работают, я могу пообещать вам, что вы начнете использовать его все больше и больше.

Современные веб-приложения - это не только динамически генерируемые страницы больше. Теперь вы управляете потоками данных, поступающими из разных исходники, в разных форматах, с разным временем доступности. Вы возможно, придется обслуживать огромное количество данных огромному количеству клиентов и работа в распределенных средах.

Итерации сделаны для тех случаев, потому что есть безопасные, неизменные и очень хорошо иметь дело с потоками данных в режиме реального времени. Давайте расскажем модное слово, вы можете увидеть больше и больше «Realtime WebApp» и Iteratee связано с этим;)

2 голосов
/ 04 октября 2012
...