колбэк что это в кино

Малоизвестные аспекты съемок в рекламе

Малоизвестные аспекты съемок в рекламе

КЛИЕНТ : клиент — это компания, которая хочет продать свой продукт. Например, компания Samsung планирует запустить рекламу новой модели мобильного телефона с большим набором функций. У них есть бюджет в размере 50-100 тыс. долларов и первое, что они делают — нанимают рекламное агентство. Здесь нужно помнить, что уже на кастинге вы можете встретиться с представителями «клиента» — это именно те люди, которые принимают решение о том, взять вас на роль или не взять. От вас требуется доброжелательный тон общения, ни слова о конкурентах или недостатках рекламируемого товара.Также не стоит пытаться узнать «сколько по-настоящему составляет мой гонорар» у представителей «клиента» — вы этого никогда не узнаете, достаточно просто ориентироваться сколько стоит та или иная работа на съемках.

РЕКЛАМНОЕ АГЕНТСТВО : обычно «клиент» обращается в рекламное агентство. Агентство разрабатывает идеи для проведения рекламных кампаний на ТВ, в печатной рекламе, на рекламных щитах, интернет-рекламе и др. Пример: идея – «Умных людей становится больше, благодаря доступности нового смартфона от Samsung». Люди, которые работают в рекламном агентстве придумывают тот типаж, который вам нужно сыграть на кастинге. Далее агентство нанимает режиссера, чтобы снять рекламные ролики и кастинг-директора, чтобы найти актеров на этот ролик.

ПРОДЮСЕР : специалист, который регулирует финансовые и административные аспекты при выполнении какого-либо проекта. Это посредники между рекламным агентством и «клиентом», как правило те люди, которые ходят по съемочной площадке с тремя сотовыми телефонами и выдают ваш гонорар за съемку. Самое важное, что нужно уточнить у продюсера — это размер компенсации за вашу переработку. Ведь съемочный день в России длится 12 часов и по завершении этого времени, вам положена переработка — в среднем 10 % от суммы всего гонорара за каждый час переработки.

РЕЖИССЕР : режиссер — главный человек на съемочной площадке, он понимает потребности «клиента» и знает как их реализовать. С режиссером не нужно спорить, а тем более открыто конфликтовать — делайте все, что требует режиссер относительно съемочного процесса. Для съемок в рекламе требуется большое количество разных актеров и здесь наступает время работать кастинг-директору.

КАСТИНГ-ДИРЕКТОР : не одна съемка видео рекламы не обходится без участия кастинг-директора. Кастинг-директор получает список специфических требований к актерам и актрисам, необходимых для участие в проекте, таких как — пол, возрастная категория, цвет волос и глаз и др. Первоначальный отбор идет по фотографиям и резюме, которые агенты и агентства присылают кастинг-директору. Кастинги на участие в съемках рекламы проходят в один или два дня, когда производиться видеозапись представления и творческого задания для актеров претендующих на участие в съемках рекламы. Эти видеозаписи показывают режиссеру и представителям «клиента», тем людям, которые утверждают актеров на роли. Часто после основного кастинга следуют callback и option — следующие ступени кастинга, когда выбирают из числа уже понравившихся претендентов. В большинстве случаев режиссер имеет последнее слово о том, кого утвердить на роль.

АКТЕРСКОЕ или МОДЕЛЬНОЕ АГЕНТСТВО : агентства имеют в своем распоряжении базы актеров и моделей. Большинство агентств берет проценты — 20% и более, если вы получили работу именно от них. Кастинг-директор может попросить прислать на кастинг тех людей, которых он уже знает или тех, кого рекомендует агентство. То есть, чем больше у вас связей с актерскими и модельными агентствами «первого эшелона», тем больше у вас будет работы.

АКТЕР : актеры должны приложить все усилия, чтобы получить информацию о кастингах. Не нужно полагаться на агентства и звонить им все время. Если вы знакомы с многими кастинг-директорами — это поможет получить информацию о кастингах. Общайтесь и налаживайте связи с людьми в этом бизнесе. Предложение о работе может прийти откуда угодно.

Участие в съемках рекламы может стать для вас началом блестящей актерской карьеры — главное научиться продвигать себя своими силами.

P.S рекомендую фильм, который стоит посмотреть всем, кто когда-либо смотрел рекламу — 99 франков.

Источник

Что такое callback-функция в JavaScript?

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино

Что такое коллбэк?

Простыми словами: коллбэк — это функция, которая должна быть выполнена после того, как другая функция завершила выполнение (отсюда и название: callback – функция обратного вызова).

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

Зачем нам нужны коллбэки?

По одной простой причине: JavaScript — это событийно-ориентированный язык. Это значит, что вместо того, чтобы ждать ответа для дальнейшего выполнения программы, JavaScript продолжит выполнение, одновременно ожидая других событий. Давайте разберем простой пример:

Как вы и ожидаете, функция first выполнится первой, а функция second после нее, и в консоли будет выведен следующий результат:

Зачем я вам это показал? Чтобы вы понимали, нельзя просто вызывать функции в нужном порядке и надеяться, что они в любом случае выполнятся в том же порядке. Коллбэки же позволяют нам быть уверенными в том, что определенный код не начнет исполнение до того момента, пока другой код не завершит исполнение.

Создаем коллбэк

Хватит болтовни, теперь давайте создадим коллбэк.

Во-первых, откройте консоль разработчика в Google Chrome (Windows: Ctrl + Shift + J)(Mac: Cmd + Option + J) и введите в консоли следующую функцию:

Теперь давайте добавим в определение функции еще один параметр, это и будет наш коллбэк. Затем вызовем ее, определив функцию-callback в качестве аргумента:

Если вы введете этот код в консоли, вы получите два алерта один за другим, в первом будет сообщение о том, что выполнение домашнего задания началось (Starting my math homework.), а во втором — что вы закончили выполнять задание (Finished my homework).

Однако коллбэки не обязательно должны быть определены при вызове функции. Они могут быть определены и в другом месте кода, например, так:

Таким образом, результат выполнения этого кода такой же, как и в предыдущем примере, однако сам код немного другой. Как вы видите, мы передали функцию alertFinished как аргумент в функцию doHomework при ее вызове.

Пример из реальной жизни

На прошлой неделе я опубликовал статью «Создаем бота для Твиттера в 38 строк кода». Этот код работает благодаря API Твиттера. И когда мы делаем запрос к API, мы должны дождаться ответа до того, как начнем выполнять с этим ответом какие-то действия. Это прекрасный пример того, как в реальной жизни выглядит коллбэк. Вот как выглядит сам запрос:

T.get просто значит, что мы выполняем get запрос к API Твиттера. В запросе три параметра: ‘search/tweets’ – это адрес (роут) запроса, params – наши параметры поиска и в конце передается анонимная функция-callback.

Коллбэк здесь нужен, потому что нам нужно дождаться ответа от сервера до того, как приступим к дальнейшему выполнению кода. Мы не знаем, успешным будет наш запрос или нет, поэтому после отправки параметров поиска на search/tweets через get-запрос, мы просто ждем. Как только Твиттер ответит, выполнится наша callback-функция. Твиттер отправит нам в качестве ответа или объект err (error – ошибка), или объект response. В коллбэке мы можем через if() проверить, был ли запрос успешным или нет, и затем действовать соответственно.

Никогда не останавливайтесь: В программировании говорят, что нужно постоянно учиться даже для того, чтобы просто находиться на месте. Развивайтесь с нами — на Хекслете есть сотни курсов по разработке на разных языках и технологиях

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Источник

Callback

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в киноCallback – это обратный звонок с сайта или лендинга. То есть посетитель заказывает вызов через специальную форму колбека, а менеджер компании или оператор колл-центра перезванивает ему спустя некоторое время. Это происходит силами средств SIP-телефонии. Обычно этот процесс занимает немного времени. Чем быстрее это происходит, тем лучше для бизнеса и потенциального клиента.

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

