Latest Posts from C# | Тесты (@easy_c_sharp_tests) on Telegram

C# | Тесты Telegram Posts

C# | Тесты
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.me/+sjKGQXl79ytkYzIy
Задачи t.me/+Xy-0H7xKlgo0NDVi
Ваканасии t.me/+BQFHXZQ0zrViNGIy
2,603 Subscribers
3 Photos
1 Videos
Last Updated 25.02.2025 20:23

The latest content shared by C# | Тесты on Telegram


Привет, ребята!
1,5 года я учился на программиста, а сайт easyoffer.ru стал моим пет-проектом. Я создавал его, потому что:
а) нужно было добавить хоть какой-нибудь проект в резюме
б) подготовиться к прохождению собесов

И всё получилось! Благодаря еasyoffer я успешно прошёл собеседование и устроился Python Junior-разработчиком на удаленку с зарплатой 115 тысяч рублей.

Однако ещё во время разработки я понял, что у этого проекта есть потенциал. Казалось, что сайт может стать популярным и, возможно, превратиться в стартап.

По-этому я с самого начала заложил в проект минимальную бизнес-модель, на случай, если сайт начнёт набирать трафик. Я предложил пользователям полный доступ к сайту в обмен на подписку на Telegram-каналы. Это позволяло развивать аудиторию, а в будущем — зарабатывать на рекламе.

Результат превзошёл ожидания!
С момента запуска easyoffer посетило 400 тысяч человек. А когда доход с рекламы превысил мою зарплату программиста, я принял решение уйти с работы и полностью посвятить себя разработке новой версии сайта.

Вот так, зайдя в IT, через 4 месяца вышел через свой же пет-проект. Мне очень повезло

Уже год я работаю над easyoffer 2.0.
Это будет более масштабный и качественной новый проект:
– Появится тренажер
– Появятся задачи из собесов
– Фильтрация контента по грейдам
и еще очень много фич, о которых я расскажу позже.

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

А те, кто поддержат проект первыми, получат специальные лимитированные выгодные вознаграждения. Следите за этим телеграм каналом, если хотите стать первыми сапортерами.

🤔 Как можно не используя middleware выполнить действие перед обработкой запроса и после?

1. Использовать фильтры — например, в
ASP.NET Core можно использовать ActionFilter для выполнения действий до и после метода контроллера.
2. Создать делегат обработки — добавить промежуточную логику в Use на уровне Startup.
3. Атрибуты и события — применять атрибуты для выполнения кода до обработки запроса.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний

🤔 Что бывает, когда количества подключений не хватает?

Когда лимит подключений к базе данных превышен:
1. Запросы начинают блокироваться, вызывая задержки.
2. Сервер может возвращать ошибки подключения.
3. Производительность приложения резко снижается. Решение: увеличить лимит подключений или оптимизировать запросы.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний

🤔 Как оптимизировать ситуацию, когда к таблице много join?

1. Проверить необходимость всех join — убрать ненужные связи.
2. Использовать индексы — создать индексы на ключевых колонках.
3. Разделить запрос — разбить сложный запрос на несколько более простых.
4. Использовать denormalization — объединить часто используемые данные в одну таблицу.
5. Кэшировать данные — уменьшить нагрузку на базу данных.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний

🤔 Как работают join?

join в LINQ или SQL объединяет данные из двух коллекций или таблиц на основе общего поля. Например, в SQL это выполняется через сравнение ключей, указанных в ON, а в LINQ — с помощью метода Join. Результат может быть внутренним (INNER JOIN), внешним (LEFT JOIN, RIGHT JOIN) или полным (FULL JOIN).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний

🤔 Где используется IQueryable?

IQueryable используется для создания запросов к источникам данных с возможностью отложенного выполнения. Оно позволяет строить сложные запросы, которые преобразуются в SQL-запросы или другие команды на этапе выполнения. Часто используется с ORM, такими как Entity Framework.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний

🤔 Что такое expression?

Это класс в .NET, представляющий выражение в виде объекта. Он используется для создания деревьев выражений, которые можно анализировать, изменять и компилировать в исполняемый код. Expression применяется, например, в LINQ для преобразования выражений в запросы к базам данных.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний

🤔 Как бы паттерн использовал для паттерна "разделяй и властвуй"?

Паттерн "разделяй и властвуй" можно реализовать через декомпозицию задач на мелкие независимые части (например, микросервисы или модули), обеспечивая их независимость. Каждая часть решает свою задачу, а общение между ними минимально, что упрощает масштабирование и поддержку.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний

🤔 Какие есть положительные и отрицательные моменты у микросервиса?

Положительные:
1. Масштабируемость отдельных компонентов.
2. Независимость разработки и деплоя.
3. Устойчивость: сбой одного микросервиса не влияет на другие.
Отрицательные:
1. Сложность управления распределённой системой.
2. Затраты на сетевые взаимодействия.
3. Сложность обеспечения целостности данных.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний

🤔 Что такое микросервис?

Это автономный, малый сервис, отвечающий за конкретную бизнес-задачу и взаимодействующий с другими через API. Каждый микросервис может быть разработан, развёрнут и масштабирован независимо.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний