Rest где используется? Зачем?

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Аватара пользователя
maleks
Сообщения: 1859
Зарегистрирован: 2012.12.26, 12:56

Re: Rest где используется? Зачем?

Сообщение maleks »

ElisDN писал(а):
2020.03.05, 14:16
maleks писал(а):
2020.03.05, 14:10
Вот это js приложение, будет оно полноценным приложением? со всеми слоями - бизнес логика, модели, контроллеры, ui, а с API работать как с внешним миром. Или это все js приложение можно рассматривать как UI слой одного общего приложения?
Обычно это просто UI с маршрутизацией и виджетами.
Я вот совсем не уверен что фронтэндеры на таком остановятся.
Еще: Паттерны и бизнес-логика для вашего Vue приложения
Yii2 universal module sceleton - for basic and advanced templates

Аватара пользователя
ElisDN
Сообщения: 5530
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Rest где используется? Зачем?

Сообщение ElisDN »

maleks писал(а):
2020.03.05, 14:41
Я вот совсем не уверен что фронтэндеры на таком остановятся.
Это у них всё про бизнес-логику отображения и про вынос в сервисы кода дёрганья API.

Оригинальная логика со всеми процессами, валидацией и авторизацией должна оставаться на сервере, так как иначе в API кто угодно может отправить любой мусор.

Аватара пользователя
maleks
Сообщения: 1859
Зарегистрирован: 2012.12.26, 12:56

Re: Rest где используется? Зачем?

Сообщение maleks »

Ну значит надежда остается.

Пересекся недавно с одной фирмой.
Если раньше 4 бекенд разработчика, плюс 1 фронтендер(и то не факт) пахали над таким проектом.
То у них все перевернулось: 4 фронтэндера, один из которых фуллстек, который пишет API на yii.

Т.е. если не перейдешь на фуллстек, то прогресс может распорядиться так :
Изображение
Yii2 universal module sceleton - for basic and advanced templates

Аватара пользователя
ElisDN
Сообщения: 5530
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Rest где используется? Зачем?

Сообщение ElisDN »

Но как плюс после выноса фронтенда появилась свобода выбора языков для бека, так как с JSON пропадает необходимость возни с шаблонизаторами. И разделение на JS-фронт и API-бэк с возможностью манипулировать c JSON дают свободу строить UI компонуя ответы из разных систем. Например, контент запрашивать по API из своего бэка на Drupal, а товары подгружать по API из своей системы учёта.

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

Аватара пользователя
ElisDN
Сообщения: 5530
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Rest где используется? Зачем?

Сообщение ElisDN »

maleks писал(а):
2020.03.05, 15:10
Т.е. если не перейдешь на фуллстек, то прогресс может распорядиться так
Фишка про то, что PHP нативно работает с HTML уже не рулит. Чтобы заверстать страницу вроде Авиасейлз с реалтаймовым интерактивом по вебсокету для поиска нужно именно фронтендеру нехило попахать. На бэке чтобы получить цены всех комбинаций перелётов лучше на многопоточной Java или асинхронном JS пачку запросов к авиакомпании отправить. Так что либо занимаешься только бэком и нанимаешь отдельного фронтендера, либо как-то ковыряешься во всём сам.

Аватара пользователя
maleks
Сообщения: 1859
Зарегистрирован: 2012.12.26, 12:56

Re: Rest где используется? Зачем?

Сообщение maleks »

ElisDN писал(а):
2020.03.05, 15:30
Фишка про то, что PHP нативно работает с HTML уже не рулит.
Дело не в html, а в том что php - динамический, интерпретируемый язык.
И в результате это привело что на нем очень многое стало возможно сделать.
Сколько одних цмс?
И это все относительно недорого владельцу ресурса/сайта, по сравнению с проектом с поддержкой отдельными программистами для фронта, для бэка.
Взять например Drupal.
Там модулек капчи например подключил.
И опа , у каждой формы сайта пользователю админу появилось контекстное меню с предложением настроить если хотите капчу для этой формы.
ElisDN писал(а):
2020.03.05, 15:30
Чтобы заверстать страницу вроде Авиасейлз с реалтаймовым интерактивом по вебсокету для поиска нужно именно фронтендеру нехило попахать.
Такой функционал за ними всегда и был.

А вот например если на Vue и т.п. начнут полностью юзкейсы реализовать и модели, все таки Model же есть в ихнем MVVM, а то что идет на сервер с изменением данных, ну они эти данные "модели" придумают, чтобы без дубляжа, как нибудь на nodejs валидировать, но всю бизнес логику на js.
Yii2 universal module sceleton - for basic and advanced templates

