FAQ

Теория и практика | создано: 20.05.2021 | опубликовано: 22.05.2021 | обновлено: 07.12.2024 | просмотров: 8354

Серия видео роликов с вопросами и ответами на них, которые присылают подписчики youtube-канала и читатели блога, а также и подписчики boosty.to. Ответы на разные вопросы по разным темам: о принципах программирования, паттернах, правилах, законах, библиотеках, nuget-пакетах, инструментах, сборках и многое-многое другое.

Вопросы для собеседований

Серия коротких роликов с вопросами и ответами на них, которые можно часто услышать на собеседованиях. Речь идет о должностях в сфере IT-технологий, разработки и архитектурного проектирования ПО. 

Внимание: Синтаксис и пунктуация вопросов оставлена от авторов этих самых вопросов. :)

FAQ по программированию 1

00:19 | 1. EntityFramework (Core) vs Unit of Work + Repository. Оправдано ли использование перечисленных паттернов в совместно?
02:15 | 2. MessageQueue сервис в микросервисной архитектуре. Обязательно или можно обойтись?
05:20 | 3. ASP.NET Core не поддерживает impersonation. Почему?
10:00 | 4. CodeFirst vs DatabaseFirst. Что и когда выбирать?
12:18 | 5. Зачем нужен Automapper?
14:07 | 6. Уникальный идентификатор сущности: Guid или Long?

FAQ по программированию 2

00:13​ | 7. Если существует какой-либо метод, который, например, возвращает имя файла (FileName) и его размер (FileSize) в байтах, и потребовалось добавить возможность возвращать байты вместо названия файла, то какой способ реализации вы порекомендуете? Почему?
01:48​ | 8. Git и GitClient. В чем разница? Что и для чего нужно?
02:50​ | 9. Микросервисы. Разделённые модули, как тогда они взаимодействуют между собой?
04:44​ | 10. React, Vue, Angular, Aurelia, Blazor и другие фреймворки для написания Single Page Application с богатым UI.

FAQ по программированию 3

00:25​ | 11. А не много ли классов в вашем приложении?
01:06​ | 12. При использовании TypeScript, например в ReactJs, пропадает динамическая типизация, что несомненно можно отнести к плюсам языка JavaScript.
02:21​ | 13. Каковы принципы тестирования, например, если произошла ошибка записи в базу данных, чтобы репозиторий вернул соответствующий ответ? Как тестировать авторизацию, например, приходит ли ожидаемый ответ от контроллера при наличии/отсутствии определенного claims’a.
06:25​ | 14. В чем смысл и полезность выбрасывать вручную ArgumentNullReference exception? Замена одного исключения другим?

FAQ по программированию 4

00:26​ | 15. Паттерны "orchestration" и "choreography". Что и когда?
01:23​ | 16. Программирование на платформе WPF с использованием MVVM. Нужно или нет?
03:09​ | 17. Какой GIT-клиент вы используете в повседневной работе?
03:50​ | 18. Наш тимлид запрещает "выставлять" наружу IQueryable наружу. На вопрос "почему" - отвечает "так надо". Можно ли?
06:04​ | 19. Где и когда использовать можно и нужно gRPC сервисы?

FAQ по программированию 5

00:27​ | 20. Сколько способов загрузить данные из базы данных вы знаете? Речь идет об загрузки зависимых данных (свойства навигации). Select, Include (Eager), Entry (Explicit), Lazy
02:14​ | 21. Какие проблемы и задачи приходится решать при создании микросервисной архитектуры?
05:02​ | 22. Какое количество вливаемых объектов считается оптимальным?
06:27​ | 23. Как лучше организовать обновление БД ( использую Code First), чтобы проще было переносить данные из уже работающей базы в новую?
08:48​ | 24. Что нужно знать в целом о публикации и работе опубликованного приложения например на IIS?
11:01​ | 25. Какие конфигурационные файлы, кроме appsettings и webconfig важны в приложениях Net.Core? Что нужно делать чтобы избежать проблем со всякими совместимостями и т.д.?
12:37​ | 26. Есть, например, решение Net.Core API, и вдруг приспичило к нему прикрутить другое моё готовое решение, например WPF. Как это делается?

FAQ по программированию 6

00:25​ | 27. У вас возникает проблема с избыточным количеством моделей (ViewModels)?
03:44​ | 28. Для чего программисту нужен Docker?
08:32​ | 29. Как вы реализуете передачу CorrelationId (TraceId) между сервисами ASP.NET Core?

