TGViewer
10 минут до кода 10 минут до кода @ten_minutes_to_code · 228 subscribers
Post #21 121
Слепое проектирование: Бэкэнд не должен знать о кнопках.

Одна из самых частых ошибок новичков — проектировать серверную логику, держа перед глазами макет из Figma. Им кажется, что если в дизайне есть кнопка «Отправить», то и сервер должен ждать «нажатия кнопки».

На самом деле, хороший бэкенд проектируется в состоянии полной сенсорной депривации.

🙈 Сервер не видит мир

Представь, что бэкенд — это мозг в банке. У него нет глаз, он не знает про CSS, анимации и даже про то, существует ли экран. Он общается с миром только через записки (API-запросы).

Когда ты пишешь код сервера, ты должен исходить из максимальной неопределенности:
➖ Кто прислал запрос? Браузер? Мобилка? Скрипт хакера из терминала?
➖ Пользователь нажал кнопку один раз или заспамил её 100 раз за секунду?
➖ Он вообще заполнял форму или просто подделал HTTP-пакет?

Ловушка «Фронтенд-зависимости»

Если ты строишь бэкенд «от фронтенда», получается хрупкая конструкция.

Плохой пример: Делать эндпоинт /save-blue-form.

Почему это плохо? Завтра дизайнер сделает форму красной или разобьет её на три шага, и твой бэкенд-код внезапно станет «логически тупым». 🤷‍♂️

💡 Запомните: Серверу плевать на форму, ему важен контракт.

Бэкенд должен говорить: «Мне не важно, как ты это собрал. Дай мне user_id и amount. Если данные валидны и у пользователя есть права — я запишу это в базу. Нет — иди лесом».

Когда ты «ослепляешь» бэкенд сознательно, ты получаешь три суперсилы:

1. Устойчивость: Ты не доверяешь фронтенду. Ты валидируешь всё на сервере, потому что «снаружи» может прийти любой мусор.
2. Масштабируемость: Сегодня твой бэкенд управляет Web-сайтом. Завтра вы выпускаете приложение на iOS. Если бэкенд «слепой» и работает только с логикой данных — понадобится ноль усилий по переделке. Все итак работает.
3. Тестируемость: Тебе не нужно открывать браузер, чтобы проверить код. Ты просто отправляешь на бэкэнд запрос с JSON и смотришь результат.

Проектируй бэкенд так, будто фронтенда не существует и вовсе. Представь, что твой единственный клиент — это злой хакер, который шлет тебе запросы через curl.

Если система выстоит и сохранит данные консистентными в таких условиях — значит, ты спроектировал отличный мозг. 💪

Если что-то всё ещё звучит запутанно — пиши вопросы в комментах, я обязательно отвечу. А если всё разложилось по полочкам — ставь 🔥, так я пойму, что пост был полезен

10МДК
  • 🔥 7
  • ❤ 6
  • ❤‍🔥 1
More from @ten_minutes_to_code
  1. May 28, 2026Первый сезон получился про путь “от пользователя к инженеру”. Именно эту картину мы весь с…
  2. May 28, 2026Когда я запускал этот канал, у меня была довольно простая идея: писать каждый день коротки…
  3. May 7, 2026Почему нормализация БД — это чистая логика, а не бюрократия На любом ongoing-проекте требо…
  4. May 3, 2026🤔 А где новые посты? Сори что вот так пропал без предупреждения, но я думал что справлюсь…
  5. Apr 29, 2026Почему HTTPS не спасет ваши секреты Замочек в адресной строке браузера — это мощное успоко…
  6. Apr 28, 2026Целостность данных против иллюзии атомарности Начинающий разработчик видит базу данных как…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →