C# | Вопросы собесов
Відкрити в Telegram
Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @sendme_ads
Показати більше5 003
Підписники
-324 години
-97 днів
-730 днів
Архів дописів
5 003
Jobski - твой помощник при поиске работы в IT
Сервис индивидуально подбирает вакансии, учитывая ваш опыт, навыки и стек технологий.
Узнать больше
#реклама
jobski.ru
О рекламодателе
5 003
🤔 Какой атрибут в C# используется для определения, должен ли метод быть включен в XML-документацию?
5 003
Запустите рекламу в телеграм-каналах с Яндекс Директом
Перфоманс-реклама теперь в телеграм-каналах ⚡
Яндекс Директ знает, как привлечь целевую аудиторию 💰👌
Попробовать
#реклама
yandex.ru
О рекламодателе
5 003
📌 Какие бывают типы данных?
💬 Спрашивают в 22% собеседований
В C# существует множество различных типов данных, которые можно разделить на две основные категории: значимые типы (value types) и ссылочные типы (reference types). Рассмотрим каждую из этих категорий и их подтипы.
🤔 Значимые типы (Value Types)
Значимые типы хранят данные непосредственно в своей памяти. Они обычно располагаются в стеке и имеют фиксированный размер. К значимым типам относятся:
1️⃣ Простые типы (Simple Types)
➕ Числовые типы
➕ Целочисленные типы:
➕
byte (8 бит)
➕ sbyte (8 бит)
➕ short (16 бит)
➕ ushort (16 бит)
➕ int (32 бита)
➕ uint (32 бита)
➕ long (64 бита)
➕ ulong (64 бита)
➕ Вещественные типы:
➕ float (32 бита)
➕ double (64 бита)
➕ Десятичный тип:
➕ decimal (128 бит)
➕ Логический тип
➕ bool (1 бит, значения true или false)
➕ Символьный тип
➕ char (16 бит, символы в формате Unicode)
2️⃣ Структуры (Structs)
➕ Пользовательские типы, которые могут содержать поля, свойства и методы.
➕ Пример: struct Point { public int X; public int Y; }
3️⃣ Перечисления (Enums)
➕ Специальные типы, представляющие набор именованных констант.
➕ Пример: enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }
4️⃣ Nullable Types
➕ Типы, которые могут принимать значение null.
➕ Пример: int?, double?
🤔 Ссылочные типы (Reference Types)
Ссылочные типы хранят ссылки на данные, которые размещаются в куче. К ссылочным типам относятся:
1️⃣ Классы (Classes)
➕ Основные объекты в C#, могут содержать поля, свойства, методы и события.
➕ Пример: class Person { public string Name; public int Age; }
2️⃣ Интерфейсы (Interfaces)
➕ Определяют контракт, который должны реализовать классы.
➕ Пример: interface IMovable { void Move(); }
3️⃣ Массивы (Arrays)
➕ Коллекции однотипных элементов.
➕ Пример: int[] numbers = new int[5];
4️⃣ Делегаты (Delegates)
➕ Типы, которые представляют собой ссылки на методы.
➕ Пример: delegate void Process(int value);
5️⃣ Строки (Strings)
➕ Непосредственно представляют собой последовательность символов.
➕ Пример: string message = "Hello, World!";
6️⃣ Записи (Records)
➕ Новый тип в C# 9.0, предназначенный для неизменяемых объектов.
➕ Пример: record Person(string Name, int Age);
🤔 Примеры и использование
🤔 Значимые типы int a = 5;
float b = 3.14f;
bool isTrue = true;
char letter = 'A';
🤔 Ссылочные типы string message = "Hello, World!";
Person person = new Person { Name = "Alice", Age = 30 };
int[] numbers = new int[] { 1, 2, 3, 4, 5 };
🤔 Краткий ответ
Типы данных в C# делятся на значимые и ссылочные. Значимые типы хранят данные непосредственно, а ссылочные типы хранят ссылки на данные в памяти.
🔥 ТОП ВОПРОСОВ С СОБЕСОВ
🔒 База собесов | 🔒 База тестовых5 003
🔥 Битый код - канал для настоящих кодеров!
🔴 Тебе надоело сталкиваться с багами и ошибками в коде?
🔴 Хочешь прокачать свои навыки и узнать, как эффективно решать сложные задачи?
⭐️ Тогда тебе к нам! На канале Битый код ты найдешь:
🟡 Советы по оптимизации кода
🟡 Практические примеры и решения
🧠 Развивай свои навыки программирования вместе с нами и становись настоящим профессионалом!
🔥 Присоединяйся к Битому коду и учись исправлять ошибки как настоящий мастер.
5 003
Как предпринимателям продвигать свой бизнес в интернете
Узнайте на бесплатном интенсиве Яндекс Рекламы «Про движение малого бизнеса: настраиваем рекламу с нуля».
За 4 недели разберётесь в рекламных инструментах, научитесь рассчитывать бюджет, самостоятельно настраивать кампанию и анализировать результаты.
Стартуем 5 августа! Регистрируйтесь:
Зарегистрироваться
#реклама 16+
yandex.ru
О рекламодателе
5 003
🤔 Какое пространство имён в C# обычно используется для работы с веб-запросами?
5 003
🤯 Чтобы не сидеть в творческом беспорядке, структурируй его с помощью Куб прогресса.
Тут ты найдешь кучу советов для ITшника:
🟡 пользуйся полезными сайтами
🟡 подчеркивай интересные мысли
🛞 Начинай внедрять лайфхаки - создай структуру внутри себя
5 003
Repost from Backend
В приватной базе собесов уже больше 100 записей. Яндекс, Тиньков, Сбербанк, Самокат, Озон и другие крупные компании в базе.
5 003
📌 Зачем сделали ref & out для ссылочных типов?
💬 Спрашивают в 22% собеседований
В C# ключевые слова
ref и out используются для передачи аргументов по ссылке, что позволяет методам изменять значения этих аргументов. Эти механизмы полезны как для значимых типов (структур), так и для ссылочных типов (объектов). Давайте рассмотрим более детально, зачем и как их используют для ссылочных типов.
🤔 Зачем нужны `ref` и `out` для ссылочных типов?
🤔 `ref`
➕ Изменение самого объекта: С помощью ref можно передавать ссылочные типы таким образом, чтобы метод мог изменять саму ссылку, то есть ссылаться на другой объект.
➕ Пример: Представим себе метод, который принимает объект и может его заменить новым объектом.
🤔 `out`
➕ Передача непроинициализированных объектов: Ключевое слово out позволяет передавать аргумент, который не обязательно должен быть инициализирован до вызова метода. Метод, принимающий out аргумент, обязан присвоить ему значение до завершения работы.
➕ Пример: Метод, который инициализирует и возвращает объект.
🤔 Как используются `ref` и `out`?
🤔 Пример использования `ref`
class Program
{
static void ChangeReference(ref MyClass obj)
{
obj = new MyClass { Value = 20 };
}
static void Main()
{
MyClass myObj = new MyClass { Value = 10 };
ChangeReference(ref myObj);
Console.WriteLine(myObj.Value); // Output: 20
}
}
class MyClass
{
public int Value { get; set; }
}
В этом примере ref позволяет методу ChangeReference изменить ссылку myObj на новый объект MyClass.
🤔 Пример использования `out`
class Program
{
static void InitializeObject(out MyClass obj)
{
obj = new MyClass { Value = 30 };
}
static void Main()
{
MyClass myObj;
InitializeObject(out myObj);
Console.WriteLine(myObj.Value); // Output: 30
}
}
class MyClass
{
public int Value { get; set; }
}
В этом примере метод InitializeObject использует out для создания и инициализации нового объекта MyClass.
🤔 Почему это нужно?
1️⃣ Гибкость: ref и out добавляют гибкости при работе с методами, позволяя им изменять ссылки на объекты или создавать и возвращать новые объекты.
2️⃣ Оптимизация: Эти механизмы могут быть полезны для оптимизации, когда необходимо избежать лишнего копирования данных, особенно при работе с большими объектами.
3️⃣ Логика инициализации: out полезен для методов, которые должны вернуть несколько значений или инициализировать объекты, которые не могут быть инициализированы заранее.
🤔 Краткий ответ
ref и out используются для передачи объектов по ссылке, что позволяет методам изменять ссылки на объекты или инициализировать их. Это добавляет гибкости и позволяет оптимизировать работу с памятью.
🔥 ТОП ВОПРОСОВ С СОБЕСОВ
🔒 База собесов | 🔒 База тестовых5 003
Реклама для бизнеса любого уровня в Яндекс Директе
Создайте эффективную рекламную кампанию с алгоритмами Яндекс Директа 👌
Начните прямо сейчас ⚡
Зарегистрироваться
#реклама
direct.yandex.ru
О рекламодателе
5 003
👩💻 Программирование теперь в телеграм!
Вот обширная база материалов, которая ежедневно обновляется, выбирай своё направление:
Обучение JavaScript с нуля
Обучение Python с нуля
Обучение Java с нуля
Обучение HTML/CSS с нуля
Обучение C/С++ с нуля
Обучение С# с нуля
Обучение SQL/GO/PHP с нуля
Обучение Kotlin/Swift с нуля
⛓ Архив на 3489ГБ: Курсы, книги, шпаргалки, статьи, видео, ресурсы — всё собрано в одном месте: @roadmap_ready
5 003
Обучаем Java-разработчиков оплата после выхода на работу
В Kata Academy можно выучиться на Java-разработчика бесплатно, а заплатить уже после трудоустройства по специальности из фактической зарплаты.
Если задуматься, то все в выигрыше:
— ты получаешь работу в Москве или Санкт-Петербурге с хорошей зарплатой, мы получаем процент за инвестиции в тебя;
— в наших интересах научить тебя так, чтобы твоя зарплата была как можно выше;
— мы прокачиваем твои навыки еще 2 года после курса: проводим выездные мероприятия и мастер-классы — и доходы наших выпускников растут;
— мы не зависим от банков и их рассрочек — кризис не повлиял на доступность курсов.
Чтобы попасть на курс, нужно выполнить небольшое тестовое задание. Переходи по ссылке и оставляй заявку!
Узнать больше
#реклама 16+
kata.academy
О рекламодателе
5 003
🤔 Какое ключевое слово используется для определения асинхронного метода в C#?
5 003
🌊 Водоворот знаний в Кодовороте
🤿 Погружайся в мир лучших видео уроков по программированию. Каждый день на канале выходит полезный контент. Кодируй своё будущее вместе с нами!
⛓ Подпишись
5 003
📌 Garbage collectior что это?
💬 Спрашивают в 22 % собеседований
Garbage Collector (GC) — это механизм управления памятью в среде выполнения .NET, который автоматически освобождает память, занимаемую объектами, которые больше не используются приложением. Это важная часть управления ресурсами в .NET, так как она предотвращает утечки памяти и улучшает общую производительность приложения. Вот основные аспекты работы Garbage Collector и его преимущества:
🤔 Основные функции Garbage Collector
1️⃣ Автоматическое управление памятью:
GC автоматически отслеживает объекты, создаваемые в управляемой куче (managed heap), и освобождает память, занимаемую объектами, которые больше не достижимы или не используются приложением. Это снижает необходимость ручного управления памятью и уменьшает вероятность утечек памяти.
2️⃣ Сборка мусора:
GC выполняет сборку мусора (garbage collection) в несколько этапов:
➕ Маркировка (Marking): GC определяет, какие объекты все еще достижимы и используются.
➕ Очистка (Sweeping): Память, занимаемая недостижимыми объектами, освобождается.
➕ Компактирование (Compacting): Память, занимаемая достижимыми объектами, перемещается для сокращения фрагментации.
3️⃣ Поколения объектов:
Объекты в управляемой куче делятся на поколения (Generation):
➕ Generation 0: Новые объекты, которые недавно созданы. Сборка мусора для этого поколения выполняется чаще.
➕ Generation 1: Объекты, которые пережили хотя бы одну сборку мусора.
➕ Generation 2: Объекты, которые живут достаточно долго и пережили несколько сборок мусора.
Такое разделение помогает оптимизировать производительность сборки мусора, так как более молодые объекты имеют большую вероятность стать недостижимыми быстрее, чем старые.
4️⃣ Сборка в фоновом режиме:
.NET GC поддерживает сборку мусора в фоновом режиме, что позволяет минимизировать паузы в работе приложения за счет выполнения сборки мусора параллельно с основной работой приложения.
🤔 Преимущества Garbage Collector
1️⃣ Простота использования:
Программисты могут сосредоточиться на логике приложения, не заботясь о ручном управлении памятью, что упрощает разработку и снижает вероятность ошибок.
2️⃣ Предотвращение утечек памяти:
GC автоматически освобождает память, занимаемую недостижимыми объектами, что помогает предотвратить утечки памяти, которые могут привести к снижению производительности и нестабильности приложения.
3️⃣ Оптимизация использования памяти:
GC периодически выполняет компактирование памяти, что снижает фрагментацию и улучшает производительность приложения.
🤔 Пример работы Garbage Collector
Рассмотрим пример создания объектов в C# и как GC их обрабатывает:
class Program
{
static void Main()
{
// Создание объектов
for (int i = 0; i < 100; i++)
{
MyClass obj = new MyClass();
}
// Вызов сборки мусора вручную (обычно не рекомендуется)
GC.Collect();
GC.WaitForPendingFinalizers();
}
}
class MyClass
{
~MyClass()
{
// Финализатор, который вызывается перед удалением объекта
Console.WriteLine("Объект удален");
}
}
В этом примере создается 100 объектов класса MyClass. Когда они выходят из области видимости, GC может освободить память, занимаемую этими объектами.
🤔 Краткое резюме:
Garbage Collector автоматически управляет памятью, освобождая память, занимаемую неиспользуемыми объектами. Это упрощает разработку, предотвращает утечки памяти и улучшает производительность приложения.
🔥 ТОП ВОПРОСОВ С СОБЕСОВ
🔒 База собесов | 🔒 База тестовых5 003
Экраны и меню борды для кафе и фастфуда. От 150.000 р
Внедрение цифровых меню бордов "под ключ" от ведущего интегратора
Рассчитайте стоимость меню бордов, ответив всего на 5 вопросов!
В подарок скидка 15% на дизайн анимированного меню.
Перейти на сайт
#реклама
quiz.in-gr.ru
О рекламодателе
5 003
🤔 Какой модификатор доступа в C# делает класс или член доступным только внутри своей сборки?
5 003
👨💻 Чтобы стать более востребованным перцем в IT индустрии неплохо бы знать английский.
Канал Hello Word в игровом стиле поможет улучшить твой English skill.
🤓У нас ты найдешь:
🟡 Тесты с пропуском слов
🟡 Мемы на английском
🟡 Полезные шпаргалки для изучения
😎 Расширяй свои навыки и покоряй начинай покорять западную индустрию.
Испытай свои знания и попробуй пройти тест.
