Профессор Си
2.91K subscribers
97 photos
2 videos
118 links
Уроки, советы, новости C#.


@anothertechrock
@aldrson
Download Telegram
⚙️ Микросервисы начинают тормозить под нагрузкой?

💡 Узнайте, как масштабировать и оптимизировать систему с помощью CQRS и Event Sourcing на .NET Aspire.

На открытом вебинаре «Оптимизация микросервисов с CQRS и Event Sourcing на .NET Aspire» 19 августа в 20:00 МСК разберем:
◽️ Ограничения классических микросервисов при высокой нагрузке.
◽️ Принципы разделения команд и запросов (CQRS) и хранения истории через Event Sourcing.
◽️ Практическую реализацию: сервис заказов с «команда-обработчик» и хранением событий в MongoDB.
◽️ Конфигурацию проекций для чтения данных.

❗️ Вы освоите оркестрацию через .NET Aspire (API Gateway, Order Service, база событий), внедрите логирование и трейсинг через OpenTelemetry, а также протестируете создание заказа, обновление статуса и визуализацию потока событий.

➡️ Посетите открытый урок и получите скидку на большое обучение «C# ASP.NET Core разработчик»: https://vk.cc/cOzzQu

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Вопрос на засыпку. В чем разница между циклами while и for?

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

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

#questions
💅2
В чем разница между циклами while и for?

Ответ:

Оба цикла используются, когда нужно многократно выполнить единицу кода. Разница в том, что цикл for используется, когда вы знаете, сколько раз вам нужно выполнить итерацию кода. А цикл while мы применяем, когда нужно повторять что-то до тех пор, пока заданное утверждение не станет истинным.

#questions
🤡12😁3🤩2🔥1
💻 Хотите создавать мощные web-приложения с использованием C# ASP.NET Core?

Присоединяйтесь к курсу «C# ASP.NET Core разработчик» от OTUS и получите все необходимые навыки для успешной разработки! На курсе вы:
— Научитесь разрабатывать высоконагруженные API на GraphQL, gRPC и SignalR Core.
— Освоите JavaScript, ReactJS и интеграцию с ASP.NET Core.
— Примените Docker и Kubernetes и получите навыки работы с микросервисной архитектурой.

🔥 Программа курса обновляется с учетом актуальных требований рынка, а диплом OTUS ценится в ведущих IT-компаниях.

❗️Старт обучения совсем скоро! Пройдите короткое вступительное тестирование и получите скидку и запись трех топовых вебинара: https://vk.cc/cONkSC

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Сколько родительских классов может иметь производный класс?
Anonymous Quiz
74%
Один
2%
Не больше двух
1%
Не больше трех
23%
Неограниченное число
👍1👎1🔥1🤩1
Ваши .NET проекты превратились в спагетти-код — пора перейти к Clean Architecture

Пока одни разработчики продолжают страдать с legacy-кодом, другие применяют Clean Architecture и создают гибкие, тестируемые приложения. Виктор Дзицкий покажет эволюционный путь от классической многослойной архитектуры к современным принципам проектирования.

Вебинар «От N-Layer к Clean Architecture: эволюция проектирования .NET приложений» в рамках курса «C# Developer. Professional»

→ 27 августа, 20:00

Программа:

→ Сравнение подходов: классическая N-Layer vs современная Clean Architecture
→ Принцип инверсии зависимостей (DIP) и Dependency Injection как основа трансформации
→ Практическая демонстрация: как реорганизовать N-Layer проект в Clean Architecture
→ Достижение независимости бизнес-логики от инфраструктуры

Бесплатная регистрация — превратите хаос в порядок: https://vk.cc/cOOzMX

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Вопрос на засыпку. Что такое делегаты в .NET?

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

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

#questions
Что такое делегаты в .NET?

Ответ:

Делегат в .NET похож на указатель функции в C или C++. Использование делегата позволяет программисту заключить ссылку на метод внутри объекта делегата. Затем объект делегата может быть передан в код, который может вызвать метод, на который ссылается ссылка, необязательно знать во время компиляции, какой метод будет вызван.

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

