FAQ 46 по программированию
HTML-код
- Опубликовано: 7 июл 2023
- FAQ по программированию 46
В этом видео будут даны ответы на следующие вопросы:
00:55 | 201. Если бы вам пришлось делать frontend, а не только backend, то какой бы JS-фреймворк вы бы выбрали?
02:35 | 202. Расскажите про паттерн Наблюдатель и реактивное программирование. Используется оно сейчас? И какие могут быть сценарии использования для Asp Core приложений?
04:51 | 203. Сейчас используется Blazor в больших проектах? Есть развитие этой технологии? Или еще Blazor удел небольших(пэт) проектов?
07:40 | 204. Как изучить SQL быстро? В своем проекте использую Entity Framework, сиквел почти не использую, поэтому и не знаю. Как его внедрить?
10:27 | 205. Расскажите об организации приложения(JavaScript Frontend+C# backend), которое должно работать в разных часовых поясах. В частности интересно какой тип данных используется хранение даты/времени в базе данных. Как определяется к какому UTC+(-)n надо приводить время из БД. Как вообще происходит синхронизация времени в такой организации?
14:52 | 206. Расскажите о случаях из своей практикие, если таковые имеются, где Вы legacy-код переработали с использованием Span или Memory и таким образом сделали более высокопроизводительный код.
Благодарности и помощь каналу принимаются:
www.calabonga.net/site/thanks
Наши видео доступны и на Дзэн:
dzen.ru/calabonga
Можно стать спонсором, и вы получите доступ к эксклюзивным бонусам:
* boosty.to/calabonga
Я использую хостинг Reg.ru
htttps://reg.ru/?rlink=reflink-11163551
Спасибо за ответы, было очень интересно
Рад слышать. Спасибо и вам за комментарий.
Спасибо!
Пожалуйста! Приходите на boosty.to/calabonga - там больше видео и других полезностей.
Сергей, спасибо за очередную серию ответов на вопросы) не нашел видео в Ютубе, как работает RabbitMQ под капотом, может быть, будет интересно сделать ролик на эту тему?
У них на сайте всё подробно расписано. Не думаю, что мой рассказ будет лучше оригинала :)
Спасибо за вопрос на чем разрабатывать backend. Лишний раз убедился что в этом зоопарке нужно использовать тот который ближе, и каждый свой и советует , для нас на c# ближе blazor.
Правильный выбор! 😂
Хотел бы узнать подробнее про хозяина ресурса. В основном проекты все в интернете с доступом по ролям. А вот если я хозяин ресурса, то должен тоже получить доступ хоть и не администратор. Как такое реализовывается? Достается ресурс и проверяется хозяин ли я? И сколько проверок нужно делать. Например в слое с бизнес логикой нужно проверять администратор я или хозяин ресурса? И в слое api тоже проверять?
1. "Доступ по ролям" устаревшая модель. Microsoft уже давно перешел на использование ClaimsIdentity, который реализует другой подход. А "доступ по ролям" эмулируется в система Microsoft.Identity.
2. В любом случае, можно реализовать несколькими способами:
а) Да, достается и проверяется на Owner.
б) Сгруппировать ресурсы по Owner, чтобы не делать проверку для каждого ресурса.
3. В концепции Domain Driven Design такого понятия как API слой не существует. Тем не менее, API слоёв может быть несколько, и быть проверке в них или нет, на вашей совести. А вот проверка в бизнес-логики - быть обязана, иначе бизнес-логика может "сломаться".
@@SergeiCalabonga Спасибо! А если у меня цепочка ресурсов, в которой ресурс зависит от предидущего, и только в главном будет UserId. Мне придется перебирать все или просто добавить в каждый ресурс свойство OwnerId?
@@maza511 Если у вас цепочка ресурсов, то это похоже на микросервисную архитектуру. А в микросервисной архитектуре - денормализация данных (дублирование) - это обычное дело. 😀
@@SergeiCalabonga Может я не так выразился) Вроде у меня не микросервис) Я Имел ввиду что есть сущность User. Есть Employee со свойством UserId. Есть Diary со свойством EmployeeId. Есть Record со свойством DiaryId. Так вот что бы проверить создателя Record в него тоже нужно делать свойство UserId? И в Diary соответственно тоже создать свойство UserId. Я правильно вас понял?
@@maza511 Мысль - правильная. Но кострукция - страная. 😁