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

Ну тогда если тебе нужны все ее поля, у тебя

какой вариант? Создать вью модель да заммапить, но как ты сам сказал (в другом примере) при необходимости это можно довольно просто сделать

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

44 ответов

97 просмотров

Совпадения вью и доменки по полям практически не бывает, я такие кейсы даже придумать не в состоянии, если это конечно нормальная толстая модель по первоисточнику, а не анимичные подделки под ддд

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Совпадения вью и доменки по полям практически не б...

Я хз, у меня моделей с большим количеством полей мало, можно их и один к одному соединять База то нормализована в большей степени

Николай Симонов
Я хз, у меня моделей с большим количеством полей м...

Ну не будете же вы доменку на круд формы писать? Нахера там логики то нет. Ну я надеюсь ))

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Ну не будете же вы доменку на круд формы писать? Н...

Логики в круде? Или в доменке? Для меня доменки это entities для дбсета, а то может я не понимаю тебя 😀

Николай Симонов
Логики в круде? Или в доменке? Для меня доменки ...

В круде, логики нету обычно, валидаторы я бизнес логикой не считаю. И по сути там прямо в контроллере поднял/создал/удалил/изменил )) Какие там доменки к херам собачьим? )

Николай Симонов
Логики в круде? Или в доменке? Для меня доменки ...

Доменка в моем понимании сложный бизнес объект, агрегирующий множество сучностей БД, с логикой внутри самого объекта.

Николай-Симонов Автор вопроса
Дмитрий Алексеев
В круде, логики нету обычно, валидаторы я бизнес л...

Ок, я попытаюсь представить Делаешь микросервис для круда одной таблицы Там вообще можно от всех слоев избавиться и юзать минимал апи, тогда и маппинг не понадобится

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Доменка в моем понимании сложный бизнес объект, аг...

Для меня доменка это поля с описанием ограничений и типов для таблицы в code first, поверх которой потом будет создана миграция, без какой либо логики в своем типе

Николай Симонов
Для меня доменка это поля с описанием ограничений ...

А почему это доменка то? Это модель БД. Или сучность. Домен то тут причем?

Николай Симонов
Модно

Не важно, в микросервисе или в монолите суть не меняется

Николай-Симонов Автор вопроса
Дмитрий Алексеев
А почему это доменка то? Это модель БД. Или сучнос...

Ну да, именно это Ты уверен что это просто не синонимы?

Николай Симонов
Ну да, именно это Ты уверен что это просто не сино...

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

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Ну смотря по какой школе смотреть, щас все поизвра...

Мне просто слово entities в тыщу раз сложнее написать и произнести, хуже только queue

Николай-Симонов Автор вопроса
Дмитрий Алексеев
А чем русский вариант сучность не устраивает? )

В немйсмейсе и папку в проекте 😀 Project.Suchnosties

Николай Симонов
В немйсмейсе и папку в проекте 😀 Project.Suchnost...

Гм, ну в проекте же это не одна папка, наверное, ну как бы делать одну папку на несколько тысяч классов такое себе...

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Гм, ну в проекте же это не одна папка, наверное, н...

Я это взял из простой трёхслойной архитектуры Где есть DAL слой, в котором и лежат модели бд

Николай Симонов
Я это взял из простой трёхслойной архитектуры Где...

Я набаловался, этой хренью, с 18 года слоенка для меня ругательство. )

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Гм, ну в проекте же это не одна папка, наверное, н...

У меня нет проектов где тыща моделей бд в одном слое DAL 😀 Если это монолит то он все равно как то разбит на проекты где один слой веба просто ссылается на кучу BLL, которые в свою очередь ссылаются на DAL'ы Не ddd ли это? Вряд-ли

Николай Симонов
У меня нет проектов где тыща моделей бд в одном сл...

Никакой разбивки по проектам, достаточно разбивки по папкам, отдельно выделена папка Data, в которой по папкам разложены сучности, а остальное в паке futures, где по папкам вертикально порезан основной функционал, там рядышком лежат сервисы, контроллеры и модели. Отдельно еще есть папка сервицес, где лежат общие инфраструктурные сервисы, всякие парсеры, протоколы и прочая техническая муть. Ну и утилс конечно, как без них.

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Никакой разбивки по проектам, достаточно разбивки ...

Понятно, ну это действительно проще в поддержке, но допустим читал кейсы Тинькова, где если бы так они все делали то не смогли бы разбить функционал так просто на две версии api, у них вариант с детским апи и взрослым апи, тоже самое с приложухами под ios Android А так все разбито по проектам и подключается только туда куда надо Приходит Джун на проект и юзает твой дбконтекст в контроллере, ибо все лежит в одном проекте А лежало бы в разных и именовалось по слоям, может он хоть задумался бы? 😀 Типы что помечены интернал могут быть использованы везде, ну крч инкапсуляция сильно ограничевается как по мне

Николай Симонов
Понятно, ну это действительно проще в поддержке, н...

Прекрасно разбиваем, у нас например несколько апи, для spa одно, для мобилок другое, для внешки третье.

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

В итоге в развернутом варианте на серваке будут dll ки содержащие типы, которые в этой версии api не юзаются?

Николай Симонов
Понятно, ну это действительно проще в поддержке, н...

Приходит Джун на проект и юзает твой дбконтекст в контроллере, ибо все лежит в одном проекте А лежало бы в разных и именовалось по слоям, может он хоть задумался бы? 😀> Наоборот стало проще с джунами, они лучше понимают что куда, а зависимостях слоев вечно путались что куда пихать, проходили жесть была )

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Приходит Джун на проект и юзает твой дбконтекст в ...

Но это все равно слои только по папкам, ты далеко же не ушел, хех)

Николай Симонов
Понятно, ну это действительно проще в поддержке, н...

Приходит Джун на проект и юзает твой дбконтекст в контроллере, ибо все лежит в одном проекте => Так мы юзаем дб контекст в контроллерах, мне вообще не понятна истерия по поводу того что ай ай ай, в контроллере дб контекст обнаружен, все кабздец. Ничего страшного в этом как бы нет, выделять тот же сервис для тех же крудов и начинать автомапить все подряд, это гораздо хуже на мой взгляд, от того что этот код из контроллера вынесли мало что поменялось, а как я и писал выше если почесалось переиспользовать то вынести в отдельный класс дело 5 минут, а до того пусть там и лежит.

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Ога они родимые ))

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

Можно просто не боятся изменений ) А когда лишнего не наворачиваешь изменять сильно проще, мы например при существенном изменении требований бывает что всю папку с функцинальностью нафиг сносим и просто заново пишем )

Николай-Симонов Автор вопроса
Дмитрий Алексеев
Можно просто не боятся изменений ) А когда лишнего...

У меня галера где проекты делятся на маленькие команды, я например на своих тупо один, причем ещё и фуллстачу Поэтому не могу просто снести и заново написать 😀, мне скажут что я охренел столько времени тратить)

Николай Симонов
У меня галера где проекты делятся на маленькие ком...

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

субд

Phantom
База

Та-та-да-та-там )

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

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

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Oh sorry did you want it in Gunter's chains?
Martin Rys
15
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта