LINUX.ORG.RU

Клиент vs Сервер, где разумный баланс?

 , , ,


0

2

Глядя на россыпь js-библиотек и переосмысление веб-разработки как таковой в контексте front-end программирования, захотелось задать один общефилософский вопрос: какую функциональность целесообразно держать на html/js-фронтенд, а какая - «навеки» останется на темной серверной стороне?

Потому как эта самая россыпь иногда очень сильно замыливает глаза и сбивает с толку такого индивидуума как я :)

★★★★★

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

umren ★★★★★
()

Рассматривай любой бекенд как некое сторонее АПИ предоставляющее данные в соответствии с запрашиваемыми параметрами.

А что касается формата ответа, то это можно назвать «контекст вывода», т.е. чем там АПИ в ответ плюется - уже дело случая, будь то JSON или XML или html.

deep-purple ★★★★★
()
Ответ на: комментарий от umren

Да. Потому и написал, что вопрос скорее философский. Но есть же какие-то общие критерии из практики.

Существует ведь множество некоторых вещей, которые лучше реализовывать именно на сервере практически в любом случае?

Тем то мне и «страшно» повальное увлечение client-side, что апологетам следует знать, когда нужно остановиться.

Twissel ★★★★★
() автор топика
Последнее исправление: Twissel (всего исправлений: 4)
Ответ на: комментарий от Twissel

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

deep-purple ★★★★★
()

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

anonymous
()
Ответ на: комментарий от deep-purple

Ну вот, я примерно об этом и писал в первом посте.

А не так что и логику и представления перевести на локалхост и радоваться.

Twissel ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Впрочем, на сервере всё равно придётся проверять

Вот и я не заморачивался на клиенте с проверками, отправлял формы аяксом и показывал то что вернет бекенд, т.е. на клиенте только перделки - прилетел ответ в жсоне, если ошибка - покажи ошибку, если все ок, то и нормально.

deep-purple ★★★★★
()
Ответ на: комментарий от deep-purple

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

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

В остальном же не нужно никогда доверять клиенту.

ritsufag ★★★★★
()

Валидацию обязательно делать на сервере. Опционально - предварительно на клиенте.

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

shimshimshim
()
Ответ на: комментарий от Twissel

Как ни смешно но сервера не существУет по логике и клиента, но баланс необходим всегда на то он и баланс ибо ему пофик че да как суть в ядре а ядРо родило вселенную которая растет и от этого никуда не дется а попробуй сдержать )

dima1981
()

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

vertexua ★★★★★
()
Ответ на: комментарий от vertexua

естественно же ) но клиент клиенту рознь как ни крути и да, дело только времени

dima1981
()
Последнее исправление: dima1981 (всего исправлений: 1)

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

А основная логика работы приложения как была так и остается на сервере.

Twissel ★★★★★
() автор топика

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

Vit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.