Для этого вы заполняете форму: печатаете свой телефонный номер, а в зависимости от возможностей и настройки callback, даже указываете точное время вызова. Затем нажимаете на кнопку «Жду звонок» или «Заказать вызов» и готово.

Почти сразу после отправки формы вам звонит уполномоченный сотрудник компании и консультирует по возникшим вопросам. Затем вы оформляете доставку – сделка закончилась успешно. На самом деле, это не единственный сценарий применения callback. Функционала и пользы от колбека гораздо больше, чем может показаться на первый взгляд.

Как выглядит форма callback для сайта

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

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

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино

Или это необязательно должен быть поп-ап. Здесь форма callback прячется в виджете в правом нижнем углу. Если на него кликнуть, то всплывает форма, где надо заполнить соответствующие поля.

Саму же форму можно стилизовать и раскрасить под брендбук компании. Например, кастомизировать форму колбека под цвета и визуальную составляющую фитнес-клуба.

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино

Форма адаптируется под размеры устройства: как ПК, мобайл или планшета, но выглядит гармонично и стильно. Здесь форма колбэка словно «вшита» в лендинг – а это умеют далеко не все сервисы обратного звонка на сайт. Впрочем, к этому вопросу мы еще вернемся.

Почему подключают обратный звонок и зачем он нужен бизнесу

Казалось бы, довольно простая идея коммуникации не может быть такой полезной. Однако маркетологи и руководители с помощью этого инструмента:

увеличивают конверсию – причем на всех этапах продаж: в звонок, сделку, оформление заявки;

контролируют поток лидогенерации – все потенциальные клиенты под контролем: функционал колл бэка позволяет не терять из виду ни одной заявки, а из рекламных кампаний выжимается максимум;

оптимизируют маркетинговый бюджет – callback и прямой вызов вместе собирают больше лидов, чем по отдельности, а значит вложенные в рекламу деньги не уходят в никуда;

увеличивают уровень клиентского сервиса и лояльность аудитории: callback – это действительно удобно и дружелюбно по отношению к пользователям;

контролируют работу и перераспределяют нагрузку операторов колл-центра – сервис обратного звонка сразу связывает сотрудника с клиентом.

Подключить обратный звонок – это быстрая и несложная задача.

Теперь же рассмотрим на практике и реальных историях из жизни бизнеса, как у callback все это получается.

Как callback увеличивает конверсию

Как известно, конверсия – это соотношение количества тех пользователей, которые совершили нужное вам целевое действие, к общему числу посетителей сайта. Зная конверсию, вы сможете прогнозировать подписки, новых клиентов, звонки, заявки и выручку. Чем она выше, тем больше доля заинтересованных лидов, а значит и больше прибыли. Поэтому маркетологи, менеджеры, руководители отделов продаж и директора всеми доступными способами пытаются ее повысить. И здесь им в этом непростом деле помогает подключение callback.

Callback – это не холодный звонок

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

Чтобы найти подходящие для него предложения, он открывает браузер, вводит ключевые фразы и в поисковой выдаче кликает на контекстную рекламу. Пользователь попадает на лендинг, где ему предлагается вроде бы та самая модель, но он сомневается насчет кредита: как будет происходить оплата, какие сроки и проценты. Ему нужна консультация, поэтому он открывает callback.

Заказывая звонок, пользователь не только оставляет вам контактные данные, но и дает знак, что он с интересом выслушает ваше УТП. Теперь же менеджеру по продажам необходимо выслушать человека и выстроить конструктивный диалог. Где надо – подсказать и предложить варианты решения проблемы, а где собеседник сомневается – убедить и устранить возражения. И чем быстрее откликается компания, тем лояльнее к ней будет клиент, а значит, охотнее согласится на сделку. Поэтому скорость – одно из преимуществ колбека.

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино50 минут в подарок для новых клиентов Узнать подробнее

