[Moscow.pm] Coro

Ruslan Zakirov ruz на bestpractical.com
Вс Янв 22 01:12:32 PST 2012


2012/1/21 Alexandr Gomoliako <zzz на zzz.org.ua>:
> On 1/21/12, Ruslan Zakirov <ruz на bestpractical.com> wrote:
>> Если подумать, то анонимные функции в событийном программировании
>> используются из-за отсутствия другого простого механизма сохранить
>> состояние интерпретатора и потом вернутся в это состояние
>> (continuations).
>
> Нет, чтобы сделать явными те вещи, которые обычно не явные.

Спорно. У вас нету большого выбора и говорить, что решение более явно
нежели то которого нет - спорное утверждение.

>> В болшинстве програм мы запрашиваем данные и можем реально сделать
>> что-то только после получения ответа. Вот и получается, что код
>> выглядит как лесенка из вложенных блоков. Что-то типа: отправим
>> запрос, по результату отправим еще запрос, по результату соберем
>> ответ, отправим ответ, далее вызовем колбек, который нам передали в
>> самом начале.
>
> Да и это хорошо. Все очень просто и понятно. Плохо становится, когда
> этот колбэк сохраняют куда-то в объект или придумывают несколько
> разных колбэков.

Если один колбэк, то придется разбирать внутри ситуацию внутри
колбэка, а если несколько, то частично ситуация разобрана за вас и
внутри уменьшается количество условий.

Я придерживался метода - всегда можно передать один колбэк, но если
передали несколько, то будем дергать несколько.

>> Мне кажется, что код будет более привычный и читабельный, если
>> упростить эту ситуацию. Что-то вроде:
>
> Ну так пора привыкать, потому что понятнее от прятания лесенки он не станет :)

Мне кажется, что станет читабельней. Я не про понимание, с этим
проблем нету, а больше про скорость понимания. Мне гораздо удобнее
когда в коде минимальная вложеность кода. Для меня даже grep и map с
блоком - признак более сложного кода на который стоит обратить
внимания, а если без блока, то можно смело перескочить и общее
понимание кода от этого сильно не изменится.

> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org



-- 
Best regards, Ruslan.


Подробная информация о списке рассылки Moscow-pm