2012/1/21 Alexandr Gomoliako <[email protected]>: > On 1/21/12, Ruslan Zakirov <[email protected]> wrote: >> Если подумать, то анонимные функции в событийном программировании >> используются из-за отсутствия другого простого механизма сохранить >> состояние интерпретатора и потом вернутся в это состояние >> (continuations). > > Нет, чтобы сделать явными те вещи, которые обычно не явные.
Спорно. У вас нету большого выбора и говорить, что решение более явно нежели то которого нет - спорное утверждение. >> В болшинстве програм мы запрашиваем данные и можем реально сделать >> что-то только после получения ответа. Вот и получается, что код >> выглядит как лесенка из вложенных блоков. Что-то типа: отправим >> запрос, по результату отправим еще запрос, по результату соберем >> ответ, отправим ответ, далее вызовем колбек, который нам передали в >> самом начале. > > Да и это хорошо. Все очень просто и понятно. Плохо становится, когда > этот колбэк сохраняют куда-то в объект или придумывают несколько > разных колбэков. Если один колбэк, то придется разбирать внутри ситуацию внутри колбэка, а если несколько, то частично ситуация разобрана за вас и внутри уменьшается количество условий. Я придерживался метода - всегда можно передать один колбэк, но если передали несколько, то будем дергать несколько. >> Мне кажется, что код будет более привычный и читабельный, если >> упростить эту ситуацию. Что-то вроде: > > Ну так пора привыкать, потому что понятнее от прятания лесенки он не станет :) Мне кажется, что станет читабельней. Я не про понимание, с этим проблем нету, а больше про скорость понимания. Мне гораздо удобнее когда в коде минимальная вложеность кода. Для меня даже grep и map с блоком - признак более сложного кода на который стоит обратить внимания, а если без блока, то можно смело перескочить и общее понимание кода от этого сильно не изменится. > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org -- Best regards, Ruslan. -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