FAQ по программированию 7

00:09​ | 30. Почему лучше использовать IHttpClientFactory, а не сразу HttpClient?
02:14​ | 31. Используете ли вы Blazor? Стоит ли начинать его изучение? Будут ли уроки по нему?
04:02​ | 32. Можно ли написать на SignalR многопользовательскую игру? Производительность вроде как невысокая у SignalR

FAQ по программированию 8

00:27​ | 33. Для чего нужен MassTransit?
02:36​ | 34. Пакет Mediatr это и есть CQRS?
06:12​ | 35. На сколько полезен Prometheus в микросервисной архитектуре?
09:18​ | 36. Grafana или Prometheus: Что лучше для мониторинга?

FAQ по программированию 9

00:25​ | 37. Что и где лучше использовать Kafka или RabbitMQ и как?
01:39​ | 38. OpenID Connect vs SAML
04:37​ | 39. Сколько последовательных запросов можно делать при REST-запросах в микросервисной архитектуре?
06:16​ | 40. Когда можно и нужно применять API Gateway паттерн (Facade в ООП)?
09:26​ | 41. Большие шаблоны большого функционала для бизнеса.
12:52​ | 42. Использование MassTransit нарушает концепцию микросервисов.

FAQ по программированию 10

00:44​ | 43. В чем отличия Silverlight от Blazor? (Blazor это новый Silverlight?)
07:17​ | 44. Где должна находиться бизнес-логика на frontend или на backend?
11:38​ | 45. Что значит full-stack разработчик?
15:44​ | 46. Что такое Event Sourcing применительно к микросервисной архитектуре? Нужно ли сохранять события Требует использовать подход CQRS?

FAQ по программированию 11

00:34​ | 47. Blazor - это SPA фреймворк. А можно его подключить к существующему проекту, который на ASP.NET Core MVC?
01:52​ | 48. Если есть Blazor, то можно ли теперь вообще не использовать JavaScript в проекте, а всё писать на C#?
03:00​ | 49. Что такое Polly?
04:26​ | 50. Зачем нужен partial в C#?
05:48​ | 51. Что такое Electron?
08:08​ | 52. LocalStorage нужно реализовывать через JS или есть встроенная в Core поддержка?
09:51​ | 53. Получается что при использовании LocalStorage, если я открою две вкладки и в разное время сохраню разные значения с одним тем же ключом, то одна вкладка будет перезаписывать данные другой или хранилище у каждой вкладки свое?

FAQ по программированию 12

00:29​ | 54. Какую базу данных выбрать для слабой конфигурации VPS?
02:41​ | 55. Если сравнить PostgreSQL и MS SQL EXPRESS, то какую вы выберите?
05:32​ | 56. Когда я делаю DEBUG в приложении с Blazor WebAssembly у меня не срабатывают некоторые точки останова (breakpoints). Что я делаю не так?

FAQ по программированию 13

00:31​ | 57: Обязательно ли надо с монолитного приложения переходить на микросервисную архитектуру?
01:29​ | 58: Что бы вы порекомендовали сделать в первую очередь при переходе от монолита к микросервисам?
03:46​ | 59: Что быстрее работает "монолит" или "микросервисы"?
05:57​ | 60: Что лучше всего использовать для определения затраченного времени на выполнение метода Stopwatch или DateTime?

FAQ по программированию 14

00:27​ | 61. Стоит ли переходить на NET 5.0?
02:22​ | 62. Локализация в компонентах Blazor возможна? Что-то у меня не получается через ресурсные файлы.
03:20​ | 63. Что делать если RabbitMQ перестанет обрабатывать сообщения? Как микросервисы будут работать?
08:18​ | 64. Что самое трудное в программировании?

FAQ по программированию 15

00:22​ | 65. Мы начинаем новый большой проект. Планируем использовать WinForm. Дайте какой-нибудь совет пожалуйста.
01:50​ | 66. Какой NET выбрать NET 3.1 или NET 5?
03:23​ | 67. Как получить доступ к данным в Blazor?
04:24​ | 68. Должен ли разработчик иметь свой личный блок?
09:45​ | 69. Какие у вас самые любимые паттерны?

FAQ по программированию 16

