Профессор Си
2.95K subscribers
94 photos
2 videos
111 links
Уроки, советы, новости C#.
Download Telegram
⌨️ Два подхода DDD: Rich Model vs Anemic Model

Приглашаем на открытый урок.

🗓 24 июня в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «C# Developer Professional».

На вебинаре:
✔️ Разбор концепций: чем анемичная модель (Anemic Model) отличается от богатой (Rich Model)
✔️ Рассмотрим, когда что выбрать
✔️ Оценим преимущества и недостатки каждой из моделей

Кому будет полезно:
- Всем, кто стремится глубже понять DDD
- .NET-разработчикам, проектирующим сложные системы с долгосрочной поддержкой
- Студентам, изучающим паттерны проектирования и чистую архитектуру

Чему научатся участники по итогам вебинара:
- Понимать, когда код попадает в антипаттерн Anemic Model
- Проектировать сущности с бизнес-логикой внутри
- Выбирать компромиссы: скорость разработки (Anemic) vs гибкость/безопасность (Rich).

🔗 Ссылка на регистрацию: https://vk.cc/cMYGq7

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Задачка: Умножение на длину

Напишите функцию, умножающую все значения в массиве на количество значений в заданном массиве.

Примеры:
MultiplyByLength([2, 3, 1, 0]) ➞ [8, 12, 4, 0]
MultiplyByLength([4, 1, 1]) ➞ ([12, 3, 3])
MultiplyByLength([0]) ➞ ([0])

Пишите ваши варианты в комментариях. Ответ будет в канале завтра.

#задача
🔥2
using System.Linq;
public class Program
{
public static int[] MultiplyByLength(int[] arr)
{
var multiplier = arr.Length;
return arr.Select(x => x * multiplier).ToArray();
}
}


#задача #ответ
👍21
⌨️ Хотите прокачаться в разработке на C# и .NET? Овладейте лучшими практиками!

🎯 Курс «C# Developer. Professional» от OTUS — это актуальная программа для тех, кто хочет прокачать свои навыки разработки, работы с микросервисами и создания сложных клиент-серверных приложений. Программа включает реальную практику с использованием Scrum-методики, что помогает вам сразу внедриться в командную работу и работать по методологии, актуальной для крупных ИТ-компаний.

Освежите и углубите свои знания C# и .NET.

Вы научитесь:

✔️ Разрабатывать сложные приложения и микросервисы.
✔️ Работать с многопоточностью, асинхронностью и рефлексией.
✔️ Применять паттерны проектирования и LINQ.
✔️ Работать с SQL и NoSQL-базами данных, Unit-тестами и CI/CD.

➡️ Пройдите короткий тест и присоединяйтесь к группе: https://vk.cc/cNacIN

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
Selenium with C#

Автор:
Pallavi Sharma
Год издания:
2023

#selenium #csharp #en

Скачать книгу
👍1
🐢 Столкнулись с «тормозным» C#-кодом? Медленные алгоритмы могут растянуть выполнение задачи на минуты вместо миллисекунд.

📅 Приглашаем на открытый урок «Анализ сложности алгоритмов и сортировка на C#» 3 июля в 20:00 МСК.

Разберём, что такое Big O, какие факторы влияют на скорость, и на практике напишем пузырьковую, вставками и другие сортировки.

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

Регистрируйтесь сейчас — урок проходит перед стартом курса «C# Developer»: https://vk.cc/cNiiau

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Задачка: Удаление первого и последнего символов

Напишите функцию, удаляющую из строки первый и последний символы.

Примеры:
RemoveFirstLast("maybe") ➞ "ayb"
RemoveFirstLast("benefit") ➞ "enefi"
RemoveFirstLast("a") ➞ "a"

Пишите ваши варианты в комментариях. Ответ будет в канале завтра.

#задача
public class Program
{
public static string RemoveFirstLast(string str)
{
return str.Length <= 2 ? str : str.Substring(1, str.Length - 2);
}
}

#задача #ответ
🦄2
🤝 Тормозит карьерный рост? Упираетесь в потолок с текущими навыками на C#? Новые проекты ускользают, а вы застряли на уровне Middle?

🔥 Пройдитет тест! 💻 Ответьте на 32 вопроса и узнайте, достаточно ли у вас знаний, для обучения на онлайн-курсе «C# Developer. Professional» от OTUS.

Вас ждут реальные проекты в Scrum-командах, продвинутый уровень работы с C#, освоение SQL и NoSQL, кэширование, Unit-тесты и CI/CD.

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

