powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
25 сообщений из 256, страница 1 из 11
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39648968
SomeQuestions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Интересует такой вопрос.
В Aspnet Mvc принято иметь контроллеры. Причем каждый контроллер посвящен отдельному аспекту - работа с пользователями, работа с документами т.д. И принято называть методы с читабельными-осмысленными названиями.
Теперь Rest.
Мы имеем контроллер для работы с сущностями и базовые операции Get для чтения, Post для вставки, Put для изменения.
Но как в Rest укладываются задачи сложнее чем базовые команды Добавить/Удалить ? Что если требуется реализовать логику, к примеру, "найти все документы где создателем являлись пользователи из переданного списка и скопировать их на FTP". Как такую задачу впихнуть в подход Rest ?

И еще вопрос. Я знаю, что на смену WebApi и Mvc приходит Aspnet Core. Но не заменяет их, а идет параллельно. Но какая идеалогия лежит в Core ? Та, что ближе к Mvc подходу (говорящие имена методов) или к WebApi (только базовые операции над сущностью) ?
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39648990
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SomeQuestionsМы имеем контроллер для работы с сущностями и базовые операции Get для чтения, Post для вставки, Put для изменения.
Но как в Rest укладываются задачи сложнее чем базовые команды Добавить/Удалить ?REST - это концепция, а не жесткий ограничивающий стандарт. Что мешает в тот же контроллер добавить "/api/document/getList"?

SomeQuestionsИ еще вопрос. Я знаю, что на смену WebApi и Mvc приходит Aspnet Core. Но не заменяет их, а идет параллельно. Но какая идеалогия лежит в Core ? Та, что ближе к Mvc подходу (говорящие имена методов) или к WebApi (только базовые операции над сущностью) ?Неправильно всё понял. ASP.NET Core приходит не на смену WebApi и Mvc, а на смену ASP.NET.
WebApi и Mvc в нем точно так же живут и развиваются
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39648994
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SomeQuestionsMvc подходу (говорящие имена методов) или к WebApi (только базовые операции над сущностью)смешались в кучу кони....
Говорящие имена методов - это от аккуратности программиста зависит, в любой технологии можно нагородить свалку. А WebApi не равно REST, и кто мешает использовать там говорящие методы?
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649003
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SomeQuestions,
При rest бизнес логика (БЛ) по умолчанию на клиенте.
Контроллеры тоже.
Например, ангуляр.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649019
SomeQuestions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И все же не понимаю. Сам подход Rest гласит, что у контроллера должны быть лишь операции типа HttpPost, HttpGet, HttpPut. И как это согласуется с идеей: "но вообще вы можете в контролере и просто фигачить методы типа FindUsersDocsAndSentToFtp" ?
И в чем тогда смысл следовать Rest подходу, если он не ограничивает использования обычных методов ?

"WebApi и Mvc в нем точно так же живут и развиваются". Если я правильно понял обе технологии сливаются в одну, нет больше разделения. Я не трогал Core до сих пор. Но мне интересно, если обе технологии сливаются в одну, то каким образом ? Ведь подходы разные - в WebApi предполагается, что в контроллере только CRUD операции. А в MVC используются читабельные имена методов.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649021
SomeQuestions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123SomeQuestions,
При rest бизнес логика (БЛ) по умолчанию на клиенте.
Контроллеры тоже.
Например, ангуляр.

Но не всегда это возможно. тот же пример - отметить галочкой список юзеров и потом заставить бэкэнд сделать с ними работу. Что то перекинуть с сервера на сервер. Как это накладывается на Rest подход ?
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649033
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SomeQuestionsPetro123SomeQuestions,
При rest бизнес логика (БЛ) по умолчанию на клиенте.
Контроллеры тоже.
Например, ангуляр.

Но не всегда это возможно. тот же пример - отметить галочкой список юзеров и потом заставить бэкэнд сделать с ними работу. Что то перекинуть с сервера на сервер. Как это накладывается на Rest подход ?
Приложение js с одной точкой входа видел?
Почти вся работа на клиенте.
Но чистого рест не бывает. Так что есть исключения.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649039
SomeQuestions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

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

Так давайте все таки уточним. Как сочетать эти два мира в WebApi, и в современном Aspnet Core ?
В контроллере для CRUD операций должны быть предусмотрены методы работающие на основе Http Verb'ов И в том же контроллере допустимы методы типа HttpGet и HttpPost с читабельными именами для сложной логики. Так ?