00:26​ | 70. Микросервисы это всегда Docker (Kubenetes)?
01:17​ | 71. Использование репликаций между базами данных (например, при помощи ServiceBroker) в микросервисах это возможно?
03:35​ | 72. Сколько надо учиться чтобы стать junior-разработчиком?
06:15​ | 73. Хотим делай игру для браузера. Какой выбрать фреймворк?

FAQ по программированию 17

00:29 | 74. Что вы думаете про Clean Architecture?
01:55 | 75. Нужно ли использовать ORM?
04:15 | 76. Как можно ускорить работу EntityFramework?
06:13 | 77. Что лучше учить ASP.NET разработчику, Vue, React или Angular?
09:59 | 78. Что вы думаете про OrmLite как альтернатива EntityFramework?

FAQ по программированию 18

00:24 | 79. Почему в EntityFramework Core нет триггеров (triggers) на вставку/обновление/удаление записей как Microsoft SQL Server?
02:15 | 80. Есть ли хорошие аналоги Identity Server 4? Если есть, то какие? Какие у них плюсы и минусы?
04:13 | 81. А есть карта обучения net разработчика? Если есть то какая?
06:47 | 82. Что лучше String.Empty или ""?
07:19 | 83. Что должен знать midlle asp.net разработчик (какие паттерны, какие библиотеки для хорошего кода, ...)?
12:36 | 84. Где можно использовать record типы (как модели в EF ...)?

FAQ по программированию 19

00:43 | 85. Как пройти собеседование на должность разработчика?
02:15 | 86. О чем нужно знать начиная разработку API с использованием GraphQL?
04:06 | 87. Как использовать паттерн MVVM при разработке c Blazor?
07:17 | 88. Что вы думаете про DDD?
09:04 | 89. Какая разница между Clean Architecture и Domain Driven Design (DDD)?

FAQ по программированию 20

00:29 | 90. Что вы думаете про SpecFlow?
03:28 | 91. Комментарии в коде это "хорошо" или "плохо"?
06:59 | 92. Как вы думаете, готов ли уже Blazor WASM использоваться в серьезном продакшене? Поясните пожалуйста свой ответ.
09:24 | 93. На сколько необходим рефакторинг кода для разработчика? Можно ли его избежать? 

FAQ по программированию 21

00:59 | 94.Vertical Slice Architecture - зачем опять новая архитектора?
05:35 | 95.Когда не нужно использовать SOLID?
07:09 | 96.Принципиальные отличия IdentityServer4 от OpenIddict. Что выбрать?
09:28 | 97.Что выбрать OAuth2.0 или OpenId Connect?
10:57 | 98.Что такое интеграция? Интеграция с другими сервисами? Сталкивались ли вы с задачами с интеграцией с другими сервисами?
14:06 | 99.Что такое IoT и как ее изучать?
15:41 | 100.Что такое идемпотентность операций, и где вообще идемпотентность важна в программировании?
17:40 | 101.Как происходит распределение нагрузки между запущенными несколькими экземплярами микросервиса? На какой экземпляр попадает запрос? Слышал, что запускают несколько экземпляров на чтение и одни на запись. Может ли быть два и более экземпляров запущенных на запись, дает ли это выгоду? Есть ли что-либо автоматическое, если единственный экземпляр на запись перестает работать, тогда какой-то, выполняющий чтение, переключается на запись? Кто или лучше что следит за нагрузкой и может автоматически запускать/останавливать экземпляры микросервиса при необходимости/ненадобности?

20:19 | 102.Конструкция async/await решает задачи асинхронного выполнения запросов, команд и позволяет не блокировать пользовательский поток и соответственно его интерфейс. Упрощает асинхронное программирование, делая код простым и понятным. На каких архитектурных слоях (репозитории, бизнес-логики, контроллеры), например сервера приложений web api, следует использовать эту конструкцию? Допускается ли испольование на всех слоях? Не будет ли чрезмерное использование этой конструкции губительно для производительности?

21:30 | 103.Какие задачи (бизнес-задачи) все же стоит реализовывать через многопоточность? Предполагаю что это может быть обработка нескольких частей одного видео или загрузка чайте видео. Какие могут быть еще задачи? Следует ли применять многопоточность к обработке некой огромной коллекции данных (несколько сотен миллионов строк данных), где нужно проверить каждую сущность по условию, при необходимости внести в нее изменение и изменения сохранить? Асинхронная задача с этим справится, а следует ли перекладывать на несколько потоков?

