Лучший UI Framework, структура Solutions, нужные Channels

Поделиться
HTML-код
  • Опубликовано: 20 окт 2024

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

  • @sergeykuzmin753
    @sergeykuzmin753 2 месяца назад

    Интересные размышления на тему структуры солюшена. Мне кажется, автор статьи нам в общем то выбора не дает и подталкивает к использованию вертикал слайсов везде). Но что понимается под фичей?
    На картинке данный подход выглядит очень удобно - в папочке 5 файликов от контроллера до репозитория - и всё. Но судя по описанию и примерам, фича - это как bounded context.
    Вот представим фичу "Заказы". В этой фичей будет очень много действий (добавить товар, оплатить, добавить скидку, просмотреть текущий заказ, просмотреть историю заказов, ...) - и всё это держать в одной папке? Или внутри "Заказов" делить всё на подфичи? Но у нас всё равно появится "шаренный" код, общая бизнес-логика для заказов. Не совсем понятно как в таком случае действовать

  • @denisantropov8872
    @denisantropov8872 5 месяцев назад +2

    Было бы интересно послушать про будущее десктопа на Windows. Я не уверен, что чистый MAUI можно запускать на винде. Остается только WPF, WinForms и WinUI 3. Первые два, насколько я понимаю, майкрософт неохотно поддерживает и уж точно не призывает писать на них. WinUI 3 как-то затерялся в информационном шуме, хотя это же наследие WPF, XAML Islands, UWP, Win UI 2, но он не такой удобный и зрелый как WPF, и последние мои попытки использовать его наводили на мысль, что WinUI несильно дружит с MVVM дизайном.
    Возможно Майки видят будущее в Blazor Everywhere, включая и Windows.

    • @AEF23C20
      @AEF23C20 5 месяцев назад

      чем бы дитя не тешилось, лишь бы не накарячить простейшие 300 строк на сишнячке

  • @bananasba
    @bananasba 4 месяца назад

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

    • @tt0nix
      @tt0nix 4 месяца назад

      Каналы это больше про InMemory история. База и Кафки это уже совсем другой уровень. Просто они слишком низкоуровневые: вычитать сокет, сделать свой MediatR, написать клиент для RabbitMQ, вот для таких инфраструктурных вещей нужны каналы. Конечно подобный код пишется не каждый день. Поэтому каналы и редко нужны обычным разработчикам.

  • @sergeymikolaitis8205
    @sergeymikolaitis8205 4 месяца назад +1

    Все указывает на то, что MS при покупке mono просто пообещали, что не будут убивать xamarin/maui какое-то время. И сейчас выделяют минимум ресурсов на поддержку. Как будто там всего 5 человек и то, на парт-тайме. Ну и в МС, зная, что xamarin/maui скоро сами же убьют, нигде не используют сами.

    • @exAlexey
      @exAlexey 4 месяца назад

      Зачем тогда городить maui? оставили бы xamarin без изменений добавляя только поддержку новых target sdk

    • @tt0nix
      @tt0nix 3 месяца назад

      @@exAlexey Ну может просто попытались. Не получилось.

  • @АндрейГалуза-о5м
    @АндрейГалуза-о5м 5 месяцев назад +1

    Я только как год работаю на MAUI ,но могу сказать что там много проблем в основном утечки памяти и лагающий UI
    там есть такие проблемы с UI которые конкретно не дают пожить (самое бесяче это мерцающая клавиатура ,но это редко)
    в основно это градиенты.
    Я активно слежу что там делает команда разработчиков вот только закончил читать preview.4.10690 ... что нового в maui? - ничего
    зато они выкатили огромные списки исправления ошибок которые сами и наделали ,там и правда есть очень важные проблем которые они решили ,но вот есть и те которые они уже 2 год чинят ,ощущение что на maui забили 50 на 50 просто там столько было ошибок что они весь год их чинили

    • @tt0nix
      @tt0nix 4 месяца назад +1

      И самое скверное, что MS не даёт чётких ориентиров о дальнейшей судьбе MAUI. Всем рассказывает как это хорошо, но хорошие проекты так не разрабатываются, больше похоже что они его закапывают. Как на этом положении дел выбирать его для новых решений, непонятно.

  • @СытуСыкун-н6ж
    @СытуСыкун-н6ж 5 месяцев назад

    На каком фреймворке писать новое десктоп приложение под виндовс, если кроссплатформа не нужна ?

    • @onecelldm
      @onecelldm 5 месяцев назад +1

      WPF

    • @CasanovaMur
      @CasanovaMur 5 месяцев назад

      Не слушай его. Winforms лучший

    • @НатаниэльДампо
      @НатаниэльДампо 5 месяцев назад

      Maui+ blazor. Поверьте сегодня не надо быстро превращается... хочу что бы на планшетах работало). Сейчас на мой взгляд блейзор отправная точка, хоть и сложнее порог входа.

    • @AEF23C20
      @AEF23C20 5 месяцев назад

      gdi

    • @Egorosh
      @Egorosh 5 месяцев назад +1

      Only AvaloniaUI

  • @illson4666
    @illson4666 4 месяца назад +2

    поменяйте тему видео на темную

    • @tt0nix
      @tt0nix 3 месяца назад

      Вы что на неё долго смотрите? Зачем?

  • @ArseniySergeev
    @ArseniySergeev 5 месяцев назад

    Да давайте подробнее про avalonia! что там как сейчас?

    • @tt0nix
      @tt0nix 4 месяца назад

      Стараемся. Но качественного материала совсем нет. Проекту срочно нужен популяризатор :)

    • @ArseniySergeev
      @ArseniySergeev 4 месяца назад

      @@tt0nix а как же mr. kekekeks?

    • @tt0nix
      @tt0nix 4 месяца назад

      @@ArseniySergeev , он прекрасен, но у него такая же проблема, как и у всех прекрасных программистов: у него нет времени на доклады и статьи, ему надо фичи писать.

  • @exAlexey
    @exAlexey 4 месяца назад

    Зачем .NET Channels когда есть ConcurrentQueue и SynchronizedCollection

    • @tt0nix
      @tt0nix 3 месяца назад

      Верхнеуровневый смысл похож. Низкоуровневые принципы разные. Channels более производительный и гибкий. А коллекции более удобные и понятные в использовании.

    • @sergeykuzmin753
      @sergeykuzmin753 2 месяца назад

      В каком-то из докладов было) Для того, чтобы синхронизировать асинхронный код. То есть у вас много async запросов, которые кладут свои результаты в channel, ну и подписчики, которые эту очередь вычитывают. Один из примеров - запрос к шардированной базе - у тебя отправляется N реквестов, а результат сливается в одну коллекцию.

    • @tt0nix
      @tt0nix 2 месяца назад

      @@sergeykuzmin753 , в принципе, это справедливо для любого шаблона проектирования типа producer-consumer. В том числе и для Channels.

  • @MrCommanderKid
    @MrCommanderKid 5 месяцев назад

    Microsoft, же сказала, что самый лучший фрейворк для винды - это, Qt😁😁😁

    • @AEF23C20
      @AEF23C20 5 месяцев назад

      майкрософт чего то там сказало, а дальше пилит своё на плюсиках ахаха! и никаких куть не использует

  • @AEF23C20
    @AEF23C20 5 месяцев назад

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

    • @tt0nix
      @tt0nix 4 месяца назад

      Ну вот вы и объясните. Комментарии для этого и нужны. Только прогоните сначала текст через проверку орфографии, связанности и вменяемости. Ибо алгоритмы могут забанить как бота.

    • @AEF23C20
      @AEF23C20 4 месяца назад

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

    • @tt0nix
      @tt0nix 4 месяца назад +1

      @@AEF23C20 Никто не будет искать логическую суть в тексте, который написан неграмотно (я не только о запятых, но и о структуре, последовательности, выводах, обзывательствах и т.д.). Это тоже самое, что толстый диетолог. Если человек не способен потратить лишние пару секунд, позаботившись о читателе (сделать так чтобы глаза не вытекали глядя на его мысли), то есть большой шанс что и сказать ему полезного нечего. Если не учитывать удобство аудитории, то это уже не дискуссия, а монолог получается. А разводить монолог в публичных комментариях - довольно странная затея.

    • @AEF23C20
      @AEF23C20 4 месяца назад

      утверждение1: gdi+ использовать нельзя, он забагован
      утверждение2: много багов
      утверждение3: выбора нет, потому что выбор один
      утверждение4: один единственный вариант - выбором не является
      утверждение5: gdi+ обмазка над gdi
      утверждение6: gdi+ медленней, чем gdi
      утверждение7: существуют фреймворки над gdi
      утверждение8: существуют фреймворки над gdi+
      вывод1: пользуйте фреймворк над gdi, но не над gdi+
      вывод2: конспектируйте, необходимое и достаточное вам написано
      вывод3: неспособность извлекать утверждения из гор бесполезного мусора - это ваша беда, а не моя
      вывод4: неспособность кратко излагать утверждения - это ваша беда, а не моя
      пс: некая структура - не нужна, она избыточна, смысла не имеет
      ещё вопросы?

    • @tt0nix
      @tt0nix 4 месяца назад

      @@AEF23C20 , отлично, уже какой-то конструктив пошёл.
      Вопросы:
      - приведите пожалуйста примеры GDI и GDI+ фреймворков, или как их распознать, не смотря в исходный код?
      - какое отношение эти утверждения имеют к выпуску? Что именно Радийные парни должны были понять после этих утверждений?

  • @AEF23C20
    @AEF23C20 5 месяцев назад +1

    обоже боже какая ну какая архитектура?
    нет никакой архитектуры, её придумали какие то одичалые бесполезные в начале 2000-ых
    вместо архитектуры существует вменяемое определение из теории информации, оно называется архитектурным дискретным [неделимым] логическим представлением [и реализацией] куска данных
    этот кусок данных внезапно[!] называется __типом__
    смысл архитектуры изобретён давным давно, он называется __типизацией__
    вменяемая архитектура - это вменяемая типизация, и вот тут и встаёт конкретный вопрос - а что это такое?
    что такое __вменяемая__ __типизация__ ?
    короткий ответ:
    вменяемая типизация - это набор вменяемых библиотек типов
    вот и всё) вот и вся архитектура
    вменяемая библиотека типов - это такие типы которые именно программно объединены, они объединены общими зависимостями, причём, кол-во этих зависимостей - максимально, а кол-во внешних зависимостей - минимально и общее для всех типов в пределах библиотеки
    пример вменяемой библиотеки типов:
    это например математическая библиотека типов, там собраны мат.типы, но эти типы не логические, а именно программные, эти типы имеют зависимости, и они объединены именно набором общих программных зависимостей, такую библиотеку легко тестировать, потому что эта библиотека имеет минимум внешних зависимостей, и [почти] полностью зависима сама от тебя, это когда внутренних зависимостей - много, а внешних - мало - это и есть вменяемая библиотека типов
    вменяемая архитектура и состоит из таких базовых библиотек типов
    а далее могут существовать производные/комбинированные библиотеки типов, это такие типы, которые зависят от двух/трёх/... базовых библиотек типов, но и такие библиотеки легко тестируются, потому что на самом деле такие библиотеки типов сильно завязаны зависимостями сами на себя, и имеют всего лишь две/три/... зависимости от базовых библиотек, так базовые библиотеки уже потестированы!!
    далее рекурсия, это же очевидно
    вот и вся вменяемая архитектура, другой нет, всё остальное суть невменяемое
    и никаких логических архитектур не существует, потому что существуют исключительно и только программные архитектуры, это архитектуры типов, или как уже написано выше - это базовые библиотеки типов, это придумано в 70-ых прошлого века
    ну какие авторы кого там чего советуют? это всё бесполезно, потому что все некие советы неких авторов опять и снова строятся на каких то абстрактных розовых ёжиках в вакууме, которые к реальности никакого отношения не имеют
    реальность - это теория информации, а не какое то там розовое влажное бесполезное от каких то авторов, которые вообще не понимают как что работает на самом деле

    • @AEF23C20
      @AEF23C20 5 месяцев назад

      а теперь можно добавить про солиды какие то, и никто не понимает что это, ну потому что дикость одичалость не имеет пределов границ безумия
      солид в общем смысле - не нужен, он избыточен
      однако же солид нужен в пределах [и только] в пределах внутренних зависимостей типов в библиотеке типов
      солид затрагивающий всё и вся - это полнейшее безумие, полностью бесполезное, солид головного недомозга возникает только у предельно одичалых, которые услышали звон, да не знают где он, и вас таких 99.999...9%

  • @AEF23C20
    @AEF23C20 5 месяцев назад

    все чего то там ищщут ищщут! какие то фреймворки какую то бредовую бесполезную ерунду
    фреймворк ровно один, он называется нативный gdi, который вкарячен прямиком в ядро вёнды
    недомозгов не хватает ага, что бы освоить 50 функций gdi?
    и ага, вменяемая архитектура всегда крутит юи даже не в собственном потоке, а в собственном процессе, и вам никто не мешает накарячить юи на сишнячке, и пусть оно вменяемо крутится само по себе

    • @AEF23C20
      @AEF23C20 5 месяцев назад +1

      вот вы скажите, зачем вас всех неистово неудержимо карёжит? а вас всех именно что карёжит
      существует вменяемое и невменяемое
      но вы всегда "выбираете" предельно невменяемое, вы не то что левое ухо чешите правой ногой, не не не! всё гораздо хуже
      вы правой ногой толкаете левую ногу соседа, сосед левой ногой толкает вашу правую кривую недоруку, ваша кривая правая недорука пытается шатать куй другого соседа, а от этого другой сосед качает недоголовой и чешет вам недоголовой ваше левое ухо
      вот такой у вас псевдо-юи

  • @AEF23C20
    @AEF23C20 5 месяцев назад

    если вам нужен десктоп - закажите вменяемый гуй, и не пытайтесь даже не пытайтесь накарячить на каких то обёртках фреймворках, это всё бесполезно
    вы настолько нищщие, что у вас нет пары сотен пусть даже на кучерявый гуй? а если гуй не кучерявый, ну тогда он не стоит 200, а меньше
    вам накарячут вменяемое быстрое нативное
    вот вы скажите, в чём ваша проблема? скажите не мне, а себе
    мне отвечать не нужно, но вопрос задан, вы на этот вопрос сами себе ответьте, а не мне
    я ответ на вопрос знаю, вы себе ответьте на вопрос, в чём ваша проблема с гуями?
    проблем вообще нет, а у вас есть - вы задумайтесь почему оно у вас так?

    • @AEF23C20
      @AEF23C20 5 месяцев назад

      вот эта вся аццкая предельно аццкая недо-деятельность она не имеет вменяемого объяснения вообще никак
      реальность:
      1. есть человек, он карячит нативные гуи, быстрые нативные гуи, берёт недорого
      2. есть какая то недоканторка, где значит какие то зарплаты в месяц по 200-400, там сидят предельно одичалые ничего не понимающие в гуях, и чего то там из себя выкарячивают - в и понятное дело, что в итоге гуй никогда вменяемый не получится
      гонг-вопрос: вы там все каких весёлых разноцветных таблеток переели? вы не можете утверждать, что у вас денег нет на гуй, потому что бюджеты обычно большие, а гуй в бюджете - это 5%, у вас нет 5% что бы купить вменяемый гуй?
      вы объяснитесь хотя бы как нибудь хамячьки

    • @Poseidonboy
      @Poseidonboy 5 месяцев назад

      @@AEF23C20 бро, успокойся. ты являешься тем самым 1 случаем? :) да возьми ты флаттер, электрон хз реакт натив и не долбись ты со своей скоростью, попивай свой кофе за 400к спринт

    • @Poseidonboy
      @Poseidonboy 5 месяцев назад

      Кстати, рекомендую SOLID принципы поучить тебе, там чистую архитектуру и тд. Хз, может твой код кто понимать будет

    • @AEF23C20
      @AEF23C20 5 месяцев назад

      уась как ты ещё ласты не склеил, не понимая, но ежесекундно пользуя чужой код?

    • @Poseidonboy
      @Poseidonboy 5 месяцев назад

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

  • @vasiliylu8054
    @vasiliylu8054 5 месяцев назад +1

    Зашел проверить свой контейнер, whoami, app