en
Feedback
Библиотека собеса по C# | вопросы с собеседований

Библиотека собеса по C# | вопросы с собеседований

Open in Telegram

Вопросы с собеседований по C# и ответы на них. По рекламе: @proglib_adv Учиться у нас: https://clc.to/QRJIVw Для обратной связи: @proglibrary_feeedback_bot Наши каналы: https://t.me/proglibrary/9197

Show more
5 640
Subscribers
-224 hours
+47 days
+630 days
Posts Archive
🎓 Как я перешел из математиков в аналитики данных Сменить профессию — нелегко, самое сложное — заставить себя получать новые
🎓 Как я перешел из математиков в аналитики данных Сменить профессию — нелегко, самое сложное — заставить себя получать новые знания. Но у вас есть прекрасная возможность взять под контроль ваш путь к карьере в области Data Science. Узнайте, как получить работу аналитиком данных. 🔗 Ссылка

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

Можете ли вы объяснить различие между управляемой кучей в .NET и стеком, и как это влияет на управление памятью и производительность приложения? В .NET управляемая куча — это область памяти, используемая для размещения объектов, управляемых средой CLR (Common Language Runtime), которые уничтожаются автоматически с помощью сборщика мусора. Это помогает предотвратить утечки памяти и обеспечивает автоматизацию управления памятью. Стек используется для хранения примитивов и ссылок на объекты в куче, которые создаются в рамках потока исполнения и имеют время жизни, ограниченное текущим контекстом вызова (например, выполнением метода). Управление памятью в стеке более быстрое, поскольку объекты выделяются и освобождаются в порядке LIFO (Last In, First Out), что требует минимального управления. В куче же объекты могут быть размещены и освобождены в произвольном порядке, что требует более сложного управления и периодического запуска сборщика мусора, что может влиять на производительность. Однако куча позволяет работать с динамически создаваемыми объектами, что необходимо для большинства приложений.

Как вы можете управлять памятью в C# в сценарии, где у вас есть множество объектов с коротким временем жизни, создаваемых в высоконагруженной многопоточной среде, и какие подходы вы использовали бы для минимизации сборки мусора (GC)? В такой ситуации я бы использовал пул объектов для управления памятью. Пулинг объектов позволяет избежать частого создания и уничтожения объектов, что снижает нагрузку на сборщик мусора. Также можно использовать структуры (ValueType) вместо классов, где это возможно, чтобы уменьшить нагрузку на кучу. Помимо этого, важно тщательно управлять многопоточностью, чтобы избежать состояния гонки и утечек памяти.

🏅🏃 Кто такие Junior, Middle, Senior и чем они различаются между собой От стажеров до сеньоров — разбираемся, кто есть кто в
🏅🏃 Кто такие Junior, Middle, Senior и чем они различаются между собой От стажеров до сеньоров — разбираемся, кто есть кто в мире программирования и чем они отличаются друг от друга. ⛓️‍💥 Читать статью ⛓️‍💥 Зеркало

Что такое закрытый класс? Мы используем ключевое слово «sealed» для создания закрытого класса. Классы создаются как закрытый
Что такое закрытый класс? Мы используем ключевое слово «sealed» для создания закрытого класса. Классы создаются как закрытый класс, когда нет необходимости наследовать это дальше или когда есть необходимость ограничить наследование этого класса.

❗️Вакансии «Библиотеки программиста» — ждем вас в команде! Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем: 👉авторов в наше медиа proglib.io 👉контент-менеджеров для ведения телеграм-каналов Подробности тут. Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴 Ждем ваших откликов 👾

Как использовать типы, допускающие значение NULL, в C#? Чтобы присвоить нулевое значение типам значений в C#, мы должны использовать тип, допускающий значение Null. Это можно сделать либо с помощью ключевого слова Nullable, либо с помощью сокращенного оператора «?», как показано ниже. Nullable i = null; int? i = null; Невозможно использовать тип Nullable с переменными vartype, поскольку они не определены явно, а скорее неявно определяются значением, присвоенным переменной.

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

👩‍💻 Устали от постоянных ошибок в своем C#-коде? Часто замечаете проблемы с тестированием и не знаете, как правильно эмулир
👩‍💻 Устали от постоянных ошибок в своем C#-коде? Часто замечаете проблемы с тестированием и не знаете, как правильно эмулировать классы? Представьте себе мир, где ваш код становится надежным и тесты проходят безупречно. Вы уверены в программном обеспечении, так как оно прошло тщательное тестирование с использованием библиотек xUnit и NSubstitute. Ваши классы эмулируются без лишних проблем, и все работает как часы. 📆 Хотите это реализовать? Приглашаем вас на открытый вебинар «Тестируем код при помощи xUnit и NSubstitute» 4 июля в 20:00 мск. Там вы узнаете, как правильно и эффективно проводить тестирование C#-кода с использованием библиотеки xUnit, а также освоите эмуляцию классов при помощи NSubstitute. Это ваш шанс поднять свои навыки тестирования на новый уровень и избавиться от проблем с кодом навсегда! Не упустите возможность сделать ваш код надежным и продуктивным. Встречаемся в преддверии старта курса «C# Developer. Professional». Все участники вебинара получат специальную цену на обучение! ➡Регистрируйтесь прямо сейчас, чтобы посетить бесплатный урок: https://otus.ru/lessons/csharp-professional/?utm_source=telegram&utm_medium=cpm&utm_campaign=csharp&utm_content=lesson_04-07-2024_usp-universal_csharp__no-headline_bab_long_banner_lesson-banner_blue_standart&utm_term=csharp_interview_lib Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576 Erid 2Vtzqwv19C4

Что такое пространство имен и является ли оно обязательным? Ответ: Пространство имен — это способ организации классов одной и
Что такое пространство имен и является ли оно обязательным? Ответ: Пространство имен — это способ организации классов одной и той же группы или функциональности под одним и тем же именем. Мы можем назвать это модулем. Хотя не обязательно помещать класс в пространство имен.

👩‍💻 Устали от постоянных ошибок в своем C#-коде? Часто замечаете проблемы с тестированием и не знаете, как правильно эмулир
👩‍💻 Устали от постоянных ошибок в своем C#-коде? Часто замечаете проблемы с тестированием и не знаете, как правильно эмулировать классы? Представьте себе мир, где ваш код становится надежным и тесты проходят безупречно. Вы уверены в программном обеспечении, так как оно прошло тщательное тестирование с использованием библиотек xUnit и NSubstitute. Ваши классы эмулируются без лишних проблем, и все работает как часы. 📆 Хотите это реализовать? Приглашаем вас на открытый вебинар «Тестируем код при помощи xUnit и NSubstitute» 4 июля в 20:00 мск. Там вы узнаете, как правильно и эффективно проводить тестирование C#-кода с использованием библиотеки xUnit, а также освоите эмуляцию классов при помощи NSubstitute. Это ваш шанс поднять свои навыки тестирования на новый уровень и избавиться от проблем с кодом навсегда! Не упустите возможность сделать ваш код надежным и продуктивным. Встречаемся в преддверии старта курса «C# Developer. Professional». Все участники вебинара получат специальную цену на обучение! ➡Регистрируйтесь прямо сейчас, чтобы посетить бесплатный урок: https://otus.ru/lessons/csharp-professional/?utm_source=telegram&utm_medium=cpm&utm_campaign=csharp&utm_content=lesson_04-07-2024_usp-universal_csharp__no-headline_bab_long_banner_lesson-banner_blue_standart&utm_term=csharp_interview_lib Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576 Erid 2Vtzqwv19C4

В чем разница между «Break» и «Continue» в C#? break: используется в циклах (for и т. д.) и операторах переключения, завершает итерацию/переключение и пропускает весь оставшийся код в цикле или блоке переключения. continue: используется только в циклах, пропускает весь оставшийся код в цикле и начинает следующую итерацию с начала цикла.

🗣️ «Иногда решение не в изменении системы, а в изменении отношения заказчика». Интервью с системным аналитиком Системный ана
🗣️ «Иногда решение не в изменении системы, а в изменении отношения заказчика». Интервью с системным аналитиком Системный аналитик Ярослав Атрохов рассказал нам об особенностях работы с заказчиками, многозадачности, сложностях профессии и важности команды. Обновлённую статью можно прочесть по этой ссылке👈

Какие есть различия между GameObject и MonoBehaviour? GameObject — это базовая единица в Unity, которая представляет собой объект в сцене. MonoBehaviour — это компонент, который может быть добавлен к GameObject для расширения его функциональности. Этот вопрос является сложным, потому что он требует понимания основ объектов и компонентов в Unity. GameObject и MonoBehaviour — это две ключевые концепции в Unity, и важно понимать разницу между ними, чтобы создавать эффективные игры.

Перечислите этапы компиляции кода на C#. Вот четыре шага: предварительная обработка, компиляция, сборка, связывание.

Ozon Tech ищет C#-разработчиков в департамент Логистики Это работа с высоконагруженными системами, актуальным стеком и интере
Ozon Tech ищет C#-разработчиков в департамент Логистики Это работа с высоконагруженными системами, актуальным стеком и интересными задачами — вся рутина в Ozon автоматизирована. Что требуется от кандидата: – уровень middle или senior, – опыт в коммерческой разработке от 3 лет, – навыки работы с .NET 8, SQL, брокерами сообщений. Узнать больше о командах, стеке и задачах и оставить заявку можно тут

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

Как ключевое слово volatile работает в C#? Когда и как его следует использовать? Ключевое слово volatile используется для того, чтобы значение переменной всегда считывалось и записывалось в основную память, а не из кэша. Используйте его, если у вас есть переменная, совместно используемая несколькими потоками, и вы хотите избежать потенциальных проблем с видимостью или устаревших значений.

🎓 Продвинутый SQL: секреты профессионалов Рассказываем о сложных стратегиях оптимизации запросов, продвинутых типах соединен
🎓 Продвинутый SQL: секреты профессионалов Рассказываем о сложных стратегиях оптимизации запросов, продвинутых типах соединений и тонкостях использования SELECT. Читать статью #туториал