👉 Пройдите тест и присоединяйтесь к группе: https://vk.cc/cNlQtj

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
Какая из строк (помечены комментариями) вызовет ошибку компиляции?

interface IList
{
int Count { get; set; }
}

interface ICounter
{
void Count(int i);
}

interface IListCounter:IList, ICounter { }

class C
{
void Test(IListCounter x) //1
{
x.Count(1); //2
x.Count = 1; //3
}
}
public class Program
{
private static void Main(string[] args)
{

}
}
Please open Telegram to view this post
VIEW IN TELEGRAM
Какая из строк вызовет ошибку компиляции?
Anonymous Quiz
18%
1
23%
2
24%
3
35%
Ошибки не возникнет
👩‍💻 🎯 Открытый урок «Асинхронность в C#: за гранью await. Паттерны, ошибки и оптимизация для профессионалов».

🗓 17 июля в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «C# Developer. Professional».

Что будет на вебинаре:
✔️ Разбор сложных сценариев: цепочки задач, параллельный async, комбинирование с параллелизмом (Task, Parallel, async).
✔️ Распространенные ошибки (deadlocks, async void, контексты синхронизации) и как их точно избегать.
✔️ Паттерны: CancellationTokens, ValueTask, IAsyncDisposable, кастомные awaiterы (обзорно).
✔️ Когда и как измерять производительность async кода, что может стать узким местом.
✔️ Best practices для реальных высоконагруженных сценариев.

Кому будет полезно:
- Разработчикам C# с опытом (Mid+/Senior), которые активно используют async/await.
- Тем, кто сталкивался с непонятными блокировками или проблемами производительности в асинхронном коде.
- Тем, кто хочет писать более надежный и эффективный асинхронный код.

🔗 Ссылка на регистрацию: https://vk.cc/cNx25S

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
C# 12 and .NET 8 – Modern Cross-Platform
Development Fundamentals


Автор: Mark J. Price
Дата выхода: 2023

#csharp #en #2O23

Скачать книгу
1🔥1
Устали править копипастные участки кода и бороться с хаосом в проекте?

⏺️ Приглашаем на открытый урок «Переиспользуемый код на C#: архитектурный подход» 15 июля в 20:00 МСК. Разберём, как строить приложение по принципам SOLID, DRY, KISS и YAGNI и избавляться от дублирования на уровне архитектуры. Вы увидите, как декомпозировать систему на слои, внедрять зависимости через абстракции и собирать «Lego-приложение» для разных интерфейсов.

🔴 Встречаемся 15 июля в 20:00 МСК.

➡️ Успейте зарегистрироваться на урок количество участников ограничено:
https://vk.cc/cNx7t7

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Не пропустите! 15 июля в 20:00 пройдет бесплатный урок по теме "ИИ для игр: как оживить противника в Unreal Engine". Запись: https://vk.cc/cNzsF2

Хотите узнать, как сделать противников в играх по-настоящему умными? На нашем открытом уроке вы научитесь создавать реалистичных NPC с помощью искусственного интеллекта!

На вебинаре:
- Создадите NPC с поведением (патрулирование)
- Настроите систему обнаружения — враг будет реагировать на шум или движение
- Добавим реакцию ИИ на завершение вашего квеста

Урок будет полезен:
- Всем, кто хочет с нуля освоить разработку игр
- Тем, кто увлекается играми и хочет превратить хобби в профессию
- Студентам или школьникам, которые рассматривают геймдев как будущую карьеру
- Специалистам из других сфер, которые хотят перейти в геймдев
- Начинающим разработчикам, которые хотят создавать свои игры самостоятельно или в небольших командах

Не забудьте записаться на вебинар: https://vk.cc/cNzsF2

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Какой способ выброса исключения является корректным?
Anonymous Quiz
85%
throw new Exception()
11%
throw Exception()
1%
call Exception()
3%
new Exception()
🤮1
🤝 Тормозит карьерный рост? Упираетесь в потолок с текущими навыками на C#? Новые проекты ускользают, а вы застряли на уровне Middle?

🔥 Пройдитет тест! 💻 Ответьте на 32 вопроса и узнайте, достаточно ли у вас знаний, для обучения на онлайн-курсе «C# Developer. Professional» от OTUS.

Вас ждут реальные проекты в Scrum-командах, продвинутый уровень работы с C#, освоение SQL и NoSQL, кэширование, Unit-тесты и CI/CD.

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

👉 Пройдите тест и присоединяйтесь к группе: https://vk.cc/cNKe6W

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
Вопрос на засыпку. Что такое LINQ?

Ответ опубликуем завтра.

Пишите в комментариях ваш вариант!

#questions