SQL и ещё один язык: группировка сотрудников по навыкам
Сгруппируйте строки по имени и оставьте группы, содержащие SQL и минимум два разных языка. Для приведённых данных запрос вернёт Nick и Ivan.
Читать ответПодготовка к интервью
343 вопроса по C# с технических собеседований
Что проверяют на интервью
На странице собраны вопросы по C# — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: backend, c#, optimization.
Каталог
Сгруппируйте строки по имени и оставьте группы, содержащие SQL и минимум два разных языка. Для приведённых данных запрос вернёт Nick и Ivan.
Читать ответSaveAsync ожидают через await без значения, CountAsync — через await с получением int. Async void оставляют для обработчика события: обычный вызывающий код не может ожидать его завершения.
Читать ответВ консольном приложении без особого контекста общее ожидание составит примерно 2 секунды, а не 2,1: Task.Delay идёт одновременно с Thread.Sleep.
Читать ответПрограмма выведет 1. Присваивание b = a копирует значение int, поэтому последующее изменение b не влияет на a.
Читать ответКод не компилируется: sealed запрещает наследовать Animal, private-поле недоступно Dog, а конструктор Dog закрыт для Main. На уровне файла class также не может быть private.
Читать ответПоследовательность содержит только 1. После окончания перечисления Current читать нельзя по контракту; с обычным сгенерированным C#-итератором здесь можно увидеть сохранённую 1.
Читать ответПрограмма напечатает 5 и 12. Распаковка (int)obj копирует значение в num; последующее присваивание num не меняет объект, на который ссылается obj.
Читать ответВ консоль будут выведены 5 и 12 на отдельных строках. При boxing в object копируется текущее значение int; изменение исходной переменной не меняет упакованную копию.
Читать ответИнтерфейс задаёт контракт возможностей, а абстрактный класс может разделять с наследниками состояние и реализацию. Класс может реализовать несколько интерфейсов, но наследовать только один базовый класс.
Читать ответСоздайте класс-наследник System.Attribute, задайте допустимые места применения через AttributeUsage и объявите параметры через конструктор или свойства.
Читать ответKeycloak выступает OpenID Connect/OAuth-провайдером. API на ASP.NET Core принимает access token и проверяет подпись, issuer, audience и срок действия, а затем применяет политики доступа.
Читать ответВложенный lock на одном и том же обычном объекте в одном потоке не вызывает deadlock: Monitor реентерабелен. Точный вывод зависит от отсутствующих в условии инструкций печати.
Читать ответ