Библиотека собеса по C# | вопросы с собеседований
5.67K subscribers
207 photos
2 videos
1 file
175 links
Вопросы с собеседований по C# и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/4c2f1c3b

Работать у нас: https://job.proglib.io/

Наши каналы: https://yangx.top/proglibrary/9197
加入频道
💻 Эффективное проектирование программных систем

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

Наш интенсив «Архитектуры и шаблоны проектирования» научит вас строить программные системы без боли и стресса. Вы на практике освоите основные паттерны проектирования и прокачайте свои навыки архитектора программного обеспечения.

🎄Начните свой 2025 со скидкой 35% на все курсы. Это лучшее вложении уходящего года – https://proglib.io/w/cc21e069
Объясните, что такое локальные и глобальные ресурсы?

Локальный ресурс явно относится к определенной странице, которая является той, которая может получить к нему доступ, в то время как глобальные ресурсы могут быть доступны из любого места. Локальные ресурсы хранятся в органайзере App_LocalResources, в то время как глобальные хранятся в папке App_GlobalResources. Записи локальных и глобальных ресурсов будут выглядеть идентичными, поэтому единственным различием будет папка, в которой они находятся. Но они используются по-разному.
Узнаем, сколько дней осталось до заданной даты с помощью C#.
🌍✈️ 6 идей, как ускорить поиск работы за рубежом

Статья для тех, кто устал от отказов и безрезультатных поисков. Узнайте секреты, которые помогут вам найти работу за рубежом в разы быстрее!

👉 Читать статью
Когда вызывается статический конструктор класса?

Статический конструктор вызывается автоматически для инициализации класса перед созданием первого экземпляра типа или при первом обращении к каким-либо статическим членам.
🧠 Прокрастинация: почему разработчики к ней склонны и что с этим делать

Даже самые целеустремлённые и дисциплинированные разработчики порой сталкиваются с периодами прокрастинации. Это состояние чаще вызвано глубокими причинами, чем просто нежеланием работать. Делимся личной историей разработчика, сумевшего преодолеть прокрастинацию.

🔗 Читать по ссылке
Please open Telegram to view this post
VIEW IN TELEGRAM
🎄 Начни 2025-й с апгрейдом навыков,
которые откроют двери в мир IT!

Ты можешь собрать свой персональный план обучения с помощью нашего новогоднего конструктора. Это шанс не просто начать год с полезных знаний, но и сделать инвестицию в своё будущее, которая окупится многократно.

🔗 Собери свой план и начни путь в IT

Почему это выгодно?

📚 Несколько программ по цене одной — максимальная эффективность: учишься сразу тому, что действительно нужно.

💾 Бессрочный доступ — все материалы всегда под рукой, чтобы учиться в своём темпе.

💸 Знания, которые окупятся — навыки, востребованные в любой точке мира.
Какие навыки ты можешь прокачать?

💡 Математика для Data Science + Алгоритмы и структуры данных
— Подготовка к собеседованиям в FAANG и поступлению в ШАД. Решай сложные задачи, работай с данными и моделями на профессиональном уровне.

💡 Алгоритмы и структуры данных + ML
— Улучшай своё алгоритмическое мышление и изучай базовые методы машинного обучения, чтобы создавать интеллектуальные приложения.

💡 Frontend Basic + Базовые модели ML
— Построй свою первую веб-страницу и погрузись в мир ML: от нейросетей до ML-бустинга.

💡 Архитектуры и шаблоны проектирования + Математика для Data Science
— Развивай аналитическое мышление и учись проектировать устойчивые системы.

💡 Алгоритмы и структуры данных + Frontend Basic
— Получи полный набор навыков: от оптимизации алгоритмов до создания современных веб-приложений.

Не упусти шанс сделать шаг в будущее! Новый год — это время обновлений, и твоя карьера может стать одним из них.

🔗 Составь свой IT-маршрут сейчас или выбери курс по новогодней скидке
В чем разница между dispose и finalize в C#?

Основное различие между Dispose() и Finalize() заключается в том, что Dispose() должен быть явно вызван пользователем, а метод Finalize() вызывается сборщиком мусора при уничтожении объекта.
Объясните понятие наследования и то, как оно работает в .NET.