skynin
Сообщения: 264
Зарегистрирован: 2017.12.12, 10:09

Re: Rest где используется? Зачем?

Сообщение skynin »

maleks писал(а):
2020.03.05, 16:05
И в результате это привело что на нем очень многое стало возможно сделать.
Зависит от сайта.
Но интереснее другое - если у владельца сайта нет на "дорого", то значит нет и на "дорого" и одному программисту.

Фулстек - это всегда была экономия бюджета, вместо оплаты работы 2ух программистов, оплатить максимум полтора. но обычно 1го.
Заказчику - выгодно. А программисту то зачем работать за двоих но получать за одного?

Всегда ж так было - универсал получает меньше специалиста.
И только в экономические кризисы наоборот :)
maleks писал(а):
2020.03.05, 16:05
Взять например Drupal.
Там модулек капчи например подключил.
И опа , у каждой формы сайта пользователю админу появилось контекстное меню с предложением настроить если хотите капчу для этой формы.
ну, если только это и нужно проекту, то да.
Обычно нужно много больше чем поставить десяток модульков.
maleks писал(а):
2020.03.05, 16:05
А вот например если на Vue и т.п. начнут полностью юзкейсы реализовать и модели, все таки Model же есть в ихнем MVVM, а то что идет на сервер с изменением данных, ну они эти данные "модели" придумают, чтобы без дубляжа, как нибудь на nodejs валидировать, но всю бизнес логику на js.
Не смогут, проверено не раз. Фронтенд разработчики с трудом понимают вообще чем там на бекенде занимаются. Как и наоборот.
Почему это он, фронтендер, по общей спецификации API сделал свою работу по эндпойнту за пару дней, а бекенд уже вторую неделю только тестовые данные шлет. при том что их, фронтендеров 1,5 человека, а на беке 4ро :)

Аватара пользователя
maleks
Сообщения: 1859
Зарегистрирован: 2012.12.26, 12:56

Re: Rest где используется? Зачем?

Сообщение maleks »

skynin писал(а):
2020.03.05, 16:34
Но интереснее другое - если у владельца сайта нет на "дорого", то значит нет и на "дорого" и одному программисту.
Ну на сайт то заказать например хватит.
А вот в поддержке как оно потом будет.
Если там все на yii, хоть это и самописный по сути сайт, то оно еще куда не шло, а если там и бэк и фронт будут самописные, то что там за порог входа в такой проект, понять что делается тут, что там.
skynin писал(а):
2020.03.05, 16:34
ну, если только это и нужно проекту, то да.
Обычно нужно много больше чем поставить десяток модульков.
В друпале обычно их ставится сотенка, плюс они абстрактные и позволяют в своих админках уже работать над созданием структуры сайта. Это все благодаря php.
skynin писал(а):
2020.03.05, 16:34
Не смогут, проверено не раз. Фронтенд разработчики с трудом понимают вообще чем там на бекенде занимаются. Как и наоборот.
Ну так житуха заставит понять :) .
Уже не у одного фронтендера, просто просматривая профиль, замечаешь Laravel например.
Очевидно что на них пресинг тоже идет.
Yii2 universal module sceleton - for basic and advanced templates

miltorg
Сообщения: 25
Зарегистрирован: 2019.08.13, 14:03
Откуда: Калининград
Контактная информация:

Re: Rest где используется? Зачем?

Сообщение miltorg »

Мне кажется или нет? В году так 2010 или чуть раньше я всем предлагал делать приложения для Андроид с помощью php - встраивая браузер в страницу. Никто не захотел тогда.
Похоже что через 10 лет тенденция идёт именно в этом направлении.
Но почему они используют локальные страницы - обращаясь к БД через задницу?
Почему нельзя использовать php? Ведь интернет всё равно у всех включён.

skynin
Сообщения: 264
Зарегистрирован: 2017.12.12, 10:09

Re: Rest где используется? Зачем?

Сообщение skynin »

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

такие же конфигурациионные возможности есть и в продуктах на Java. Например в Jira

-- делать приложения для Андроид с помощью php - встраивая браузер в страницу. Никто не захотел тогда.
и сейчас только сумашедший захочет

Даже энтузиасты на Node не смогли пока достичь качества нативного ПО.
При этом разработка нативного ПО для смартфонов становится все проще

-- Но почему они используют локальные страницы - обращаясь к БД через задницу?
наверное потому что голая информация из БД мало полезна
а требует обработки. значит должен быть код между данными в БД и тем что видит пользователь

skynin
Сообщения: 264
Зарегистрирован: 2017.12.12, 10:09

Re: Rest где используется? Зачем?

Сообщение skynin »

