Почему «синхронный» в программировании — это не «одновременный»

Помню когда первый раз столкнулся с понятиями «синхронный» и «асинхронный» запрос у меня возникла путаница из-за разных смыслов слова «синхронный» в программировании и в обычной речи.

Вот небольшое пояснения для тех кто тоже с этим сталкивается.

➡️ В обычной речи

«Синхронно» = одновременнов одно время. Например, «синхронное плавание» — это когда все делают одно и то же движение одновременно.

➡️ В программировании

«Синхронно» = в определённой последовательности, шаг за шагом, с ожиданием результата. То есть выполнение идёт в строгом порядке, «в синхроне» с логикой программы. Каждый следующий шаг «синхронизирован» с завершением предыдущего.

«Асинхронно» = программа не ждёт. Она запускает запрос и сразу идёт дальше, а когда ответ придёт, специальный механизм (колбэк, промис, событие и т.д.) обработает результат.

➡️ Поэтому:

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

Асинхронный запрос — это запрос, при котором программа не ждёт ответа и может выполнять другие задачи, пока ответ не придёт.

То есть в программировании термин пришёл от синхронизации процессов, а не от «одновременности».

Надеюсь помог разобраться с этими терминами.

Хостинг для ваших проектов