Как создать собственный (кастомный) атрибут в C#?
Создайте класс-наследник System.Attribute, задайте допустимые места применения через AttributeUsage и объявите параметры через конструктор или свойства.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Создайте класс-наследник System.Attribute, задайте допустимые места применения через AttributeUsage и объявите параметры через конструктор или свойства.
Читать ответРазверните товары и их модификаторы через SelectMany, умножьте количество модификатора на Quantity позиции корзины, затем сгруппируйте записи и сложите количества.
Читать ответНезависимые CPU-bound вычисления можно распределить по ядрам через ограниченный параллелизм, например Parallel.For. Ускорение зависит от стоимости операции, числа ядер и отсутствия общих узких мест.
Читать ответПрограмма напечатает BAC без разделителей. Print1 переопределён в B, Print2 у A невиртуальный, а C лишь скрывает его новым методом.
Читать ответВместо switch по конкретному типу вынесите различающееся действие в виртуальный метод или интерфейс и вызовите его через общий контракт. Реализация выбирается по фактическому типу объекта.
Читать ответЕсли для каждого из n товаров делать List.Contains по m заблокированным ID, время составляет O(nm). Постройте HashSet заблокированных ID и получите в среднем O(n + m).
Читать ответЧетыре значения margin задаются по часовой стрелке: сверху, справа, снизу, слева. Два значения означают вертикальные и горизонтальные отступы.
Читать ответПервый INNER JOIN действительно возвращает пары клиентов и их заказов. Во втором запросе не хватает группировки и условия HAVING COUNT(*) > 10, чтобы оставить клиентов с более чем десятью заказами.
Читать ответФункция высшего порядка принимает другую функцию как аргумент или возвращает функцию. Это позволяет передавать и комбинировать поведение.
Читать ответМетод должен проверить null и пустой разделитель, разобрать каждый фрагмент как IP-адрес и вернуть коллекцию. Первый недопустимый адрес приводит к FormatException.
Читать ответПосле фильтрации остаются 2, 2 и 4: сумма равна 8, количество элементов — 3, количество разных значений — 2. Повторы не удаляются самим Where.
Читать ответДа, запрос допустим, если таблица и поля существуют и их типы поддерживают группировку. SELECT может выводить только часть столбцов GROUP BY.
Читать ответ