maleks писал(а):
2020.03.05, 16:52
Уже не у одного фронтендера, просто просматривая профиль, замечаешь Laravel например.
Очевидно что на них пресинг тоже идет.
Он был всегда
Сам успех php - о нем, об этом прессинге

И будет. В самом слогане Laravel подсказка
The PHP Framework for Web Artisans

Литературный перевод:
PHP фреймворк для вебмастеров

А кто такой вебмастер? как программист обычно слабый, но умеет решать широкий спектр задач, от настройки вирт серверов, тюнинга работы с БД до CSS анимации

То есть - универсал. И для огромного количества несложных проектов - именно такой и нужен, а не команда специалистов:
по devops, DBA, программист бекенда, программист фронтенда, верстальщик

Аватара пользователя
maleks
Сообщения: 1859
Зарегистрирован: 2012.12.26, 12:56

Re: Rest где используется? Зачем?

Сообщение maleks »

Смотря vue заметил что примеси у них внешне не особо отличаются от примесей все время(> 10 лет) используемых в yii (что широко критикуется).
Все циклично: новое - это хорошо забытое старое.
Yii2 universal module sceleton - for basic and advanced templates

Аватара пользователя
ElisDN
Сообщения: 5530
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Rest где используется? Зачем?

Сообщение ElisDN »

maleks писал(а):
2020.03.19, 11:38
Смотря vue заметил что примеси у них внешне не особо отличаются от примесей все время(> 10 лет) используемых в yii (что широко критикуется).
Ну так это общий паттерн Mixin.

Он практически во всех языках и инструментах с ним используются одинаково.

Аватара пользователя
maleks
Сообщения: 1859
Зарегистрирован: 2012.12.26, 12:56

Re: Rest где используется? Зачем?

Сообщение maleks »

ElisDN писал(а):
2020.03.19, 12:40
Ну так это общий паттерн Mixin.

Он практически во всех языках и инструментах с ним используются одинаково.
Ну это если используется, в php вроде уже и не особо, есть трейты, многие про него и не знают.
Его антипаттерном часто величают, а тут смотрю в vue не заморачиваются с правильностью.
Yii2 universal module sceleton - for basic and advanced templates

anton_z
Сообщения: 468
Зарегистрирован: 2017.01.15, 15:01

Re: Rest где используется? Зачем?

Сообщение anton_z »

maleks писал(а):
2020.03.19, 14:22
Его антипаттерном часто величают, а тут смотрю в vue не заморачиваются с правильностью.
Да ну, в vue миксины это хороший способ устранения дублирования кода компонентов. Наследования то нет, а композиция не всегда выручает. Вообще я давно уже прекратил заниматься догматикой "что правильно, что не правильно, что паттерн, что антипаттерн", чего и вам желаю. Смотрю по контексту, подходит ли решение под поставленную задачу, и неважно, что его какой-то посторонний человек в блоге антипаттерном назовет.

Аватара пользователя
maleks
Сообщения: 1859
Зарегистрирован: 2012.12.26, 12:56

Re: Rest где используется? Зачем?

Сообщение maleks »

anton_z писал(а):
2020.03.19, 16:33
Да ну, в vue миксины это хороший способ устранения дублирования кода компонентов. Наследования то нет, а композиция не всегда выручает.
Да вроде ж имеется наследование, понятно что в современном js.
anton_z писал(а):
2020.03.19, 16:33
Вообще я давно уже прекратил заниматься догматикой "что правильно, что не правильно, что паттерн, что антипаттерн", чего и вам желаю. Смотрю по контексту, подходит ли решение под поставленную задачу, и неважно, что его какой-то посторонний человек в блоге антипаттерном назовет.
Да я тоже за такой подход, но есть и объективные индикаторы, как те же вопросы coupling/cohesion, зависимостей и OCP
Yii2 universal module sceleton - for basic and advanced templates

skynin
Сообщения: 264
Зарегистрирован: 2017.12.12, 10:09

Re: Rest где используется? Зачем?

Сообщение skynin »

maleks писал(а):
2020.03.19, 16:54
Да вроде ж имеется наследование, понятно что в современном js.
это синтаксический сахар вокруг все того же протипного наследования.
по ссылке там это рассказано

раньше руками так и делали. теперь не надо.

а прототипное как было так и осталось

anton_z
Сообщения: 468
Зарегистрирован: 2017.01.15, 15:01

Re: Rest где используется? Зачем?

Сообщение anton_z »

maleks писал(а):
2020.03.19, 16:54

Да вроде ж имеется наследование, понятно что в современном js.
Я про наследование компонентов vue. С ними пока что никакое наследование, применяемое в js, не работает. Иное мнение? Покажите, скажу спасибо.

Ответить