Задать вопрос
@vladimironokhov0

Нужно ли знать многопоточность и асинхронность в c#, чтобы начать учить asp.net?

Нужно ли знать многопоточность и асинхронность в c#, чтобы начать учить asp.net?
  • Вопрос задан
  • 169 просмотров
Подписаться 2 Простой Комментировать
Решения вопроса 2
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
И да и нет.
В общем хорошо понимать всю платформу.
Зачем нужна многопоточность и асинхронность и где ее можно не использовать, а где лучше использовать.
Ответ написан
Комментировать
@mvv-rus
Настоящий админ AD и ненастоящий программист
Мое мнение: есть некоторая неопределенность для ответа. С одной стороны, при решении типовых задач с помощью базирующихся на ASP.NET Core фреймворках высокого уровня - MVC, Razor, Minimal API, Blazor (за последний не совсем уверен, правда), с асинхронностью и многопоточностью вы сталкиваться будете не сильно и не часто, потому что в них приложены усилия, чтобы изолировать разработчика от связанных с этим трудностей - короче, потребуется разве что, умение использовать async/await. Но в целом ASP.NET Core - это фреймворк асинхронный и многопоточный, поэтому для более плотной работы с ним понимание асинхронность и многопоточность и связанные с ней знания (например, про примитивы синхронизации, состояние гонок и т.п.) может быть полезно, иногда - например, если вы захотите использовать объекты, к которым возможен доступ из нескольких веб-запросов параллельно - просто необходимо.
Короче, мое мнение: начинать изучать перечисленные фреймворки высокого уровня можно и без особых знаний про асинхронность, достаточно научиться использовать await в async-методах (это просто). Но в дальнейшем тему асинхронности и многопоточности надо вкурить, чтобы можно было работать смелее и свободнее, выходя за рамки фрейворка, и не допускать при этом труднообнаружимых ошибок.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы