Клиент-серверная архитектура
Время на чтение: 7
минут
Посмотрим на процесс открытия сайта более глобально.
У пользователя есть компьютер с которого он отправляет запрос на получение сайта.

И есть еще один компьютер на котором хранится все нужные данные по этому сайту. Еще этот компьютер по-другому называют сервер.

Вот и получается клиент-серверная архитектура взаимодействия.

Когда вы, как пользователь, открыли браузер по факту вы открыли клиент.

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

Теперь подробнее о каждом пункте.

Это то что видит пользователь. Дизайнеры, фронтенд разработчики и продакт менеджеры трудятся чтобы эта часть продукта была максимально понятной и простой для пользователя.
Когда вы вводите запрос на клиенте, вы отправляете данные в сторону сервера через клиент. Сервер отвечает за логику. Именно там прописано куда именно обращаться за данными и как их потом обработать чтобы получить нужный результат. Физически же, сервер это компьютер, на котором хранится программа со всей логикой.
На сайте есть картинки, текст, разные страницы, которые сгруппированы между собой по смыслу. Вот вся эта информация хранится в базе данных в виде таблиц. Словно несколько таблиц в Excel связали между собой и указали какая таблица от какой зависит. Там прописано все: какие картинки, какие заявки размещены на сайте, кто написал, во сколько и т.д.

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

Теперь зная все это нам легко понять как устроены конструкторы сайтов.
В архитектуре у нас участвуют три элемента.
Клиент
Сервер
База данных.

Так вот конструктор сайтов берет на себя 2 из 3 элементов полностью на себя, а именно: сервер и базу данных. А по клиенту дает возможность его видоизменить под себя.

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

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

Но есть такие инструменты, которые позволяют настраивать и клиент и сервер и базу данных по определенным шаблонам. Это все равно пробовать нарисовать Мона Лизу по заранее подготовленному трафарету. Вы можете менять краски, но сильно ошибиться с самой картиной не получится.

Так работает большинство конструкторов приложений.


Если сравнить два подхода, то получится примерно следующее:
Самописный
Создание карты сайта
Создание Информационной архитектуры
Создание структуры сайта
Дизайн
Создание инфраструктуры для сайта
Разворачивание базы данных
Верстка
Размещение на хостинге
Выкладка в продакшн

На конструкторе сайтов
Создание карты сайта
Создание Информационной архитектуры
Создание структуры сайта
Дизайн
Создание инфраструктуры для сайта
Разворачивание базы данных
Верстка (создание из готовых блоков)
Размещение на хостинге
Выкладка в продакшн

Как вы видите формат работы на конструкторе сайтов сильно сокращает количество этапов до того как вы реально можете ввести адрес и попасть на ваш вебсайт.
Расскажи как тебе этот блок?
Все блоки: