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

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

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

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

Наши каналы: https://yangx.top/proglibrary/9197
加入频道
📝 Структуры данных: ТОП-30 вопросов и ответов для собеседований в 2025 году

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

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

📄 Прочитайте статью и укрепите свои знания https://proglib.io/sh/1uYAygzIxr

Библиотека питониста
🦾 Что такое абстракция и как она связана с ООП?

Под абстракцией понимается модель реальной жизни, упрощенная для решения конкретной задачи, которая выражена в объекте, то есть любой объект — это абстракция, так как она только частично описывает реальную сущность. Поэтому любой объект можно считать абстракцией и он только частично описывает реальную сущность. Во время преобразования реальных сущностей в объект, он лишается тех характеристик, которые являются несущественными деталями.

Например можно составить упрощенный класс человека, который умеет двигаться, а от всего остального мы абстрагируемся (в данным случае несущественно то, что он умеет дышать, кушать, видеть, слышать и так далее).
✍🏻 Как в Unity обрабатывается физика на объектах с компонентами Rigidbody в сценах с множественными активными камерами, и как это может повлиять на производительность игры?

В Unity, когда на сцене присутствуют множественные активные камеры, физические расчеты для объектов с компонентами Rigidbody выполняются независимо от количества камер. Физика обрабатывается на уровне движка и не дублируется для каждой камеры.

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


Библиотека собеса по C#
В чем разница между Update и FixedUpdate в Unity, и какие сценарии лучше всего подходят для каждого из них?

В Unity, Update вызывается один раз за кадр и идеально подходит для большинства обновлений игровой логики, таких как получение ввода пользователя и перемещение персонажей. FixedUpdate, с другой стороны, вызывается с фиксированным интервалом времени и лучше всего подходит для обновлений, связанных с физикой, таких как применение сил, поскольку это обеспечивает более стабильное и предсказуемое поведение физической системы.

Библиотека собеса по C#
В чем разница между dispose и finalize в C#?

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

Библиотека собеса по C#
spacer.gif
1.1 KB
🦾 Объясните различия между async void и async Task в C#. Когда вы бы использовали один вместо другого?

async void используется для обработчиков событий, и его следует избегать в большинстве других сценариев, поскольку это усложняет обработку ошибок. async Task используется для асинхронных методов, которые возвращают результат и позволяют лучше обрабатывать ошибки через свойство Exception Tasks.

Библиотека собеса по C#
🦾 Какая операция LINQ удаляет повторяющиеся элементы из результирующей последовательности?

Операция Distinct устраняет дубликаты из последовательности.

Библиотека собеса по C#
В чем разница между public, static и void?

Публично объявленные переменные или методы доступны в любом месте приложения. Статически объявленные переменные или методы доступны глобально без создания экземпляра класса. Статический член по умолчанию не доступен глобально, это зависит от используемого типа измененного доступа. Компилятор сохраняет адрес метода в качестве точки входа и использует эту информацию, чтобы начать выполнение до создания каких-либо объектов. А Void — это модификатор типа, который указывает, что метод или переменная не возвращает никакого значения.

Библиотека собеса по С#
🎮💾 Оптимизация памяти в Unity: как избежать лагов и повысить FPS в играх

Оптимизация памяти в Unity — ключ к стабильной работе игр. Если хочется избежать лагов и повысить FPS, важно правильно управлять памятью. Использование эффективных методов загрузки и выгрузки данных, уменьшение количества аллокаций и грамотное применение сборщика мусора помогут улучшить производительность и стабильность игры.

➡️ Подробнее в статье

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
✍🏻 Опишите модификатор «protected internal»

Члены с таким модификатором доступны классам, находящимся в той же сборке и унаследованным от данного класса.

Библиотека собеса по С#
💬 Как оставлять комментарии в чате нашего канала

В нашем чате работает бот Shieldy — он защищает от спама, запрашивая у новых участников решение простой капчи.

⚠️ Проблема, с которой сталкиваются многие: вы нажимаете под постом «Прокомментировать», пишете что-то, а потом получаете бан и не можете писать комментарии.

Почему так: Shieldy отправляет капчу в сам чат, а не в комментарии под конкретный пост. Из-за этого капчу можно не увидеть, не отправить ответ на нее, и бот автоматически заблокирует вас.

Как присоединиться к чату, чтобы бот вас не забанил

— Зайдите в описание канала с телефона и нажмите кнопку Discuss / Чат
— Нажмите Join / Присоединиться
— Сразу обратите внимание на сообщение от бота Shieldy
— Решите простой пример и отправьте ответ в чат

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

❗️ Если вас все-таки забанили

— Это временная блокировка на несколько минут
— Подождите и попробуйте зайти позже, бот снова отправит вам капчу

Админы канала никак не могут ускорить процесс, бот автоматически снимает с вас блокировку через пару минут. Мы понимаем, что эта система неидеальна, и ищем более удобное решение.

👾 Спасибо, что активно участвуете в обсуждении наших постов!
Please open Telegram to view this post
VIEW IN TELEGRAM
Каковы наиболее распространенные вопросы на собеседованиях по ASP.NET?

— Что такое ASP.NET?
— Каковы преимущества
ASP.NET?
— Каковы различные типы приложений
ASP.NET?
— Что такое шаблон MVC?
— Как создать веб-приложение в
ASP.NET?
— Как обрабатывать ввод данных пользователем в
ASP.NET?
— Как защитить веб-приложение в
ASP.NET?
— Как подготовиться к собеседованию по
ASP.NET?

Библиотека собеса по С#
✍🏻 Какая из операций linq исключает дублирование одинаковых элементов в выходной последовательности?

Операция Distinct удаляет дублированные элементы из входной последовательности.

Библиотека собеса по С#
✍🏻 Каков реальный вариант использования ключевого слова «yield» в C#?

Ключевое слово yield в C# используется в методах итераторов для создания итератора с отслеживанием состояния и возврата последовательности значений «на лету», без сохранения всей последовательности в памяти. Он создает пользовательскую реализацию интерфейса IEnumerator на основе кода метода итератора и запоминает текущее состояние выполнения между вызовами MoveNext(). Такая ленивая оценка итератора улучшает использование памяти и производительность, особенно для больших или бесконечных последовательностей.

Библиотека собеса по С#
💾 Как выбрать стратегию кэширования: разбор 7 популярных алгоритмов

Кешировать нужно с умом. И нет, LRU — не серебряная пуля.

В статье вас ждёт разбор алгоритмов: LRU, LFU, FIFO и другие
– Примеры, где каждый работает лучше
– Плюсы и минусы подходов
– Практические советы по выбору стратегии

Если проектируете систему с большими нагрузками или оптимизируете производительность — материал будет как раз.

➡️ Читать статью

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
✍🏻 Какие реализации DI контейнеров вы знаете на C#. Какой DI контейнер является лучшим?

Castle Windsor, Autofac, Ninject, Unity... и так далее, на самом деле их очень много. Насчет того, какой из них лучший — не совсем корректный вопрос. Все зависит от конкретной реализации.

Библиотека собеса по С#
#️⃣🏗 Как не запутаться в структурах данных в Unity и C#

Когда работаете с Unity, почти каждая система — это работа с данными. Инвентарь, состояния врагов, квесты, сохранения. И вот тут важно не просто «что-то завести», а осознанно выбрать структуру данных под задачу.

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

➡️ Подробности в статье

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
✍🏻 В чем разница между абстрактными и виртуальными классами? Между виртуальными и абстрактными методами?

Абстрактный класс — это класс, помеченный ключевым словом abstract. В абстрактном классе содержатся абстрактные члены (методы, свойства, индексаторы, события), они не имеют внутренней реализации и выступают в роли интерфейса. Они так же обязаны быть помечены ключевыми словом abstract. При наследовании от абстрактного класса класс-наследник получает все свойства своего класса родителя, а если в родительском классе есть еще и абстрактные члены, то в классе наследнике обязательно их нужно переопределять.
Виртуальный класс, это просто класс в котором есть виртуальные члены (методы, свойства...). Виртуальные члены помечаются модификатором virtual и имеют внутреннюю реализацию, которая может быть переопределена в классе наследнике.


Библиотека собеса по С#