Callback мотивирует оставить контакт

Но таких пользователей на самом деле много. И поэтому подключенный callback как бы синхронизируется с поведением и триггерами посетителей сайта. Например, форма появляется, когда он собирается покинуть страницу – страница прокручивается к началу или курсор наводится на закрытие вкладки.

Кто-то нажмет «закрыть», а кто-то оставит телефонный номер в форме, потому что ему на самом интересно предложение дилера и не готов просто так с ним расставаться. Благодаря этому автодилер расширяет базу заинтересованных клиентов, с которой уже можно работать.

Callback – канал нужной и достоверной информации

Форма обратного звонка выручит сайт и повысит его конверсию, если пользователь не нашел нужную информацию. Если возвращаться к примеру с автодилером, то представим, что другой клиент так и не выяснил из картинок и описания, есть ли в машине система умной парковки. Такой, чтобы она помогала ему правильно и безопасно припарковаться, случайно не задев другие автомобили.

Или принципиально важно, чтобы возле приборной панели находились USB-порты, чтобы поставить рядом заряжаться телефон и использовать его как навигатор. Все уточняющие вопросы он сможет задать через callback, а менеджер проконсультировать и предоставить точную информацию – ту, в которой нуждается клиент.

Важно помнить, что пользователей раздражает долгий поиск по незнакомому сайту. Если посетитель не найдет то, что ему нужно здесь и сейчас, то он просто уйдет на другие ресурсы, а именно к конкурентам. Сервис обратного звонка с сайта как раз позволяет это предотвратить.

Однако это не значит, что callback станет панацеей от всех недостатков страницы, например, неудобной навигации. Кажется, что все просто – достаточно подключить коллбэк, и лидов по умолчанию станет больше. В погоне за высокой конверсией надо учитывать множество факторов, которые влияют на этот показатель. Callback как раз служит вспомогательным инструментом.

Но казалось бы, что мешает пользователю получить информацию через прямой звонок в компанию? Обязательно ли подключать сервис колбека? Разве для конверсии есть разница, каким способом клиент может связаться с компанией? И на этот вопрос можно ответить положительно, потому что здесь мы подошли к еще одному ключевому пункту, почему колбек повышает этот показатель.

Как callback экономит рекламный бюджет и позволяет контролировать лидогенерацию

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

Может пройти минута, вторая, третья, а то и все десять, а операторы так и не освободились. У кого-то хватит времени и терпения дождаться, а кто-то бросит трубку, так и не дозвонившись до вас. И таких ситуаций может быть сотни, а то и больше.

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

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино

Предположим, клиенты интернет-магазина делают заказы по телефону. Чтобы справиться с большим потоком заявок, e-commerce площадка использует ресурсы колл-центра. Для привлечения новых лидов маркетологи используют контекстную рекламу и дают объявления в социальных сетях.

Однако скоро заметили проблему: каждое пятое обращение теряется на этапе звонка в компанию. Оператором не хватает времени поговорить с каждым, из-за чего теряется около 20% потенциальной прибыли. Более того, растут и расходы, потому что недозвонившийся клиент с платного трафика – деньги на ветер. Из-за этого растет стоимость покупки и снижается конверсия. Тем более, вряд ли разочарованный клиент снова позвонит в этот интернет-магазин, когда снова увидит его рекламу – оформить заказ там невозможно.

Поэтому в интернет-магазине решили подключить сервис callback. Он автоматически связывает пользователя с оператором колл-центра. Заказывая обратный звонок, посетитель уверен в том, что он будет говорить с нужным ему сотрудником, а не висеть на линии в ожидании. К тому же, виджет помогает грамотно перераспределить ресурсы колл-центра.

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

Как callback увеличивает уровень клиентского сервиса

Всегда есть аудитория, которой удобно использовать callback, а не звонить напрямую по нескольким причинам:

