170 похожих чатов

Привет всем. Есть функций 10, которые передают между собой 10

одинаковых аргументов и ещё пару, несколько принимают 5 из этих 10. Насколько ок идея передавать один frozen dataclass с аргументами между этими функциями, чтобы они брали, что им нужно и передавали его дальше?

26 ответов

6 просмотров

Если это какие-то связанные кусочки данных — вполне.

А в чем смысл плодить такое количество функций, если они используют одинаковые параметры?

Это называется DTO

Yehor- Автор вопроса
Sergey Mironov
А в чем смысл плодить такое количество функций, ес...

По сути, только 3 из них используют эти параметры, остальные просто передают через себя

Yehor
По сути, только 3 из них используют эти параметры,...

В одну никак? Бритва Оккама еще никого не подводила

Yehor- Автор вопроса
Yehor
Если в одну, то она выйдет на 500 строк

так все же, параметры меняются? А если их просто положить словарем в redis и потом отдельно читать в каждой функции, без передачи

Taras
Это называется DTO

А можно краткого но достаточного описания этого паттерна. В чем основная суть DTO? А то я вроде паттерны изучал, но DTO кажется чем-то новым)

DTO (Data Transfer Object) - это шаблон проектирования, который используется для передачи данных между слоями приложения или между приложениями. DTO является объектом, который инкапсулирует данные, которые должны быть переданы и не имеет какой-либо логики. DTO обычно используется для уменьшения количества запросов к базе данных и ускорения передачи данных по сети. Кроме того, DTO может использоваться для скрытия деталей реализации от клиента и обеспечения защиты данных.

Норм

Ярослав Ильенко
DTO (Data Transfer Object) - это шаблон проектиров...

А в чем принципиальное отличие от структуры из C?

Tishka17
В том что это относится к ООП языку

Ну то есть класс не содержащий методов — уже паттерн с названием DTO?

Tishka17
Вопрос для чего он используется

Например если надо вернуть список троек каких-то элементов из функции. При этом каждый элемент из тройки имеет какое-то смысловое значение. И я для этого создаю класс с тремя полями, а из исходной функции возвращаю список объектов этого класса, я уже использую DTO или еще нет?

Tishka17
Ну типа да.

Ну ах@#ть теперь программисты на СИ 20 лет назад и не знали, что используют паттерн )

Brinza
Ну ах@#ть теперь программисты на СИ 20 лет назад и...

Хотя может я пропустил просто. Он в GoF не описан?

Brinza
Ну ах@#ть теперь программисты на СИ 20 лет назад и...

Ну как бы паттерны это просто осмысленная формулировка для того, что и так широко используется

Tishka17
Ну как бы паттерны это просто осмысленная формулир...

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

Оно настолько же базовое, насколько и DI, но все равно вызывает вопросы

Tishka17
Оно настолько же базовое, насколько и DI, но все р...

А можно тогда простого, «элементарного» пояснения для этих умных слов Dependency Injection.

Brinza
А можно тогда простого, «элементарного» пояснения ...

если объекту что-то нужно, он получает это извне, а не создает сам

Похожие вопросы

Обсуждают сегодня

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Ребят, что лучше для реверса: гидра или ида?
En Vind Av Sorg
26
Вопрос я правильно понимаю что в коде newtype ArrowMap k v = ArrowMap { getArrowMap :: k -> Maybe v } getArrowMap есть функция типа k -> Maybe v, если да, то не понимаю задач...
Fedor
64
Делаю велосипед логгер. К сообщению хочу прикрутить некоторую информацию, типа, кем отправлено, какой уровень, и всякое такое. И тут подумалось мне, почему бы не хранить весь...
Serjone
24
Как Вы считаете нормально ли в двадцатых годах 21 века в ВУЗах Российской Федерации обучать студентов работе с TASM? Не слишком ли это "архаично"? (Если оффтоп или флейм для э...
Spiker01
52
а не подскажете вот это скрин из какой IDE ?
Iluha Companets
14
Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
48
Продолжая диалог про свифт в проде – сейчас возник вопрос в активном наборе бекендеров. В основном в нашей компании мы фанаты Java Spring и полностью ей довольны. Однако найм ...
Guseyn
27
Народ всем привет Подскажите, как включить самописные dll библиотеки в итоговую сборку Сейчас при запуске dev сервера локально формируется папка build, из которой запускается...
Андрей
4
Комрады, подскажите, в дельфях есть компоненты а-ля TDirectorySelect?
Ed Doc
15
Карта сайта