Монолитность на уровне приложения и кода

Поделиться
HTML-код
  • Опубликовано: 2 окт 2024
  • #soer #itubeteam
    Основной канал для общения и публикации новых видео - Телегарм - t.me/softwaree...
    Спонсорство - donate.s0er.ru
    Сайт платным контентом - soer.pro
    Зеркало для видео Дзен Видео - zen.yandex.ru/...
    GitHub - github.com/soe...
    Чат для программистов - / discord
    Группа ВК - codeart...

Комментарии • 38

  • @oeaoo
    @oeaoo 5 лет назад +31

    Монолит - это архитектура которую ты выбираешь, разобравшись как следует с микросервисной.

  • @themanfromiz
    @themanfromiz 5 лет назад +16

    Asmr подкаст про программирование

    • @themanfromiz
      @themanfromiz 3 года назад

      @Психолог Лариса Бандура здравствуйте, к сожалению нет свободного времени

  • @MsXruki
    @MsXruki 5 лет назад +8

    Посмотрел ваше видео Программирование с полного нуля и задумался, а может я в свои 45 могу научиться?)..главное видео жизнеутверждающее)

  • @chelovak
    @chelovak 9 месяцев назад +1

    Соер, можешь снять про DDD? С практической точки зрения что-то ничего внятного не могу найти уже какой год. В основном беседы про какой-то бизнес, и бизнес сущности, создается впечатления что авторы сами не понимаю что такое этот DDD...

  • @BASic_37
    @BASic_37 5 лет назад +3

    Такие видео, мне кажется будут намного понятней и интересней с конкретными примерами, например в uml

  • @juliusmalkov9620
    @juliusmalkov9620 5 лет назад +9

    3к лайков?! это же не видео про котят!!!

  • @andrzejsotnikow7494
    @andrzejsotnikow7494 Год назад

    Спасибо, лучше начал понимать что такое монолиты

  • @Cindorqw
    @Cindorqw 3 года назад

    так и не набралось 3к лайков(

  • @wayydev
    @wayydev 5 лет назад +2

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

  • @ruslankrivoshein2893
    @ruslankrivoshein2893 4 года назад +1

    Как тебе идея читать что-нибудь типа "Чистая архитектура" и разжёвывать сложные моменты?

  • @SerhiiZhydel
    @SerhiiZhydel 5 лет назад +4

    Хороший видос, но короткий( было бы круто чтоб была целая лекция на эту тему, с диаграммами связей между компонентами, чтоб было видно наглядно какая связанность - хорошая, а какая плохая. Видео информативное но, из-за того что короткое, одна мысль меняется другой, не успевая отложиться в голове. Буду смотреть пару раз, перематывая и обдумывая)

    • @Lokamp_
      @Lokamp_ 5 лет назад +3

      Ох, батенька, много хотите...
      Я уверен, что за отдельную плату гражданин Soer подготовит для вас лекцию.

    • @SerhiiZhydel
      @SerhiiZhydel 5 лет назад

      KJ Ich да, согласен, наверно я сильно избалован своим универом)

  • @ericraudy
    @ericraudy 5 лет назад +5

    чтобы не тянуть зависимости-используйте чистые функции

    • @fnShun
      @fnShun 5 лет назад

      + тестирование облегчится

    • @antongromov8093
      @antongromov8093 5 лет назад

      При условии, что есть время этим заниматься

    • @Svinogalya
      @Svinogalya 5 лет назад +4

      А чем их чистить?

    • @ericraudy
      @ericraudy 5 лет назад

      @@Svinogalya pure function, ты, как часть гугла, должен знать где искать инфу)))

    • @rip86oz
      @rip86oz 4 года назад +2

      Angular Чистить нужно вилкой

  • @BASic_37
    @BASic_37 5 лет назад +2

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

    • @S0ERDEVS
      @S0ERDEVS  5 лет назад

      А что вы имеет в виду под "заменить БД"? Если вы про структуру БД, то замена БД повлечет изменение всех остальных слоев.

    • @BASic_37
      @BASic_37 5 лет назад +1

      @@S0ERDEVS имел ввиду заменить производителя, да хоть и вообще перейти на хранение в файлах. Да и замена структуры не обязательно должна повлечь изменение даже бизнес объектов, если проектирование ведётся на основе бизнес модели, а не на основе бд. При соответствующей архитектуре изменению может подвергнуться только слой отвечающий за работу с этой самой бд. (Data Mapper)

    • @S0ERDEVS
      @S0ERDEVS  5 лет назад

      ​@@BASic_37 все смешалось в доме Облонских - кони, люди...
      1. В видео речь идет о уровне приложения, здесь стандартная трехзвенка - это интерфейс, логика, доступ к данным. Эти три уровня завязаны друг на друга и находятся в одном модуле развертывания. Т.е. к ним не применима горизантальное масштабирование (если нужно масштабировать, это уже message based архитектуры).
      2. Если мы говорим про СУБД, то речь идет о солюшн архитектуре, где учитывается инфраструктурный уровень (там тоже бывают трехслойки) и здесь уже и про тонкий/толстый клиент, про вендора СУБД, про шардинг базы данных и т.д. Это не уровень приложения.
      3. Если речь идет про DataMapper то это уже внутрянняя организации уровня "доступ к данным", и обычно это уже уровень кода. Здесь тоже есть свои проблемы.
      Вы в одну кучу свалили разные уровни архитектуры, что лешает обсуждение какого-либо смысла. Если Вы хотите сказать, что при монолитной организации на уровне приложения, можно сами уровни делать модульными на уровне кода, то да - это так. Если вы хотите сказать, что мы можем на уровня приложения легко переносить/разносить/масштабировать/изменять связи между слоями - то нет.
      Если речь о том, что мы можем менять одни однотипные компоненты на другие однотипные компоненты, то такая гибкость есть даже на уровне спагетти кода. А для развития на уровне приложения нужна гибкость, связанные с расширением функциональности/нагрузки. Устойчивость к изменениям в большинстве случаев делается на уровне кода, а не на уровне приложения.

  • @ravenfort5906
    @ravenfort5906 5 лет назад +1

    Soer, юзай iZotope RX5 или 6 для шумоподавления, он на самых хардовых настройках очень деликатно срезает шум, и не превращает звук в АСМР. Еще такое чувство, будто юзаешь дефолтную нормализацию в какой-то daw, лучше потратить пол часа и разобраться как "руками" подстроить эквалайзер и компрессор, этого с головой хватит для хорошего звука.
    Хотелось бы увидеть какой-то видос про устройство OLAP баз/big data processing если шаришь в этом.

  • @van777ok3
    @van777ok3 5 лет назад +1

    Интересно продолжение) Лайк поставил

  • @sergbanderovetc3091
    @sergbanderovetc3091 3 года назад

    Абстракция - это здорово. Она помогает найти ключ к решению проблемы или определённой задачи. Но я думаю, что пазл не является монолитом, а является набором модулей или блоков.
    Так что при всем великолепии абстракции, её ещё нужно научится правильно привязывать к решению поставленной задаче или же наоборот, поставленную задачу привести к абстракции и найти ключ её решения.
    А монолитность - это неделимость.
    Но все же спасибо за твою работу помогающую не застаиваться на месте.

  • @forgiveness_denied
    @forgiveness_denied 5 лет назад +1

    а почему сразу не писать «модульную»?? чтобы не потом «монолит» не переписывать?

    • @socolovalexandr
      @socolovalexandr 5 лет назад

      Ну, тут уже кто на что горазд :)

    • @dvmavgoor
      @dvmavgoor 5 лет назад +1

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

  • @sergbo3114
    @sergbo3114 4 года назад

    Странно. Недооценили тему зрители. А тема важная.

  • @ravenfort5906
    @ravenfort5906 5 лет назад

    Классные блублокеры) Помогают?)

  • @4142-h4d
    @4142-h4d 5 лет назад

    Можно аналогию? код делится на сегменты, если сегмент является неделимым то его править возможно...
    изменять и манипулировать все зависит от построения идеи.
    Я в програмировании нуб... я сделал максимум кнопку эксит в конструкторе.
    Но если в языке програмирования есть проблема с неделимым кодом и вмешательством в него это говорит о том что програмисты топором пытаются сделать яйцо Фаберже... это тупо
    Как когдато сказал Бил гейт.. винда стабильно и работает на ура.. проблема в дополнительном ПО которое ставят юзвери. также с кодом. Есть идеальный код.. а есть монолит.
    И да .. пожалуйста... и подавитесь

  • @mnemonicpie
    @mnemonicpie 5 лет назад

    А у меня мозаики были исключительно монолитные

  • @termikilab6136
    @termikilab6136 5 лет назад

    Лайк поставлен))))

  • @chester4869
    @chester4869 5 лет назад

    а как из монолита сделать действительно модульное приложение? решил на своем проекте разделить все по слоям (слой взаимодействующий с БД, слой бизнес логики), но мне кажется так и осталось все манолитом. Первый раз делал такой рефакторинг, и такое ощущение что зря. Смысл был в том, чтоб сделать код более читаемым и масштабируемым.

    • @СерёгаСокольский
      @СерёгаСокольский 5 лет назад

      Используй микросервисную архитектуру и докер контейнеры.

    • @MrChelovek68
      @MrChelovek68 8 месяцев назад

      Фу какая мерзость -докерконтейнеры. Если это не о серверных приложухах. Для десктопа это явнейший оверхед