Я знаю, что асинхронность - это половина цели node.js и что она действительно великолепна и эффективна. Однако в некоторых ситуациях этот шаблон программирования является просто излишним и сложным. Например, что если вы захотите написать скрипт, который принимает некоторые пользовательские данные и использует их для создания строки MySQL и ее сохранения (я только что сделал это). Действительно раздражает необходимость создавать отдельную функцию для каждого крошечного шага программы, а затем заставлять их всех вызывать друг друга подряд.
Так, как вместо этого должны обрабатываться такие ситуации? Я попробовал step , но он не будет работать с coffee-script, так как он требует, чтобы функции были объявлены классическим способом (function foo() {/* Bar */}
). Coffee-script вместо этого создает анонимные функции и назначает их локальным переменным (var foo = function() {/* Bar */}
)
Я думаю, было бы проще смешать метод, чтобы заставить процесс ждать выполнения обратного вызова. Если не считать аргументов в пользу асинхронности, как бы я поступил так?