ваши посетители могут быть занятыми людьми. Например, у них сейчас нет времени ожидать ответа оператора и проще использовать call back.

на телефоне банально закончились средства – в таком случае бесплатный входящий звонок их выручит.

пользователь стесняется звонить первым – такие тоже есть: интроверты оценят разнообразие способов связи, один из которых – колбек.

Что умеет обратный звонок Calltouch: краткий обзор

Calltouch – это сервис сквозной аналитики и коллтрекинга. И понимая, что обратные звонки тоже надо анализировать, разработали собственный callback. Callback как инструмент лидогенерации не будет полезным для бизнеса, если не обладает рядом функций. Поэтому форма обратного звонка Calltouch:

адаптируется под смартфоны и десктоп-устройства. Доля мобильного трафика растет из года в год, поэтому колбек должен подстраиваться под размеры экрана;

кастомизируется под дизайн и брендбук компании – внешний вид callback легко настроить в пару кликов: цвет, форма, анимация, текст и другое;

принимает заявки даже в нерабочее время – скрипт автоматически соединит оператора или менеджера с клиентом, когда тот начнет работу. Для этого пользователю надо просто указать удобное время звонка;

автоматически перезванивает тем, с кем не удалось сразу связаться – еще одна мера по экономии рекламного бюджета. Также эта функция помогает бизнесу не терять клиентов;

синхронизируется с рабочим режимом колл-центра или отдела – настройка доступна в личном кабинете Calltouch;

умеет показываться только на тех страницах, которые вам нужны, например, лендинги или продуктовые ресурсы;

или появляться перед конкретной аудитории – например, использовать геотаргетинг, фильтр по каналу трафика;

поддерживает DTMF – пригодится, если компания использует IVR (голосовое меню) или записанное приветствие;

записывает и тегирует все телефонные разговоры.

Оператор при соединении с клиентом получит оповещение о том, что это заказанный звонок.

А чтобы сэкономить время пользователей, доступна функция выбора конкретного отдела. Например, пользователь зашел на страницу, чтобы обратиться исключительно по вопросу сервиса, а не покупки. Нередко случается, что отделы начинают «перекидывать» посетителя между собой, что отнимает время и вводит в замешательство. Поэтому в форме есть возможность заказа звонка конкретного отдела.

Callback Calltouch умеет собирать заявки из форм в социальных сетях Facebook и Вконтакте. Как мы знаем, одно из преимуществ этого инструмента – это скорость обработки обращения. И когда компания запускает рекламные кампании на этих платформах, приходится ждать выгрузки контактных данных маркетолога. Иногда этот процесс занимает долгое время. С Calltouch не придется этого ждать – скрипт колбека сразу соединяет оператора/менеджера с пользователем.

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино

Анализируя источники и результаты звонков, вы узнаете, откуда приходят лиды и что интересует аудиторию. Коллтрекинг Calltouch определит, с какого канала трафика, рекламной кампании и ключевого слова пришел заказ входящего вызова. Поэтому виджет звонка легко интегрируется с нужными системами: как CRM, так и рекламными площадками. Данные по callback в отчетах Calltouch будут как на ладони вместе с другими способами связи: например, формы на сайте, прямые вызовы с подменного номера.

Как это работает на практике? Представим, что посетитель перешел на сайт с рекламного объявления в поисковой выдачи. Изучив предложение, он заказывает звонок и оформляет доставку товара/запись на прием. Событие об этом передается в вашу CRM-систему, а коллтрекинг Calltouch определяет его источник. Информация об этом уходит в сквозную аналитику, где собираются уже все данные по эффективности рекламы и воронке продаж.

Подключить обратный звонок Calltouch просто – достаточно перейти в личный кабинет и потратить пару минут.

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино50 минут в подарок для новых клиентов Узнать подробнее

Сколько стоит подключить callback на сайт