Интересует мнение тех, кто как раз и реализует такие сервисы. Т.е. практический опыт создания такой бэкэндовой системы.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649049
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SomeQuestions,
Один клик в гугл и:
Создание веб-API с помощью ASP.NET Core и Visual Studio
для Windows

Тут главное маппинг урл. Не вижу проблемы.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649052
SomeQuestions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

в том и дело, что в подобных статьях описывается только Rest подход
https://habr.com/company/microsoft/blog/312878/
в том и дело. Только примеры с базовыми Crud операций.

ну а мапинг, что мапинг ? Понятно что можно сконфигурировать, чтобы в одной контроллере были урлы для круд операций через Http verbs и именованные методы для сложной логики.

Мой вопрос - является ли это нормальной практикой ? Вы говорите, что такое может быть в порядке исключения. Но как по мне, то это будет в любом мало мальски сложном проекте. Взять хотя бы SPA. Ну показать список, изменить запись, добавить. Это понятно. Но а со сложными методами как ?
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649057
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SomeQuestionsНо как в Rest укладываются задачи сложнее чем базовые команды Добавить/Удалить ? Что если требуется реализовать логику, к примеру, "найти все документы где создателем являлись пользователи из переданного списка и скопировать их на FTP". Как такую задачу впихнуть в подход Rest ?

В смысле по-сложнее? Что тут сложного?

GET -- идемпотентная операция получения данных
POST -- создаёт НОВЫЕ данные
PUT -- изменяет СУЩЕСТВУЮЩИЕ данные
DELETE -- удаляет данные

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

не можете, забейте тогда на HTTP-методы, работайте с маршрутами (url)
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649058
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SomeQuestions,
Сделайте 90% в ангуляре и 10 на сервере. И успокойтесь.
Будет rest.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649117
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SomeQuestionsнайти все документы где создателем являлись пользователи из переданного списка и скопировать их на FTP
А если убрать в сторону REST, WebApi и Mvc, то как Вы это реализуете в ООП?
В один класс, в один метод запихнёте? Или в несколько?
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649165
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123SomeQuestions,
Сделайте 90% в ангуляре и 10 на сервере. И успокойтесь.
Будет rest.

Тогда такой вопрос - а зачем вообще городить(применять) REST-подход? Чтобы "типа" сервер был один, а клиентов - много?

Но если 90% сделать на ангуляре, то преимущества подобного подхода нивелируются сложностью клиентской разработки.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649186
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортом,
Ангуляр не обязателен. Главное где БЛ (контроллеры).
А у него все как на ладони. Маппишь урл и все дела.
...
REST никто не плодит. Это вариант архитектуры. Причем исторический.

Агнец за бортомЧтобы "типа" сервер был один, а клиентов - много?
Как вариант да. Эра мобильнков и API к ним.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649188
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомсложностью клиентской разработки.с каких пор программировать на одном из ЯП стало сложнее? Везде одинаково))
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649218
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Как вариант да.

А еще?
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649226
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123с каких пор программировать на одном из ЯП стало сложнее?

Причем тут ЯП?

Сложность там - где ветвление логики.

БД проектируем за неделю, REST-сервис - генерится вообще из БД - ура-ура, мы можем теперь использовать spread разных клиентов.

Только вот теперь писать клиента (каждого) мы будем по полгода.

Логика перемещается сначала их хранимок в сервер приложений, теперь из сервера приложений - на толстого клиента.

В чем профит?
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649227
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Ангуляр не обязателен. Главное где БЛ (контроллеры).

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

Во вторых что значит БЛ (контроллеры) ??
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649239
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

ты серьёзно предлагаешь через браузер копировать файлы на FTP?
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649281
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомPetro123Как вариант да.

А еще?REST клиент андроид
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649283
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомЛогика перемещается сначала их хранимок в сервер приложений, теперь из сервера приложений - на толстого клиента.

В чем профит?
Это маятник движения прогресса. Туда сюда))))
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649285
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомВо вторых что значит БЛ (контроллеры) ??бизнес логика это контроллеры. Чаще всего.
Если не брать технические вещи. Роутинг и т.д.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649296
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомТолько вот теперь писать клиента (каждого) мы будем по полгода.ты как вадя тут выступаешь против фреймворков.
Это оффтоп.
Что на шарпе сайт пару недель, что на js + rest сайт пару недель.
...
Рейтинг: 0 / 0
Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
    #39649374
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Что на шарпе сайт

Вопросов больше не имею.
...
Рейтинг: 0 / 0
25 сообщений из 256, страница 1 из 11
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Rest. А как реализуются методы с логикой сложнее чем Добавить/Удалить ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]