Встречается на собеседованиях • сегодня
Есть ли опыт работы с Legacy
Да, есть. Работал с Legacy-кодом на C# — это обычно старые проекты с устаревшими фреймворками (.NET Framework 4.x и ниже), сложной архитектурой, слабой документированностью и тестами.
Основные задачи:
- Рефакторинг (разбиение монолитных методов, замена устаревших API).
- Миграция с устаревших технологий (WebForms, WCF → ASP.NET Core).
- Добавление модульных тестов (использовал Moq, NUnit).
Пример:
csharp
// Было (Legacy-код с жесткой связностью)
public class OrderService
{
public void ProcessOrder(Order order)
{
var db = new SqlConnection("...");
db.Save(order); // Прямая работа с БД в сервисе
}
}
// Стало (DI + рефакторинг)
public class OrderService(IOrderRepository repo)
{
public void ProcessOrder(Order order) => repo.Save(order);
}Сложности:
- Понимание "спагетти-кода" без документации.
- Риск сломать функционал при изменениях.
- Координация с командой, чтобы не нарушить работу legacy-систем.
Работал по принципу "не сломать → покрыть тестами → улучшать".

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы