Максым Атыгаев @atygaev
Java Backend Developer
Information
- Rating
- Does not participate
- Location
- Бердск, Новосибирская обл., Россия
- Date of birth
- Registered
- Activity
Specialization
Backend Developer
Lead
Java
PostgreSQL
Docker
Spring Boot
Java Backend Developer
выбралисделали такое решение.Вспоминая про тему «игры, в которые играют люди», иногда складывается впечатление, что это игры играют в людей.
theoutloud.ru/play/track.php?track=77
В совокупности с вот этим stackoverflow.com/a/9930716
можно предположить, что статуса мало и нужно смотреть ответ и заголовки.
По поводу разрыва соединения я как-то раньше не думал.
Я хочу понять мотивацию тех, кто использует подход 200 + error и тех, кто не использует 200, если error.
Я почему-то всегда думал, что в REST API мы должны полагаться на HTTP status code и не только полагаться, но и сами правильно возвращать нужный код со стороны backend.
«Библиотечная процедура» — звучит очень здорово!) я понимаю к чему Вы ведете.
Я понимаю так, что «декларативность» — способ решения задачи. Если мы решаем какую-то задачу и при этом не заморачиваемся над тем, чтобы описать ее реализацию, то пожалуй это всегда здорово независимо от того как мы это будем называть) Ведь так?)
Особенно чудесно, когда язык сам дает инструменты описать решение задачи. По сути всё можно свести к вызову некоторых функций. Просто в каждом конкретном случае уровней абстракций больше или меньше.
Возьмем достаточно примитивную задачу: сделать строку из коллекции используя заданный разделитель.
Как это сделать в императивном стиле? В императивном стиле мы должны пройти по всей коллекции и вручную соединять ее элементы с разделителем попутно формируя итоговую строку.
Как это будет выглядеть в декларативном стиле? Я себе это понимаю так, что мы говорим языку программирования «Эй, дружище, а сделай мне пожалуйста строку из вон той коллекции! И, да, кстати, вставь пожалуйста между элементами этой коллекции разделитель. Какой? Вот этот.».
Мой проект как раз и идет по второму пути. Приведу небольшой пример. Пусть у нас есть коллекция из букв и мы хотим их собрать в строку. Ну мало ли для каких целей нам это понадобилось. Прошу сконцентрироваться не на самой постановке задачи, а именно на пути ее решения.
Вначале создадим коллекцию из букв.
А теперь решим поставленную задачу.
Всего одна функция. Никакой императивности. Мы говорим что хотим и получаем это.
Проект помогает скрыть слой циклов. Разработчику остается написать что нужно сделать с элементами коллекции. Всё остальное (по сути, только цикл) проект сделает сам.
Если вы имеете ввиду Aggregation
Pipeline, то в данной реализации это не поддерживается.
Это очень простой проект (по своей реализации), и там индексы не используются, а сортировка, к сожалению, не поддерживается.
Замеры проводились но, как уже было сказано выше intersystems эти цифры носят частный характер. Могу провести отдельные замеры по интересующим вас сценариям.