Слоистая архитектура. Луковая (onion) архитектура. Слои, изоляция, DI, solid

Ғылым және технология

В этом ролике мы рассмотрим одну из самых популярных архитектур ПО. Многослойная\слоистая\луковая архитектура. Рассмотрим на примере. Поговорим про Dependency inversion и dependency injection
Курс "Продвинутый Frontend. в Production на React" - ulbitv.ru/frontend
Плейлист с роликами по архитектуре - • Архитектура ПО
Поддержать меня и мой канал вы можете по ссылкам ниже.
Patreon/boosty (доступ к бонусам) - boosty.to/ulbitv
Qiwi кошелек - qiwi.com/n/BODYE821
Яндекс деньги - yoomoney.ru/to/4100116193037469

Пікірлер: 157

  • @palkan2590
    @palkan259010 ай бұрын

    "Великаны не так просты, как кажется, великаны - они как лук. Многослойные!" (с) Шрек

  • @user-me6vb7gw9c

    @user-me6vb7gw9c

    10 ай бұрын

    зашёл ради этого коммента

  • @arturhimself

    @arturhimself

    10 ай бұрын

    «Ты запутался в своих слоях, лучок» 😂

  • @palkan2590

    @palkan2590

    10 ай бұрын

    @@arturhimself я ждал тебя

  • @alexpavlenko4719

    @alexpavlenko4719

    10 ай бұрын

    Воняют. Доводят до слёз.

  • @BestDron

    @BestDron

    10 ай бұрын

    Все обьесняют это архитектуру очень сложно. Я понимаю её так. 1: Есть слой Core- в нём есть слой Domen и Application 2: в слой application адаптеры для внешних сервисов бд. и ui и ТД. В нём же находиться бизнес логика приложения он зависит только от слоя Domen. 3: Domen слой самый независимый он не чего незнает о других слоях. Вся связь между предметной областью и другими частями приложения в слои Application он знает о бо всех слоях, но лучше через интерфейсы. Главный принцип слой домена независимый.

  • @user-zk3bc1lf8k
    @user-zk3bc1lf8k10 ай бұрын

    Ура! Мы ждали. С возвращением🎉 Спасибо за труды!

  • @falsetrue7910
    @falsetrue791010 ай бұрын

    Ждал продолжения серии видео по архитектуре, очень полезно! Спасибо Жду чистую архитектуру, гексоганальную, реактивную

  • @yuriuss
    @yuriuss3 ай бұрын

    Смотрю 3й ролик, ты умеешь хорошо, чётко, без воды всё объяснить. Спасибо за работу!

  • @user-if5bk7ee5q
    @user-if5bk7ee5q9 ай бұрын

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

  • @user-ys9po4bp8o
    @user-ys9po4bp8o10 ай бұрын

    Тимур, спасибо за ролик, как раз во время. Качество контента и обновленный визуал радует!

  • @user-up2oj4tv8f
    @user-up2oj4tv8f10 ай бұрын

    Кстати отличное объяснение инверсии зависимостей и внедрения зависимостей. Почти в любой литературе примеры настолько абстрактные что пока на практике не столкнешься не поймешь. Спасибо за видео! Просто лучший!

  • @natalyaiv3414
    @natalyaiv341410 ай бұрын

    Спасибо! ❤👍 Поздравляю с защитой!

  • @gansgarnett4516
    @gansgarnett45169 ай бұрын

    Лучший! Учу C++ но периодически смотрю твой канал для расширения кругозора, ведь те вещи о которых ты говоришь также хорошо ложатся и на другие ЯПшки. Обнял, поднял)

  • @anpoliakov
    @anpoliakov7 ай бұрын

    Классно визуализируешь подачу, объясняешь, спасибо!

  • @user-hv8kp2oh6f
    @user-hv8kp2oh6f8 ай бұрын

    Все четко и доступно! Спасибо!😊

  • @bobbybob628
    @bobbybob62810 ай бұрын

    сначала лайк не глядя, потом смотрим спасибо, Тимур) пошел смотреть

  • @maksimkraev2237
    @maksimkraev223710 ай бұрын

    Спасибо большое! Как всегда, очень понятное объяснение))

  • @armenchik_dzhan
    @armenchik_dzhan10 ай бұрын

    @UlbiTV Отличный ролик, очень хорошо описал суть DI и то, как изолироваться от базы данных и прочей инфраструктуры 👍. Единственное отмечу один анти-паттерн, который ты используешь. Это анемичная доменная модель. По-хорошему в больших сложных проектах Логику нужно не просто класть в service. А распределять между 3-мя объектами: service, entity, value object. И, как правило, чем правее, тем лучше. Потому что если всё писать в сервисе, один метод может разрастись на 100 строк и вместо читаемой бизнес логики ты получишь так называемые transaction scripts. Transaction scripts и анемичные модели могут нормально работать в простых кейсах, без большого количества логики. Но если у вас большой сложный домен, это становиться гораздо труднее читать, поддерживать, понимать и т.д. Доменная модель - это не описание данных, это в первую очередь описание поведения тех или иных сущностей, а данные второстепенные и по возможности инкапсулируются, а объекты этой доменной модели являются не "глупыми", а "умными", они содержат методы и value object-ы которые тоже содержат свои методы. Для саморазвития в этом направлении рекомендую книжку: Implementing Domain-Driven Design А также статьи: fowler: - martinfowler.com/bliki/AnemicDomainModel.html - martinfowler.com/bliki/ValueObject.html enterprise craftsmanship: - enterprisecraftsmanship.com/posts/domain-vs-application-services/ - enterprisecraftsmanship.com/posts/nesting-value-object-inside-entity/ - И много других интересный статей - enterprisecraftsmanship.com/posts Не для того, наверное, ООП было придумано, чтобы императивно писать всю логику в сервисах =)))

  • @AmirLatypov

    @AmirLatypov

    3 ай бұрын

    И тем не менее, от ООП продолжаем уходить ;). Чтобы был не один большой сервис, можно сделать несколько. Передавать «глупые» структуры данных намного легче и надежнее, чем умные модели. Во всяком случае долгосрочно. Поэтому Unix way подход - функция принимает на вход данные, а не классы со своим внутренним миром.

  • @valbv
    @valbv10 ай бұрын

    Спасибо за ролик! Во время просмотра была мысль, что визуал очень приятный. Донесение сути информации без воды тоже радует "Чистой архитектура" Роберта Мартина - замечательная книга

  • @user-sy1wv7yl4n
    @user-sy1wv7yl4n8 ай бұрын

    Очень круто! Спасибо большое за видео!

  • @krimax0
    @krimax010 ай бұрын

    Спасибо большое за разжеванный контент! Я закрыл практически все свои пробелы в знаниях backend. Очень редко пишу комментарии, но хотел тебя под бодрить тебя своим комментарием. Я очень расстроен что подобные ролики получают мало просмотров. Удачи!

  • @user-wd7ql4gb6l
    @user-wd7ql4gb6l10 ай бұрын

    Все по полочкам, супер!🎉 Спасибо

  • @1caccount756
    @1caccount75610 ай бұрын

    Все четко и по делу. Спасибо!!!

  • @vakhr
    @vakhr10 ай бұрын

    Круто, спасибо большое. Очень детально и интересно

  • @some_body_qtyeeuy
    @some_body_qtyeeuy10 ай бұрын

    Супер! Очень полезный ролик! Спасибо

  • @user-ue7lj2to9q
    @user-ue7lj2to9q10 ай бұрын

    Привет. С возвращением. С защитой диплома. 🎉

  • @shittywizzard5727
    @shittywizzard572710 ай бұрын

    Отличный видос, ждем новых. Обнял-приподнял :D

  • @artyomsultanov5204
    @artyomsultanov520410 ай бұрын

    Тимур, большое спасибо! Отлично объяснил!

  • @MarkA12
    @MarkA1210 ай бұрын

    С такой структурой как начал работать, сразу стал кайфовать

  • @nik_markio
    @nik_markio10 ай бұрын

    Крутой видос, большое спасибо)

  • @magister-iy7rq
    @magister-iy7rq10 ай бұрын

    было бы прекрасно посмотреть реализацию на разных архитектурах, т.е. не маленькие условные примерчики, а конкретную реализацию

  • @user-ru6qv3vp6p

    @user-ru6qv3vp6p

    10 ай бұрын

    есть в курсе у улбика

  • @user-go4bj1wi8k
    @user-go4bj1wi8k9 ай бұрын

    Большое спасибо за контент, очень грамотно объясняешь! Смотрел твои видео по vue, очень сильно помогли, особенно трехчасовое Очень бы хотел еще один урок с vue 3, nuxt и typescript Думаю зайдет шикарно

  • @ValentinProtasevich
    @ValentinProtasevich10 ай бұрын

    Огромное спасибо, очень полезное видео)

  • @irinafadeeva1387
    @irinafadeeva1387Ай бұрын

    Спасибо за ролик! Все четко и понятно объяснили)

  • @meteysh
    @meteyshАй бұрын

    Очень круто! 🎉

  • @Sergey.Aleksandrovich.P-37rus
    @Sergey.Aleksandrovich.P-37rus9 ай бұрын

    Просмотрел до конца...подписался,+лайк

  • @haykyolyan2511
    @haykyolyan251110 ай бұрын

    Спасибо автору, комментарий в поддержку

  • @bimal163
    @bimal16310 ай бұрын

    Ты вернулся !!!)

  • @extense1337
    @extense133710 ай бұрын

    Отличный видос, молодец, круто вышло

  • @user-kh3vy6id3h
    @user-kh3vy6id3h9 ай бұрын

    Спасибо большое за контент!

  • @ilyapro2815
    @ilyapro281510 ай бұрын

    Тимур, спасибо за такой хороший ролик! И, особенно, за примеры и пояснения. Этот ролик я бы рекомендовал сразу после ознакомления c SOLID принципами, чтобы S и D закрепить.

  • @user-dw5gp1ou1y
    @user-dw5gp1ou1y10 ай бұрын

    Братан, поздравляю с защитой диплома, спасибо за контент, ты топ

  • @helenit4365

    @helenit4365

    10 ай бұрын

    Тима, с защитой диплома магистратуры МГУ и получением премии "Прорыв года" в айти!!!!!

  • @adelinaromanova8353

    @adelinaromanova8353

    10 ай бұрын

    Ого!!! Поздравляю!!!

  • @ded-insult
    @ded-insult10 ай бұрын

    Братан, хорош, давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?

  • @user-dw8lb8lc7u
    @user-dw8lb8lc7u10 ай бұрын

    очень крутой видос СПАСИБО!

  • @alpenapple
    @alpenapple10 ай бұрын

    Спасибо тебе!

  • @ivank.5319
    @ivank.531910 ай бұрын

    Спасибо, как бы это все ещё понять и собрать.

  • @eldiiarsaparbekov5397
    @eldiiarsaparbekov539710 ай бұрын

    Как всегда огонь🤯🤯

  • @eunicsi
    @eunicsiАй бұрын

    Спасибо за видос!

  • @kennyotsu4357
    @kennyotsu435710 ай бұрын

    Плюсы: звучит вкусно Минусы: хочется плакоть….

  • @user-lu7mm8bw1m

    @user-lu7mm8bw1m

    10 ай бұрын

    на самом деле на практике это в разы легче понять )

  • @yundon8182

    @yundon8182

    9 ай бұрын

    Просто Тимур любит утрировать и пугать своим тоном голоса, перечисляя много всякого

  • @xyzw777

    @xyzw777

    11 күн бұрын

    11:55 неа😅, в реальности бизнес модель меняется каждый день, а вот инструментарий почти константа

  • @user-ku3bx8we1c
    @user-ku3bx8we1c10 ай бұрын

    Очень полезно, спасибо!

  • @user-ky8dr1hu5e
    @user-ky8dr1hu5e10 ай бұрын

    Приятное видео!

  • @AntonyMadaliev
    @AntonyMadaliev10 ай бұрын

    спасибо за контент!

  • @iforcewmaster3049
    @iforcewmaster304910 ай бұрын

    Очень круто и по-взрослому выглядит эта архитектура. Хотелось бы видос, типа "создание приложения с 0" на её основе

  • @vtsel-lp4jv
    @vtsel-lp4jv10 ай бұрын

    Слоистая архитектура. Луковая (onion) архитектура. Слои, изоляция, DI, solid, спасибо!

  • @vitjaz_7591
    @vitjaz_759110 ай бұрын

    написанное в видео очень сильно напоминает нест. очень годное видео, спасибо за объяснения!

  • @IlyaKuznetsov1983
    @IlyaKuznetsov198310 ай бұрын

    Молоток!

  • @pc_boyarin1712
    @pc_boyarin171210 ай бұрын

    топовый контент)

  • @user-wg2lq7qz7m
    @user-wg2lq7qz7m10 ай бұрын

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

  • @devKenny
    @devKenny4 ай бұрын

    Красавчик вообще

  • @adammason482
    @adammason4828 ай бұрын

    спасибо!

  • @Vedar.
    @Vedar.10 ай бұрын

    🔥🔥🔥

  • @cheshiressmile1404
    @cheshiressmile140410 ай бұрын

    интересно, но не хватает ещё большей конткретики. Было бы круто небольшое приложение запилить по всем традициям луковой архитектуры

  • @fgood574
    @fgood57410 ай бұрын

    Автор супер объясняешь, но ещё будет плюсом если видео будут заточены под телефон) иногда с телефона смотрю, и надписи плохо видно. Вот как пример ютуберы Владилен итд даже через телефон их удобно смотреть, не знаю как они настроили, но думаю можешь взять на заметку)

  • @assetdev1859
    @assetdev185910 ай бұрын

    лучший тимур!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • @Akonitx
    @Akonitx10 ай бұрын

    Очень круто описал. Было бы круто видос, прям фулл гайд, как структурировать папки/файлы в проекте и главное как правильно их наименовать. Либо скинь пж, где можно об этом подробнее почитать.

  • @dianadvoryak
    @dianadvoryak10 ай бұрын

    круто !

  • @darkside2436
    @darkside243610 ай бұрын

    Монтаж огонь 🔥

  • @user-lg1tj8ty9o
    @user-lg1tj8ty9o10 ай бұрын

    Раскрыл луковицу по слоям КРУТО)

  • @rayrayray4653
    @rayrayray46535 ай бұрын

    крутяк!!!!!!

  • @vtsel-lp4jv
    @vtsel-lp4jv10 ай бұрын

    Очень хотелось бы подробный(как всегда) ролик по FSD🙌

  • @ilyapro2815

    @ilyapro2815

    10 ай бұрын

    про FSD рассказывалось в рамках другого видео из этого же плейлиста.

  • @seryozhamangushev9638
    @seryozhamangushev963810 ай бұрын

    Давно ждал, но ты не делал. Пришлось покупать лекцию по ней. Очень крутая тема. Однако в одном видео о ней сложно рассказать, там много подводных камней и кстати первая слойка, Dto называют. Затем уже идёт Сущность например модель пользователя, только потом контроллер и репозиторий. Короче это довольно тяжёлая часть архитектуры и в одном видео показать сложно, но у тебя получилось хотя бы похожее что - то.

  • @HEX_CAT
    @HEX_CAT10 ай бұрын

    ❤❤❤

  • @holfizz7868
    @holfizz786810 ай бұрын

    ура❤

  • @moranyt8299
    @moranyt8299Ай бұрын

    Так, походу я понял, надеюсь меня теперь возьмут на джуна с такими знаниями =)

  • @igor_cojocaru
    @igor_cojocaru10 ай бұрын

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

  • @user-lw3lc8yv4d
    @user-lw3lc8yv4d10 ай бұрын

    Хотелось бы увидеть пример такой слоистости на Реакт или Вью

  • @ell1ar

    @ell1ar

    10 ай бұрын

    Луковая архитектура под бэкенд. Под фронтенд всякие FSD, модульные простые архитектуры

  • @ya_araik
    @ya_araik9 ай бұрын

    Был бы очень благодарен за объяснение от тебя технологии grpc

  • @SeydametBilyalov
    @SeydametBilyalov10 ай бұрын

    Спасибо за видео. Но есть ли пример, пусть и не большого, но рабочего проекта с использованием такого подхода? Google много выдает такого. Но хотелось бы услышать от тебя: «вот репозиторий на GitHub с проектом в котором хорошо показано принципы и подходы о которых я говорил»

  • @user-mo1su1zq3h
    @user-mo1su1zq3h10 ай бұрын

    Привет! Тимур! В каком редакторе делаешь такие видео? PS: В старых видео мелковат шрифт бывает, в этом показался крупноват.

  • @gizmolo4
    @gizmolo410 ай бұрын

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

  • @brearey
    @brearey10 ай бұрын

    Спасибо. Вопрос: можно ли без type script на java script имплементировать такую архитектуру?

  • @tetraf0ur

    @tetraf0ur

    10 ай бұрын

    да

  • @dima__rx5fw3rm1n
    @dima__rx5fw3rm1n6 ай бұрын

    Я смотрел курс архитектуры на джаве, у них там какой-то персистенс слой часто фигурирует. Что бы он мог делать?

  • @user-ux4le1tf3y
    @user-ux4le1tf3y10 ай бұрын

    Извини меня за вопрос не по теме, но какую версию вебшторма ты используешь? Тк на последней версии 2022 и 2023.1 при работе с MUI дико фризит

  • @kronohcr2436
    @kronohcr24369 ай бұрын

    С чего начать изучать программирование: с PHP или c++/c#?

  • @ShaidarHaran87
    @ShaidarHaran8710 ай бұрын

    Топ контент

  • @gabblz480
    @gabblz48010 ай бұрын

    Примерно архитектура Angular, как я понял

  • @gingun95
    @gingun9514 күн бұрын

    Для новичков в жтой теме ок видео. Но если копать глубже, то стоило хотя бы поговоить про use case на слое сервисов и анемичные модели и их проблемы на слое домена. Слой сервисов тоже описан не оч хорошо как и слой домена. Опять таки обычно слоистая арзитектура за ручку с ддд идёт в паре, а это тоде тема нн простая. Крч как по сне наверное стоило сделать серию роликов, которая почтепенно углублялась бы, ечли всё-таки стремиться к более полной картине. Если такого стремоения у автора нет, то и так как есиь сойдёт.

  • @kades7
    @kades77 ай бұрын

    Лучшая архитектура серверного приложения, как по мне - это EDA (Event Driven Architecture), то есть основанная на событиях. Потому что сервер лучше всего работает в асинхронном событийном режиме, в режиме реагирования на события. И особенно хорошо, если построено всё по DDD.

  • @xyzw777

    @xyzw777

    11 күн бұрын

    в банке нужно было перегнать кучу объектов, посчитали миллион шт/час через асинхронное апи, миллиард шт/час из одной бд в другую... как думаете что руководство банка подумало о EDA\DDD и т.п. в этот момент ;)

  • @kades7

    @kades7

    11 күн бұрын

    @@xyzw777 пф, а где вы видели приложение, которое напрямую гоняет данные между БД? Сравнение вообще не корректное.

  • @xyzw777

    @xyzw777

    10 күн бұрын

    @@kades7 erp\pdm и т.п. гонять данные между бд это etl, а обмен между разнородными источниками свойство нормальной бд

  • @kades7

    @kades7

    10 күн бұрын

    ​@@xyzw777 для всего свои инструменты. Без EDA/DDD вы не сделаете нормальную распределённую систему, у вас всегда будет монолит со всеми его недостатки в сложной системе (спагетти, связность). А такая вещь как перегонка данных между базами - это не относится к общей архитектуре приложения, это может быть всего лишь частью сложной системы, которая построена по EDA, но внутри каждого модуля, конечно же, монолит. EDA - это клей между независимыми монолитными модулями. Без него у вас будет монолит из монолитов. А с ним у вас распределённая система, состоящая из монолитных модулей.

  • @xyzw777

    @xyzw777

    10 күн бұрын

    @@kades7 производительная система всегда монолит. никто не мешает десяткам бд обмениваться инфой без костылей "внешнего" чужеродного кода, вопрос лишь для чего: горизонтальное масштабирование или отделение своей части от частей другого программиста. например на sql view с тригерами mssql я как-то написал учетную систему у которой не было ни одной строки "внешнего" кода, т.к. клиент был ms access где формочки сделаны мышью... как видите ни то что луковой архитектуры не понадобилось но и вообще фронт\ui разработчиков как таковых. _"спагетти, связность"_ вряд-ли вы про goto, только вы знаете что имели в виду

  • @yashkevich8164
    @yashkevich81647 күн бұрын

    Очень хорошее видео, автор крут овсе объясняет. Я только не понял зачем перегонять ответ из БД в другую ДТО в Кор слой? Если мы используем ОРМ мы и так оттуда достанем полноценную Энтити. И еще вопрос. Вот как говорит автор мы делаем несколько интерфейсов Репозиториев и имплементим их в сервисы, что бы потом можно было лекго подменить реализацию, будь то из файла или из БД. А вот если нам надо будет Юзера достать с другого Апи например, как это правильно сделать?? Предположу что делаем некий Провайдер интерфейс и инжектим его в новый Репозиторий ??? и уже на сонове этого провайдера реализуем методы репозитория??? А если в дальнейшем будет несколько версий Апи, то нам уже придется делать провайдер интерфейс и на его основе реализовывать разные провайдеры и инжектить их в репозитории???

  • @norskiy9765
    @norskiy976510 ай бұрын

    Здравствуйте! Какие курсы по javascript с нуля посоветуете на ютубе?

  • @seryozhamangushev9638
    @seryozhamangushev963810 ай бұрын

    Ulbi TV Привет, у меня идея. Смотри, есть понимание, что js - это однопоточный язык, а как на счет того что бы записать видео о том, как можно имулировать многопоточность используя микротаски. Мне кажется, это интересный сюжет для видео. Подобного контента в интернете кажется нет, а статьи написаны на эту тему поверхностно. Будет круто если ты сможешь объяснить на практике такую задачу. Вообще многопоточность на js, это и в прям немного не обычно как я считаю. Что думаешь?

  • @Andrey_Ks11
    @Andrey_Ks114 ай бұрын

    Немного запутался. Правильно ли я рассуждаю. Получается что в domain model мы создаем интерфейсы моделей. В repository пишем интерфейсы для бизнес логики. А в services мы реализуем эту логику. А на слое infrastructure мы уже используем наши сервисы? Или же реализуем новый функционал, например связь с бд, на основе тех интерфейсов, что находятся в ядре. Верно рассуждаю?

  • @gooseman5578
    @gooseman55784 ай бұрын

    8:22 как создание/удаление чего-либо в системе может НЕ зависеть от БД? и КАК взаимодействие с БД может быть там же, где UI/API/Обработчики/Контроллеры ??

  • @i_ve_given_up
    @i_ve_given_up10 ай бұрын

    Интересно узнать мнение: важно ли согласовывать архитектуру бэкенда и фронтенда? Есть ли какие-то более удачные варианты использования архитектур фронта и бэка, которые дают приемущество? Например, слоистая на бэке + микрофронтенд = ...

  • @Fartek2

    @Fartek2

    10 ай бұрын

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

  • @BestDron

    @BestDron

    10 ай бұрын

    Swager в помощь, и все проблемы решаются. Архитектура Бека зависит от безнес задачи. Иногда нахер не нужны все эти архитектуры и люди натягивают сову на глобус.

  • @andrewskripko2311
    @andrewskripko231110 ай бұрын

    Неплохое видео, но. 1) то что вы называете слоями - я бы назвал функциональным назначением. Ибо получается что 3 "внутренних слоя" и создают ядро домена. А если модель у вас лежит ниже всех - то она не может не от кого зависеть и получится как минимум анемичной (что не всегда удобно, но надёжнее). Обычно выделяют Data (откуда и куда данные берутся) / Domain (бл) / View(как это попадёт в глаза юзеру - форматирование, локаль и тд) layer. (можно ещё выделить application / render layer) 2) архитектура = правила устройства системы. А отражаться они могут в названиях файлов, папок, классов, методов и тд. Так и в том, кто от кого может зависеть, а кто нет. Ну и какой код в какой функциональный файл (модель, контроллер, кейс и тд) ложить. 3) я бы сказал что универсальные архитектуры существуют. Только для большинства проектов это будет оверинжиниринг. 4) лучше, как по мне, разбивать папки так = слой > сущность > функционал. Из сущностей можно делать удобные модули для DI. 5) не хватает упомянания DDD как связующего всех этих архитектурных стилей и подходов

  • @hhullen
    @hhullen2 ай бұрын

    Можно не обьяснить один момент пожалуйста. В контроллере создается DTO объект и передается там в сервис, например, чтобы записать в БД. Там, для записи в БД, эти данные конвертируются в другие структуры из db/entities. Так вот, для чего тогда вообще структуры из core/entities?

  • @fan-it
    @fan-it10 ай бұрын

    Сколько разработчиков и какого уровня нужно закладывать бизнесу? Если бизнес поведется на сею луковицу рассуждений

  • @user-tk4lp2su1u
    @user-tk4lp2su1u10 ай бұрын

    А можно ли в других сервисах использовать другие, и например использовать один сервис и там и там?

  • @gevorgmovsisyan5153

    @gevorgmovsisyan5153

    10 ай бұрын

    Да, вес смысл в этом

  • @markeeff3406
    @markeeff340610 ай бұрын

    Есть источники с тематичечкой литературой для новичков?

  • @kozii-d
    @kozii-d10 ай бұрын

    Вопрос касаемный DTO. Если мы пишем приложение на TS, то зачем эти DTO определены ввиде классов? Разве мы не можешь для описание этих данных использовать те же интерфейсы?

  • @vitya.obolonsky
    @vitya.obolonsky10 ай бұрын

    Like

  • @Ivan-qp8yd
    @Ivan-qp8yd10 ай бұрын

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

  • @gizmolo4

    @gizmolo4

    10 ай бұрын

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

  • @user-vx3yc9lc7u
    @user-vx3yc9lc7u2 ай бұрын

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

  • @KGB1st
    @KGB1st2 ай бұрын

    Боже! Свершилось братцы. На примере фронта мы узнаем как работают технологии бека))

Келесі