23:05 | 104.Как в асинхронном методе вызвать асинхронные методы получение (обработки) данных (независимых) из разных источников используя многопоточность? То есть в методе есть несколько await и они выполнятся последовательно, но без блокировки вызывающего потока. Как их выполнить параллельно?

FAQ по программированию 22

00:59 | 105. DOMAIN-DRIVEN DESIGN vs ANEMIC DOMAIN MODEL?
10:04 | 106. Что выбрать gRPC или gRPC-web?
12:04 | 107. Что думаете про Unity? Был ли опыт?

FAQ по программированию 23

00:44 | 108. Можно ли используя StoredProcedure в SQL-сервере построить правильную архитектуру Domain-Driven Design (DDD)?
08:18 | 109. Расскажите, пожалуйста, об инструментах которые используете при написании кода: для оценки производительности, памяти и т.п.
09:52 | 110. Очень часто нужно сгенерировать PDF, используя например, выборку данных из БД. Например, счет или накладную. Как это лучше сделать? Google выдает кривые библиотеки.

FAQ по программированию 24

00:40 | 111. В подходе CQRS, при чтении данных, правильно ли использовать sql view, хранимые процедуры?
04:10 | 112. Рисуете ли вы, перед написанием нового кода, UML-схемы. На сколько вообще навык их создания необходим среднему разработчику?
07:30 | 113. Где хранить строки подключения/логины пароли?

FAQ по программированию 25

01:17 | 114. Что вы думаете про Аспектно-ориентированное программирование (АОП)? На сколько данный подход оправдан?
12:24 | 115. Востребован ли паттерн "Repository" при работе с CQRS и/или EntityFrameworkCore?
16:52 | 116. Что лучше использовать ToArray() или ToList()? Что лучше для производительности приложения?
17:48 | 117. Что такое Blob? Работали ли вы с ним? Какие проблемы могут быть при его использований и как вы их решали?
19:11 | 118. Есть микросервис, который должен отдавать какие-то данные и еще файл (статические данные) и как правило с таким типом данных хорошо справляется nginx. Как правильно в этой ситуации быть? Разделять запросы или отдавать все вместе и файл как byte[]?

FAQ по программированию 26

00:48 | 119. Как вы относитесь к высказываниям Мартина Фаулера?
01:28 | 120. Расскажите пожалуйста приходилось ли вам работать с "большими" XML файлами? Какие инструменты приходилось использовать, с какими трудностями столкнулись при работе с файлами.
02:42 | 121. Хорошая практика покрывать код тестами. Но есть ли разумные ограничения на число таких тестов?
03:37 | 122. Можно расширяющим методом дополнить стандартные поля в таблице USER в базе аутентификации? Какие есть варианты не трогать базу с пользователями и остаться в рамках БД с остальными таблицами приложения?
05:58 | 123. Сталкивались ли вы со строковым (row-polymorphism) полиморфизмом в работе (к сожалению, статья в википедии не очень помогла разобраться)?

FAQ по программированию 27

00:37 | 124. Какой язык программирования начинать изучать?
04:22 | 125. Как использовать DI в своих библиотеках?
08:55 | 126. У нас есть структуры и классы, структуры работают намного быстрее, в каких случаях можно отдать предпочтение именно структуре, а не классу?
10:47 | 127. Что такое KQL? Зачем он нужен, если уже есть SQL?

FAQ по программированию 28

00:00 | Заставка и приветствие
00:48 | 128. Сколько по вашему мнению должно быть параметров, которые передаются в функцию? И можно ли говорить про такое же количество параметров подойдет и для Dependency Injection в конструктор?
04:49 | 129. Какие библиотеки компонентов для Blazor вы используете? Почему?
07:13 | 130. Нужно ли осуществлять переход на .Net Core 6 с 3.1, если активная разработка планируется и после окончания поддержки 3.1? И в какой момент лучше осуществлять переход, уже сейчас или ближе к концу поддержки?
11:39 | 131. Чем каррирование отличается от интернирования?

FAQ по программированию 29

00:53 | 132. Как лучше перехватывать исключения в одном блоке через switch или в разных через catch?
03:53 | 133. Что лучше использовать VAR или явный тип?
04:28 | 134. Сколько, обычно, nuget-пакетов от сторонних разработчиков вы используете в своих проектов? Что лучше использовать чужие или писать свои?
07:26 | 135. Event Sourcing vs Event Driven Architecture. В чем отличия?

FAQ по программированию 30

00:23 | 136. В одном из предыдущих видео вы сказали, что нужно разделять frontend и backend, чтобы были разные репозитории. Это значит два хостинга?
05:09 | 137. На сколько сильно Mediatr замедляет проект? Нужно ли его использовать?
09:46 | 138. Говорят, что Eventual Consistency это "зло" для пользователей. Верно? Почему?

FAQ по программированию 31

00:23 | 139. Что такое "синтаксический сахар" в C#?
01:11 | 140. Что такое обфускация (obfuscation)?
02:19 | 141 Как правильно использовать REST into CQRS?
04:22 | 142 Как работать с миграциями в команде?

FAQ по программированию 32

00:42 | 143. Что такое "Failing Fast" подход?
02:49 | 144. Можно ли использовать DateOnly и TimeOnly в сущностях для EntityFrameworkCore?
04:01 | 145. Где хранить JWT Token и secret key?
08:45 | 146. Можете рассказать об практических кейсах использования Redis Streams в C# приложениях?

FAQ по программированию 33

01:18 | 147. Для чего нужны unit-тесты и что такое метрики (metrics)? (© Владимир)
05:29 | 148. С чего начать изучение алгоритмов для младшего разработчика? (© Xasiy)
08:34 | 149. На ваш взгляд, какой язык будет наиболее перспективным в будущем (C#, Rust, TypeScript)? (© Xasiy)

FAQ по программированию 34

01:15 | 150. Почему все говорят, что выбрасывать Exception в коде это плохо? (© Владимир)
10:00 | 151. Какие есть инструменты для линтинга кода на C#? Например, как ESLint для JS. И есть ли какие-то популярные стайл гайды?
12:20 | 152. Чем отличается clean architecture от onion?
15:55 | 153. Что лучше использовать Blazor Server Side приложение (полностью на Blazor) или ASP.NET Core + либа с компонентами Blazor? Какие преимущества и недостатки у первого подхода?

FAQ по программированию 35

00:50 | 154. Расскажите когда-нибудь, какой документацией Вы сопровождаете свои приложения.
08:30 | 155. Где лучше хранить тексты интерфейса (названия кнопок, меню...) в ресурсах или в базе данных? (© Андрей)
11:50 | 156. На сайте есть размещенные статьи документации. Как правильнее организовать получение текстов из базы в зависимости от выбранного языка? (© Андрей)

FAQ по программированию 36

00:43 | 157. Как достичь такого понятия как "читаемость кода"? Какие принципы написания такого кода? (©Jsoood)
04:59 | 158. Как можно управлять состоянием в Blazor?
06:08 | 159. Какую технологию выбрать или архитектура современных приложени?
09:18 | 160. Какая разница между Task.Run и Task.Factory.StartNew? Что лучше использовать? (©EKdop)

FAQ по программированию 37

00:35 | 161. Посоветуйте фреймворк для CleanArchitecture. Есть ли такие?
02:02 | 162. Что такое "технический долг"?
04:12 | 163. Как хранить дату, с которой работают из разных часовых поясов?
08:33 | 164. Как правильно и где нужно проверять данные на null? В контроллере или где?

FAQ по программированию 38

01:02 | 165. Какую шину сообщений лучше всего использовать для микросервисной архитектуры? (© Feldmant)
04:37 | 166. Какую базу выбрать для хранения данных: MongoDB или PostgreSQL? (© meeerman)
08:16 | 167. Возможно ли с Kafka работать через MassTransit? Какие есть аналоги и лучшие практики для реализации? (© Максим)
08:56 | 168. Расскажите о best practices при работе с Kafka в .NET (© Максим)
13:28 | 169. А какую бд лучше использовать для хранения доекментов (файлов)? (© Дмитрий)

FAQ по программированию 39

00:55 | 170. Какой ORM выбрать? EntityFramework или Dapper? (© bаукоr)
10:25 | 171. В чем разница между NUnit и XUnit? Какой когда использовать? (@ des)
12:15 | 172. Вопрос про ConfigureAwait, при false не передает SynchronizationContext, вроде есть матра "для ui не трогай, для библиотек трогай", но мантры — это не по-инженерному, иногда false превращается в "кнопку турбо". Есть ли случаи, когда false может поломать логику, кроме UI? (© Максим)
13:35 | 173. Подскажите пожалуйста, как правильно зарегистрировать generic Mediatr через Reflection. (© Александр)
14:44 | 174. Можно ли используя много структуры вызвать StackOverflowException? Или span<T> выделяя много и часто на стеке? Вроде иногда хочется выделить память на стеке, но боязно, кажется, что это как-то непредсказуемо.
15:22 | 175. Планирую обновить старое Webforms приложение на Blazor server. Посоветуйте стоит ли игра свеч и получу ли я прирост производительности от такого обновления? (© Сергей)

FAQ по программированию 40

00:42 | 176. Если при соблюдении naming conventions получаются очень длинные названия классов, как вы с этим живете?
04:17 | 177. Нужно ли сохранять данные в базу данных сервиса перед отправкой этих данных в очередь сообщений? Как добиться согласованности данных между сервисами в микросервисной архитектуре? (©Vladimir)
10:17 | 178. Может ли ValueObject наследовать ValueObject?
12:17 | 179. Как лучше(или можно) организовать нагрузочное тестирование Web API?

FAQ по программированию 41

00:45 | 180. "Saga pattern" не всегда может гарантировать изоляцию и долговечность, как быть?
06:00 | 181. Можно использовать на сервере (например web api) скрипты питона. Дождаться результата выполнения и получить нужный результат.? И как все это безобразие прикрутить к друг другу?
07:16 | 182. Как можно организовать сбор данным о работе приложения. Статистики запросов, метрики. Что бы узнать, сколько, как и откуда приходят запросы, или отрабатывает какая-то логика.  Типа Grafana но не такая сложная.
11:15 | 183. Есть ли смысл использовать в работе. В новом проекте minimal API. Если да, то почему и что он дает, какие преимущества?
14:02 | 184. Как бы правильно сделать хранение изображений и где? В самой БД, в системе, а в БД хранить путь к изображению или ещё как-то?

FAQ по программированию 42

00:38 | 185. Почему так популярна Clean Architecture?
04:40 | 186. Расскажите пожалуйста, что сейчас лучше использовать для десктопной разработки: wpf, avalonia, asp core + electron или что то другое?
07:22 | 187. Какую архитектуру выбрать для большого проекта? Что лучше Clean Architecture или Vertical Slice Architecture?

FAQ по программированию 43

01:34 | 188. Следует ли использовать domain Driven Design?
03:14 | 189. Где лучше хранить токены на фронте (Cookie, Local Storage) при использовании Open ID Connect (например, OpenIddict). Можно ли сконфигурировать так, чтобы хранить токен в Cookie + Http Only? Лучшие практики?
07:47 | 190. В каком слое или месте производить валидацию данных при подходе DDD? Нужен ли Service Layer при использовании Rich Model + DDD?
16:36 | 191. Что лучше использовать int.Parse() или Convert.ToInt32?

FAQ по программированию 44

01:24 | 192. Передача TraceId (CorrelationId) между сервисами ASP.NET Core. Как примерно будет выглядеть такая настройка, если какие-то сервисы "общаются" между собой по gRPC, а другие по HTTP?
03:25 | 193. Что выбрать Kubernetes  или Docker?
05:09 | 194. Когда стоит переходить с Docker Swarm на Kubernetes?
06:54 | 195. Как правильно организовать добавление сервисами своих ролей в сервер (IdentityServer или OpenIdDict) и назначать на эти роли пользователей чтобы: 1) один сервис не мог создавать роли для другого сервиса; 2) чтобы при запросе токена для доступа к нужному сервису получать роли, предназначенные только этому сервису.
12:17 | 196. Как лучше собирать логи с микросервисов? От какого количества пользователей есть смысл переходить от монолита к микросервисам? Как лучше собирать метрики сервисов? Какую литература порекомендуете для начинающих по микросервисам?
18:22 | 197. Когда лучше использовать gRPC вместо очередей, например, в MassTransit + RabbitMQ можно синхронно дожидаться ответа, но при этом не будет прямой зависимости от другого микросервиса, зачем тогда gRPC, только ради производительности?