В общем понимании ООП наследование означает, что класс может быть создан на основе другого класса, при этом новый класс получает атрибуты родительского класса. Например, разработчики могут создать класс с именем Транспортное средство, а затем дочерние классы с именами Грузовик, Автомобиль и Мотоцикл — все они наследуют атрибуты Транспортного средства.

Для демонстрации своего понимания вопроса на собеседовании кандидаты могут объяснить, что в .NET поддерживается только одиночное наследование, что означает, что класс может наследовать только от одного другого класса. Они также могут упомянуть транзитивное наследование — например, класс Форд наследуется от класса Автомобиль, который в свою очередь наследуется от Транспортного средства.
🎁🎄Как ваше настроение? Рассказывайте, что вам подарили на Новый год?
Объясните Raycasting в Unity и ее приложения.

Концепция Raycasting в Unity заключается в проецировании луча из заданной точки в определённом направлении для выявления столкновений с объектами на игровой сцене. Основные области применения Raycasting включают:
⚡️ Механики стрельбы;
⚡️ Проверку прямой видимости;
⚡️ Взаимодействие с объектами;
⚡️ Обнаружение поверхностей для передвижения персонажа.
Является ли тип List потокобезопасной коллекцией?

Тип List может быть безопасным для потоков в случае операций чтения. Однако пользовательский код должен самостоятельно обеспечивать синхронизацию при параллельном добавлении или удалении элементов из коллекции в нескольких потоках.
Объясните, что такое фиксированный временной шаг в Unity3D? Почему настройка фиксированного времени влияет на скорость игры?

Функция Fixed Timestep помогает установить обновления системы через фиксированный интервал времени. Механизм, подобный очереди, будет управлять всеми событиями в реальном времени, которые накапливаются между временными эпохами.

Если частота кадров упадет ниже некоторого порогового значения, установленного для фиксированного временного шага, это может повлиять на скорость игры.
В чем разница между методами Dispose() и Finalize()?

Основное различие между обоими методами заключается в том, что метод Dispose() используется для освобождения неуправляемых ресурсов объекта, а метод Finalize также используется для той же цели, но он не гарантирует сбор мусора объекта. Еще одним важным отличием является то, что метод Dispose() вызывается пользователем явно, а метод Finalize() вызывается сборщиком мусора непосредственно перед уничтожением объекта.
Различия между интерфейсом и абстрактным классом в .NET

Интерфейс определяет набор поведения, которым должны обладать классы, его реализующие. Он включает только объявления свойств, методов и событий, без указания модификаторов доступа. Все члены интерфейса обязательно должны быть реализованы в классах, которые его используют.

Абстрактный класс, в свою очередь, предлагает частичную реализацию функциональности и может содержать как абстрактные, так и виртуальные члены, которые должны быть реализованы наследующими его классами. Кроме того, абстрактный класс может содержать поля.
Важно отметить, что ни интерфейс, ни абстрактный класс не могут быть инстанцированы.
👔💼 Как ответить на собеседовании, почему вы уволились с прошлого места работы: 9 вариантов ответа

А также примеры того, как говорить точно не надо 🌚

👉Читать
Простой способ сравнить массивы в C# — используйте метод Enumerable.SequenceEqual.
Напишите различные события страницы в ASP.NET.

📌 Преинициализация
📌 Инициализация
📌 InitComplete
📌 LoadViewState
📌 LoadPostData
📌 Предварительная загрузка
📌 Загрузка
📌 Загрузка завершена
📌 Предварительная визуализация
📌 PreRenderComplete
📌 SaveStageComplete
📌 Выгрузка
Опишите элемент управления TreeView?

Элемент управления TreeView состоит из узлов. Каждая запись в дереве называется узлом и представлена ​​объектом TreeNode. Узел, содержащий другие узлы, называется родительским узлом. Узел, содержащийся в другом узле, называется дочерним узлом. Узел, не имеющий дочерних узлов, называется листовым узлом. Узел может быть как родительским, так и дочерним, но корневые, родительские и листовые узлы являются взаимоисключающими. Несколько визуальных и поведенческих свойств узлов определяются тем, является ли узел корневым, родительским или листовым узлом.
Зачем в C# используется блок finally?

Блок finally всегда выполняется независимо от того, есть исключение или нет. Когда код выполняется в блоке try и возникает исключение, управление возвращается в блок catch, и в конце выполняется блок finally. Таким образом, блок finally может содержать закрытие соединений с базой данных и освобождение обработчиков файлов.