У каждого сервиса стоимость обратного звонка для сайта получается разной в зависимости от объема и длительности вызовов. В сервисе сквозной аналитики и коллтрекинга Calltouch цена callback привязана к минутам. Чем больше минут, тем меньше цена. Для наглядности ниже приведена таблица цен при разовом приобретении пакета минут, если вам нужно подключить обратный звонок.

Источник

Введение в колбэк-функции в JavaScript

колбэк что это в кино. Смотреть фото колбэк что это в кино. Смотреть картинку колбэк что это в кино. Картинка про колбэк что это в кино. Фото колбэк что это в кино

У этой статьи есть продолжение — там мы рассказываем про работу с сервером и передачу параметров в коллбэк-функции.

При изучении программирования мы привыкаем мыслить последовательно: строки кода выполняются по порядку. Для многих языков это утверждение верно на 100%, но всё начинает меняться, когда речь заходит про асинхронное программирование.

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

Что такое колбэк-функция

Колбэк-функция или функция обратного вызова — функция, предназначенная для отложенного выполнения. Проще говоря, она должна быть выполнена после завершения работы другой функции. Чтобы стало понятнее, разберём пример с заказом пиццы.

Колбэк (callback) переводится как «Перезвоните». Действительно, принцип работы колбэков схож с заказом обратного телефонного звонка. Представьте, что вы звоните оператору для заказа пиццы, но срабатывает автоответчик, где приятный голос просит оставаться на линии, пока не освободится оператор, или предлагает заказать обратный звонок. Когда оператор освободится — он перезвонит и примет заказ.

Это прекрасная аналогия для понимания принципов работы колбэков и асинхронности. Вместо ожидания ответа оператора, мы можем заказать обратный звонок и заниматься другими делами. Как только произойдёт колбэк (нам перезвонили), мы сможем выполнить задуманное — заказать пиццу.

Как писать код для колбэков

Посмотрим на колбэки с практической стороны.

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

Что в этом коде больше всего бросается в глаза? Правильно — последовательность. Здесь представлен синхронный код, который будет выполнятся последовательно:

Проблема видна невооруженным глазом — пока готовится пицца, мы вынуждены ждать и ничего не делать. Строка readBook() будет выполнена только после приготовления пиццы. Фактически мы начнём читать книгу после приготовления пиццы, а не во время готовки.

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

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

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

Эту проблему решает асинхронность, и длительные операции лучше выполнять именно асинхронно. В этом варианте мы как бы откладываем длительную операцию «на потом» и вместо ожидания завершения выполняем другой код. В этой схеме прозрачно всё, кроме вопроса: «Как выполнить код после завершения асинхронной операции?». Ответ прост — функции обратного вызова.

В JavaScript функции являются объектами высшего порядка. Это означает, что функции можно передавать в другие функции в виде параметров или возвращать в виде результата выполнения.

В первом случае мы вызываем функцию foo при помощи круглых скобок и выводим результат выполнения в консоль. Во втором примере мы не делаем вызов функции (обратите внимание на отсутствие круглых скобок), и в консоль выводится содержимое функции. Выходит, нам ничего не мешает передать функцию в виде параметра для других функций:

Что в итоге? Мы передали ссылку на функцию в виде параметра и вызвали её внутри другой функции. В этом и заключается идея колбэков: мы передаем в виде параметров функции, которые будут вызваны «когда-нибудь потом».

И снова пицца

Вернёмся к примеру с приготовлением пиццы. Попробуем поэкспериментировать с кодом и перевести его на асинхронные рельсы. Напомню, наша задача — попросить приготовить пиццу, и читать книгу, пока пицца не будет готова.

Это рабочий код, попробуйте выполнить его в консоли и посмотреть на результат вывода. Он будет таким:

Как видите, ничего сверхъестественного в колбэках нет. Это обычная функция, которая будет выполнена не сейчас, а когда-нибудь потом. «Когда-нибудь» — не преувеличение. Мы не можем сказать, в какой момент времени это случится, но можем сказать, после какой именно функции — после выполнения функции приготовлении пиццы.

Источник

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

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