FAQ по программированию 45

198. Расскажите о паттерне "Спецификация", когда его нужно применять? (на примере EF Core)
199. Расскажите о кэшировании объектов в EF core. И о решении проблемы, когда они начинают занимать очень много памяти, которая не очищается после выполнения запроса. И как элегантно можно использовать asnotracking, чтобы не применять к каждому запросу.
200. Как вы относитесь в искусственному интеллекту (AI)?

FAQ по программированию 46

201. Если бы вам пришлось делать frontend, а не только backend, то какой бы JS-фреймворк вы бы выбрали?
202. Расскажите про паттерн Наблюдатель и реактивное программирование. Используется оно сейчас? И какие могут быть сценарии использования для Asp Core приложений?
203. Сейчас используется Blazor в больших проектах? Есть развитие этой технологии?  Или еще Blazor удел небольших(пэт) проектов?
204. Как изучить SQL быстро? В своем проекте использую Entity Framework, сиквел почти не использую, поэтому и не знаю. Как его внедрить?
205. Расскажите об организации приложения(JavaScript Frontend+C# backend), которое должно работать в разных часовых поясах. В частности интересно какой тип данных используется хранение даты/времени в базе данных. Как определяется к какому UTC+(-)n надо приводить время из БД. Как вообще происходит синхронизация времени в такой организации?
206. Расскажите о случаях из своей практикие, если таковые имеются, где Вы legacy-код переработали с использованием Span или Memory и таким образом сделали более высокопроизводительный код.

FAQ по программированию 47

207. Почему Вы в последнем видео удалили контроллер? MVC - прекрасная идея! И реализация отличная!
208. Вы каждый раз говорите, что микросервисы - это сложно, но есть же простые варианты реализации?
209. Вы часто проводите собеседования, но как часто вы проходите собеседования сами?
210. Шаблонов с реализацией Clean Architecture очень много. Какой правильный?

FAQ по программированию 48

211. Почему так много архитектур для того, чтобы писать код? Какую выбрать? Какая правильная?
212. Как сделать авторизацию hangfire на OpenIddict или IdentityServer4?
213. Еще вопрос. На сколько точны данные яндекс-метрика? Как работают подобные системы?
214. Вы на практике уже применяли vertical slice architecture? Что она дает?

FAQ по программированию 49

215. Какие паттерны вы используете чаще всего?
216. Микросервисы только на HTTP - это плохо?
217. Есть веб-сервис A, которому нужно взять из базы данных большой объем  данных с помощью EF Core и через http POST-запрос отправить в виде JSON сервису B. Вопрос в комментарии.
218. Когда использовать Task, а когда ValueTask? Почему ValueTask должна await'титься только один раз?
219. Приходилось ли Вам сталкиваться со связкой BPMN-движков(например Camunda) и C#?
220. Как лучше создавать клиентов для Rest Api? Использовали ли вы библиотеку Refit или автогенерацию в c#? 

FAQ по программированию 50

221. Оркестрация или Хореография? Что лучше для коммуникаций в микросервисной архитектуре?
222. Какие nugetы вы используете для gRPC в работе? Речь о сборках, которые упрощают разработку?
223. В чем отличие Redis и IMemoryCache?
224. Что лучше mssql или postgressq? Какие основные отличия в работе, кроме ОС?
225. Как развернуть web api на windows чтобы сервисы общались по grpc протоколу. Я так понял через iis это невозможно?
226. Как правильно настроить hmail сервер, чтобы письма не попадали в спам?
227. Чем джуниор отличается от мидла и как найти работу на c#?
228. Ещё бредовый вопрос по поводу выхода за приделы типа данных. Допустим поле id с типом byte в БД и добавление записи выходит за пределы. Что будет и что делать с такой таблицей?
229. У меня микросервисная архитектура, и сложно помнить/поддерживать связи между микросервисами. Есть ли какой то инструмент который автоматически будет рисовать диаграмму по docker file или nuget или ещё как-то, или вариант 1 - рисовать руками? Если рисуете - что используете?
230. Подскажите, можно ли использовать в внутреннего (в пределах одного asp core приложения) брокера сообщений Channels для обмена между CRUD и BackgroundServices? Чтобы не устанавливать Rabbit или Kafka. Или есть еще более правильный способ?

FAQ по программированию 51

231. Что лучше выбрать IdentityServer4 или KeyCloak для системы выдачи токенов?
232. Интеграционные тесты для EntityFrameworkCore лучше проводить на на "InMemory"?
233. Как выбрать между RabbitMQ и Kafka, от чего нужно отталкиваться?
234. Зачем нужно добавлять суффикс Async для методов?
235. Как часто вы используете оптимизации с использованием Span<T> и других типов?

FAQ по программированию 52

236. Расскажите про можель доступа ABAC разрезе микросервисов?
237. Есть ли смысл использовать автомапперы? Не лучше ли создавать сущности через конструктор/фабричный метод/кастомное расширение для маппинга? (©Максим)
238. Как лучше реализовать ролевую модуль для системы при реализации микросервисов при реализации Api Gateway? (©Сергей)
239. Что порекомендуете для реализации маршрутизации api шлюза (что лучше Ocelot или какой то конкретный его аналог)? (©Сергей)
240. Допустим задали сравнить 2 произвольных файла word/pdf, как лучше их сравнить, чтобы была возможность показать пользовтаелю отличия в файлах? Пока кроме как расмотреть OCR библиотеки никаких идей возникло. (©Сергей)
241. Планируется встроить в систему корпоративный мессенджер. Встал вопрос о том где лучше хранить сообщения. В бд sql скорее всего создаст сильную нагрузку, какое хранилище можете порекомендовать для хранения при большой загрузке. Подойдет ли для этого брокер сообщения (кафка,  рэбит mq) с очередями для каждого пользователя? (©Сергей)
242. Приходилось ли Вам пользоваться удаленным дебагом, актульно ли это для современной разработки и в том числе для микросервисной архитектуры? (@Сергей)

FAQ по программированию 53

243. Как лучше шарить контракты между проектами?
244. Вы используете суффикс Async в названиях методов или нет?
245. Immutable влияет на производительность? На сколько?
246. Расскажите как вы понимаете паттерн KISS?

FAQ по программированию 54

247. Как вам удается помнить про всякие штуки для разные платформ? Как вы поддерживаете опыт? (©Vlosfer)
248. Стоит ли переходить на OpenTelemetry, не все сборки еще в релизе?
249. Есть какой нибудь несложный способ наполнить БД фейковыми/тестовыми данными?
250. Что вы используете и когда EF или Dapper.

FAQ по программированию 55

251. Какой scheduler вы используете и посоветуете использовать?
252. Правда ли, что безмерное использование asyn/await может привести к исчерпанию пула потоков?
253. Может быть есть какие-то более крутые альтернативы, так как MassTransit больше подходит для RabbitMQ?
254. Нужно ли использовать кастомные исключения или встроенные?
255. Используете ли Вы Copilot? Что можете сказать про Copilot и ChatGPT?

FAQ по программированию 56

256. Как распилить монолит? С чего начать? Есть ли у вас опыт "распила" монолита?
257. Как по вашему? Cейчас используется ли в комерческой разработке Blazer? И надо ли изучать этот фреймворк или уже не актуальная технология?
258. Как лучше хранить файлы картинок для сайта? Где вы храните картинки для своего блога?
259. Как правильно определить количество необходимых модульных тестов и сколько утверждений должен содержать один тест? 

FAQ по программированию 57

260. Что такое SOFT DELETE при использовании EntityFrameworkCore?
261. Валидация в домене - хорошо или плохо?

FAQ по программированию 58

262. EntityFramework Interceptors зачем?
263. Как вы оптимизируете запросы к базе данных? Смотрите ли план выполнения? С чего обычно начинаете оптимизацию и на что обращаете в первую очередь внимание?
264. Используете ли вы версионирование агрегатов состоящих из нескольких сущностей? Если да, то как вы это делаете с entity framework? 
265. Как научиться читать исходный код больших проектов?

FAQ по программированию 59

266. Как можно создать приложение для Linux с графическим интерфейсом?
267. Как вы публикуете window-приложения, если они у вас есть? Как пользователи могут понять, что нужно обновить приложение?
268. Почему вы предпочитаете Visual Studio вместо Rider?

FAQ по программированию 60

269. Используете ли вы какой-нибудь mapper? Вообще, надо ли использовать? И если использовать, то какой? И если не использовать, то почему?
270. Что скажете про NET9? Есть что полезного?
271. Новый .NET Aspire на сколько может быть полезен?
272. Начинаем новый проект, требуется поддержка Web, Mobile и, возможно, Desktop платформы. Что посоветуете?
273. На сколько оправдан переход с ASP.NET Razor Pages на ASP.NET Blazor?

Поблагодарить

Хотите тоже получать донаты? Тогда заходите на boosty.to и регистрируйтесь!

Кстати, я использую хостинг reg.ru. Подключайся с промокодом 9A17-953A-8591-CF98 чтобы получить скидку 5%

Мои видео

Boosty.toYouTube | Yandex.Дзен | RuTube | VK | Nuum.ru