public delegate void FooDelegate();

class FooClass
{
// кастомное событие
public event FooDelegate FooEvent;
}

FooClass FooObj = new FooClass()
FooObj.FooEvent += new FooDelegate();

#questions
👍53🤔1💅1
Вопрос на засыпку. Чем отличаются управляемый и неуправляемый код?

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

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

#questions
Чем отличаются управляемый и неуправляемый код?

Ответ:

Управляемый код
– это код, созданный компилятором .NET. Он не зависит от архитектуры целевой машины, поскольку выполняется CLR (Common Language Runtime), а не самой операционной системой. CLR и управляемый код предлагают разработчикам несколько преимуществ, таких как сборка мусора, проверка типов и обработка исключений.

С другой стороны, неуправляемый код напрямую компилируется в родной машинный код и зависит от архитектуры целевой машины. Он выполняется непосредственно операционной системой. В неуправляемом коде разработчик должен убедиться, что он вручную решает вопросы использования и выделения памяти (особенно из-за утечек памяти), безопасности типов и исключений.

В .NET компилятор Visual Basic и C# создает управляемый код. Чтобы получить неуправляемый код, приложение должно быть написано на C или C++.

#questions
3👍1
Что из нижеперечисленного не может иметь модификатор virtual?
Anonymous Quiz
10%
Свойства
36%
Поля
38%
Индексаторы
17%
Методы
🔥 Git — это стандарт индустрии, без которого невозможно представить работу ни одного разработчика. Даже если вы знаете несколько команд, часто именно от глубины понимания git зависит, насколько уверенно вы чувствуете себя в команде.

🗓 1 октября в 20:00 МСК

🆓 Бесплатно. Урок в рамках старта курса «C# Developer».

🦾 На открытом уроке мы разберём основы системы контроля версий: что такое репозитории и ветки, как работать с коммитами и на практике отработаем успешный воркфлоу, который применяют профессиональные команды.

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

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Какие из модификаторов не могут иметь абстрактный класс?
Anonymous Quiz
16%
static, internal
43%
sealed, static
14%
sealed, internal
26%
Любые из перечисленных могут
Не пропустите! 07 октября в 20:00 пройдет бесплатный вебинар-урок по теме “Создание игры Tower Defence в Unreal Engine — добавляем башни и игровой цикл” от онлайн-курса “Unreal Engine Game Developer. Basic”.

Продолжайте погружение в разработку игр с Unreal Engine! На этом открытом уроке мы создадим ключевые элементы игрового процесса Tower Defence: башни, систему волн врагов и управление камерой. Вы увидите, как из простых механик складывается увлекательная игра.

Что рассмотрим на уроке:
- добавим волны врагов
- добавим объект башни и ее покупку за деньги
- добавим персонажа-камеру, для отображения игры сверху-вниз

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

Не забудьте записаться на урок и получить спец. предложение на обучение: https://vk.cc/cPZK5Y

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Что будет выведено на экран?
Anonymous Quiz
15%
False, True, True
19%
True, True, True
29%
False, True, False
37%
True, True, False
😱6😁5
🔥 Открытый урок «Коллекции и структуры данных на C#».

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

🗓 15 октября в 20:00 МСК

🆓 Бесплатно. Урок в рамках старта курса «C# Developer».

🎯 О чём поговорим:
✔️ Array, List, Dictionary, Queue, Stack, Hashtable и другие, - Обсудим их назначение, реализацию в .NET, методы, производительность,
✔️Как делать выбор в пользу той или иной структуры?

👥 Кому будет полезно:
- Начинающим C# разработчикам
- Действующим C# разработчикам - для структурирования знаний

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Уменьшаем размер двоичного файла на C# в 90 раз

Я написал на C# консольный клон Wordle, но попытался сделать двоичный файл максимально крошечным.

Я взял популярную игру Wordle с такими правилами:

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

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

В работе с консолью мне помогла игра Console Games - Snake. Проект запускается в новой консоли dotnet.

https://habr.com/ru/articles/888538/
Please open Telegram to view this post
VIEW IN TELEGRAM