C# (C Sharp) programming
18.7K subscribers
757 photos
39 videos
8 files
675 links
По всем вопросам- @haarrp

C# - обучающий канал Senior C# разработчика.

@ai_machinelearning_big_data - Machine learning

@itchannels_telegram - 🔥лучшие ит-каналы

@csharp_ci - C# академия

@pythonlbooks- книги📚

Реестр РКН: https://clck.ru/3Fk3kb
Download Telegram
Не сравнивай строки через .ToLower()

Плохая практика:

bool equal = stringA.ToLower() == stringB.ToLower();


Медленно (каждый раз создаёт новые строки)
Лишние аллокации памяти

Правильный способ:


bool equal = string.Equals(stringA, stringB, StringComparison.OrdinalIgnoreCase);

Без лишних аллокаций
Намного быстрее
Чёткий контроль над правилами сравнения

📊 Бенчмарки:


.ToLower() → ~38 ns

.ToUpper() → ~50 ns

string.Equals(..., OrdinalIgnoreCase) → ~0.003 ns 🚀
🧼 Как писать чистый и тестируемый middleware в ASP.NET Core

Самый простой способ — сделать его строго типизированным.

📦 Что нужно:
1. Создай класс, который реализует IMiddleware
2. Помести всю логику в InvokeAsync(...)

Но не забудь два важных шага:

Зарегистрируй middleware в DI-контейнере:
services.AddTransient<YourMiddleware>();

Добавь его в пайплайн:
app.UseMiddleware<YourMiddleware>();

🎯 Такой подход:
- делает middleware переиспользуемым
- учитывает область действия зависимостей (scoped)
- и позволяет легко покрыть тестами

Идеально, если хочешь поддерживаемый и чистый код.
Что выведет на экран этот код?
Anonymous Quiz
12%
True, True
32%
True, False
22%
False, False
27%
False, True
7%
🥒
🛢️ ELSA 3 — библиотека для создания и выполнения рабочих процессов в .NET-приложениях с поддержкой C#, JSON и визуального дизайнера.

Проект позволяет разрабатывать как короткие, так и долгосрочные workflows. Включает сервер, студию для визуального проектирования и интеграцию с Docker. Поддерживает .NET 6+, параллельное выполнение задач и работу с внешними системами.

🤖 GitHub

@csharp_ci
ХОЧЕШЬ ПОВЫСИТЬ ГРЕЙД В 2025 ГОДУ? 🚀

Чтобы стать Senior C# разработчиком сегодня, нужно не только знать язык программирования и фреймворки. Нужно уметь строить гибкую архитектуру приложения, которую легко тестировать и менять под задачи бизнеса. Стань экспертом в построении гибкой архитектуры приложения!

👉 Стартуем 25 августа.

Курс ведет действующий архитектор и Principal Engineer Кирилл Ветчинкин.

Что будет на курсе:
Создадим полноценный микросервис
Разберем все тактические паттерны DDD
Реализуем Use Case и Domain Service
Напишем много тестов
Реализуем HTTP, gRPC и Kafka адаптеры

Полная программа ТУТ 👉 https://microarch.ru/courses/ddd?utm_source=posev&utm_medium=erid:2Vtzqx3DxfU&utm_campaign=2

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

А еще:
— Проверим все домашки
— Поддержим в чате
— Проведем живые разборы
— Ответим на все вопросы

🔥 Не откладывай свой рост на потом: https://microarch.ru/courses/ddd?utm_source=posev&utm_medium=erid:2Vtzqx3DxfU&utm_campaign=2

Реклама. ИП Ветчинкин К.Е. ИНН: 773376451099 Erid: 2Vtzqx3DxfU
🧰 .NET Community Toolkit — полезная коллекция библиотек и API для .NET-разработчиков, созданная Microsoft и поддерживаемая сообществом. Этот набор инструментов не привязан к конкретному UI-фреймворку, а значит, его можно использовать в любых проектах — от десктопных приложений до веб-решений.

Среди ключевых компонентов — CommunityToolkit.Mvvm (облегченная MVVM-библиотека, наследник MvvmLight), CommunityToolkit.HighPerformance (оптимизации для работы с памятью и многопоточностью) и CommunityToolkit.Diagnostics (удобные методы валидации). При этом все инструменты уже применяются в реальных продуктах Microsoft, включая новый Microsoft Store.

Разработчики могут легко подключить NuGet-пакеты через Visual Studio, а документация доступна на Microsoft Docs. Планы по развитию публикуются в Roadmap, а для тестирования новых функций можно подключить пререлизные сборки.

🤖 GitHub
🌐 TouchSocket — .NET-фреймворк для тех, кто устал бороться с сетевыми протоколами

Если вы когда-нибудь сталкивались с проблемами TCP-пакетов, то этот проект может стать спасением. Он предлагает готовые решения для работы с TCP, UDP, SSL и даже Modbus, причём с неожиданно простым API.

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

🤖 GitHub

@csharp_ci
Что выведет на экран этот код?
Anonymous Quiz
32%
False, False
42%
True, False
18%
True, True
8%
🥒
Каждый раз когда я ввожу dotent в терминал

@csharp_ci
This media is not supported in your browser
VIEW IN TELEGRAM
Станьте разработчиком нейро-сотрудников на Python и зарабатывайте от 150.000р в месяц 🔥🔥🔥

Мы научим вас создавать топовых нейро-сотрудников на базе GPT-4 Omni, и вы сможете:
1️⃣ Устроиться разработчиком в крупную компанию и зарабатывать от 150 тысяч ₽ в месяц
2️⃣ Разрабатывать такие проекты на заказ и зарабатывать от 500 тысяч ₽ за проект
3️⃣ Создать нейро-сотрудника в вашей компании и вырасти на +30-100% в зарплате

Что будет на интенсиве?
🧬 Теория: как создаются нейро-сотрудники с GPT-4o на Python
🧬 Практика: мы создадим нейро-консультанта, нейро-HR, нейро-маркетолога и др.

Ведущий интенсива - Senior AI разработчик нейросетей и основатель Университета искусственного интеллекта
🔥 Регистрируйтесь на бесплатный интенсив! Встречаемся в ближайший четверг!
🎭 Dialogue Manager для Godot — интересный аддон для Godot 4.4+, который упрощает работу с диалогами в играх. Он позволяет писать ветвящиеся диалоги в сценарном стиле без сохранения состояния.

Проект предлагает удобный редактор диалогов и систему их интеграции в игру. Есть поддержка условий, мутаций, портретов персонажей и даже перевода текстов. Установка доступна через Godot Asset Library или напрямую с GitHub.

В документации можно найти примеры использования для разных жанров, от визуальных новелл до RPG с репликами в speech bubbles. Автор также делится видео-гайдами по настройке диалоговых сцен.

🤖 GitHub

@csharp_ci