Подведение итогов моей четвертой недели в буткемпе Northcoders.

Эта неделя показалась мне намного менее интенсивной, чем предыдущие недели, я не знаю, потому ли это, что темы были для меня более понятными, или потому, что мы использовали знания предыдущих недель и развивали их дальше во время наших уроков. Медленные прогрессивные инкременты окупались (кроме гитхаба, может на этой неделе освою?)

Обратите внимание, понедельник выпал на выходной день, поэтому школы не было.

Что мы рассмотрели на этой неделе…

ВТОРНИК: Асинхронный код.

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

Чтобы изучить этот асинхронный javascript, мы использовали функцию setTimeout() интерфейса прикладного протокола узла (api) для реализации временной задержки. Когда javascript считывает этот API-интерфейс узла setTimeout(), он обрабатывает его отдельно, через цикл событий API и ждет, пока стек вызовов станет пустым, прежде чем выполняться до завершения, что позволяет javascript выполнять две функции синхронно, без блокировка кода.

СРЕДА: Асинхронный код.

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

Там, где не хватает API узлов, процветал обратный вызов. Мне показалось, что API-интерфейсы узлов могут стать довольно запутанными и трудными для чтения вашего кода, если вы пытаетесь выполнить несколько функций, поскольку порядок их возврата может быть точно не гарантирован. Время, которое передается в качестве параметра в setTimeout(), является минимальным временем задержки, а не фактическим временем.

Обратные вызовы — это способ убедиться, что определенный код не выполняется, пока другой код не завершится.

ЧЕТВЕРГ: Интернет.

Как на самом деле работает интернет? Как информация перемещается в Интернете?

Я нашел это действительно интересным. Это то, чем я пользуюсь каждый день, но никогда особо не вникал в это. Давайте кратко рассмотрим…

Вы просматриваете фотографии кошек на своем телефоне, как они попадают на ваш телефон?

Картинка размещена на веб-сервере. Ваш телефон отправляет запрос на веб-сервер для изображения.

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

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

ПЯТНИЦА: Обещания.

Промис в javascript — это «прокси для значения, которое не обязательно известно при создании промиса». — Веб-документы MND

Обещание — это объект, который может быть возвращен синхронно из асинхронной функции.

Промис может иметь только три состояния…

В ожидании: еще не выполнил или не отклонил обещание.

Выполнено: действие, связанное с обещаниями, выполнено успешно.

Отклонено: действие было отклонено.

Мысли на этой неделе

Эта неделя была менее интенсивной, но содержание очень важно для эффективной работы javascript.

На данный момент подача и содержание лекций становятся для меня более понятными для интерпретации. Несмотря на то, что мой словарный запас сокращается, мое понимание растет.

Если вы читаете этот блог и еще не использовали Node API, попробуйте и посмотрите, сможете ли вы использовать setTimeout(). Вы можете прочитать больше здесь.