Не выбрасывайте исключения, когда это не нужно!
Но если это необходимо, в .NET 8 появился новый обработчик исключений👇
В .NET Core рекомендованный способ реализации обработки исключений — через middleware (промежуточное ПО).
Middleware предоставляет возможность выполнения логики до или после обработки HTTP-запросов.
Добавив блок
Это позволяет расширить возможности приложения по обработке исключений.
.NET Core 8 представляет новую абстракцию IExceptionHandler для обработки исключений. Встроенное middleware для обработки исключений использует реализации
Интерфейс
🔜 Эта функциональность позволяет создавать пользовательскую логику обработки исключений, адаптированную к различным сценариям.
👉 @KodBlog | #ресурсы
Но если это необходимо, в .NET 8 появился новый обработчик исключений
В .NET Core рекомендованный способ реализации обработки исключений — через middleware (промежуточное ПО).
Middleware предоставляет возможность выполнения логики до или после обработки HTTP-запросов.
Добавив блок
try-catch внутри middleware, вы можете эффективно управлять исключениями и генерировать соответствующие HTTP-ответы с ошибкой.Это позволяет расширить возможности приложения по обработке исключений.
.NET Core 8 представляет новую абстракцию IExceptionHandler для обработки исключений. Встроенное middleware для обработки исключений использует реализации
IExceptionHandler для этих целей.Интерфейс
IExceptionHandler включает один метод — TryHandleAsync.TryHandleAsync предназначен для обработки указанного исключения в рамках конвейера .NET Core. Если метод успешно справляется с обработкой исключения, он возвращает true. Если исключение обработать невозможно, метод возвращает false.Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤2👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Волшебная шина для общения микросервисов на C#
MassTransit — это библиотека для упрощения взаимодействия между приложениями через сообщения.😧
Когда у тебя есть несколько приложений или сервисов, и они должны обмениваться данными (например, один отправляет задачу, другой выполняет её), MassTransit помогает сделать это:
🟡 Удобно — тебе не нужно самому писать кучу кода для отправки и получения сообщений.
🟡 Надёжно — библиотека позаботится о доставке сообщений, даже если что-то пойдёт не так.
Для чего это нужно?
🔜 Когда сервисы работают независимо, но должны "общаться".
🔜 Чтобы задачи выполнялись по очереди, даже если сервер перегружен.
🔜 Например, события "заказ создан", "платёж прошёл", "доставка завершена" — всё это удобно передавать через MassTransit.
⛓ Ссылка: тык
👉 @KodBlog | #ресурсы
MassTransit — это библиотека для упрощения взаимодействия между приложениями через сообщения.
Когда у тебя есть несколько приложений или сервисов, и они должны обмениваться данными (например, один отправляет задачу, другой выполняет её), MassTransit помогает сделать это:
Для чего это нужно?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10⚡2👏2❤1🤨1
Высокопроизводительный асинхронный фреймворк для .NET
DotNetty — это асинхронный сетевой фреймворк для .NET, созданный на основе архитектурных идей Netty, популярного фреймворка для Java🔥
Основные особенности DotNetty:
🟡 Поддерживает асинхронный ввод/вывод с использованием Task-based Asynchronous Pattern (TAP)
🟡 Предназначен для создания высокопроизводительных сетевых приложений, включая серверы и клиенты
🟡 Обеспечивает поддержку протоколов, включая TCP, UDP и WebSocket
🟡 Содержит функционал для обработки потоков, сериализации данных и управления сетевыми соединениями
🟡 Гибкая архитектура с возможностью настройки конвейеров (pipeline) для обработки сообщений
🔜 DotNetty используется для разработки масштабируемых, высокопроизводительных сетевых приложений, таких как игровые серверы, системы обмена сообщениями и IoT-приложения
⛓ Ссылка: тык
👉 @KodBlog | #ресурсы
DotNetty — это асинхронный сетевой фреймворк для .NET, созданный на основе архитектурных идей Netty, популярного фреймворка для Java
Основные особенности DotNetty:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤🔥2❤2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Волшебный инструмент для работы с изображениями в .NET 🔥
Magick.NET — это библиотека .NET, которая предоставляет обёртку для популярного графического движка ImageMagick. Она позволяет работать с изображениями, выполняя широкий спектр операций, таких как:
🟡 Редактирование изображений
🟡 Фильтры и эффекты
🟡 Конвертация форматов
🟡 Работа с метаданными
🟡 Масштабируемость и производительность
⛓ Ссылка: тык
👉 @KodBlog | #ресурсы
Magick.NET — это библиотека .NET, которая предоставляет обёртку для популярного графического движка ImageMagick. Она позволяет работать с изображениями, выполняя широкий спектр операций, таких как:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥3
Эффективное управление памятью в .NET: Создание кроссплатформенных приложений с эффективным использованием памяти с помощью .NET Core (2024)
Автор: Тревуар Уильямс
Год: 2024
📂 Скачать книгу
👉 @KodBlog | #books
Автор: Тревуар Уильямс
Год: 2024
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤1
Вот новый способ блокировки
Его представили в новом C# 13👇
C# 13 вводит тип
Новый метод
Почему это полезно:
🔜 Новый тип
👉 @KodBlog | #ресурсы
Его представили в новом C# 13
C# 13 вводит тип
System.Threading.Lock, упрощённый способ для синхронизации доступа к общим ресурсам.Новый метод
Lock.EnterScope() делает управление критическими секциями проще, используя паттерн Dispose для автоматического освобождения блокировки.Почему это полезно:
Lock уменьшает объём шаблонного кода и снижает риск забыть освободить блокировку, что предотвращает взаимоблокировки и улучшает читаемость кода.Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤3🔥3👏3
This media is not supported in your browser
VIEW IN TELEGRAM
Игры в стиле ретро на .NET!
Коллекция консольных игр, разработанных с использованием .NET.
Это проект, который демонстрирует возможности создания игр в консольном интерфейсе, подходящий как для начинающих программистов, изучающих .NET
🟡 Tic Tac Toe (крестики-нолики)
🟡 Snake (змейка)
🟡 Pong
🟡 Minesweeper (сапёр)
🟡 Tetris
🟡 Sudoku
и тд.
*️⃣ Репозиторий служит обучающим пособием для понимания основ разработки игр
⛓ Ссылка: тык
👉 @KodBlog | #ресурсы
Коллекция консольных игр, разработанных с использованием .NET.
Это проект, который демонстрирует возможности создания игр в консольном интерфейсе, подходящий как для начинающих программистов, изучающих .NET
и тд.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🤯3🙏2👏1🥴1
C# для профессионалов. Тонкости программирования
Автор: Джон Скит
Год: 2020
📂 Скачать книгу
👉 @KodBlog | #books
Автор: Джон Скит
Год: 2020
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9👨💻3
Что такое паттерн "Цепочка ответственности"? 👇
Паттерн "Цепочка ответственности" позволяет нам легко разделить зависимые части кода, чтобы сделать его более расширяемым и удобным для тестирования.
Простыми словами, можно сказать, что паттерн "Цепочка ответственности" создает цепочку объектов-обработчиков для определенного запроса.
В этом паттерне дизайна каждый обработчик обычно содержит ссылку на следующий обработчик. Если один обработчик не может обработать запрос, он передает его следующему обработчику в цепочке и так далее.
*️⃣ Запрос может быть обработан одним обработчиком в цепочке или несколькими обработчиками одновременно.
👉 @KodBlog | #ресурсы
Паттерн "Цепочка ответственности" позволяет нам легко разделить зависимые части кода, чтобы сделать его более расширяемым и удобным для тестирования.
Простыми словами, можно сказать, что паттерн "Цепочка ответственности" создает цепочку объектов-обработчиков для определенного запроса.
В этом паттерне дизайна каждый обработчик обычно содержит ссылку на следующий обработчик. Если один обработчик не может обработать запрос, он передает его следующему обработчику в цепочке и так далее.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13😐5
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤3🍌2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤2
C# для начинающих: Изучите за 1 день
Автор: Krishna Rungta
Год: 2018
📂 Скачать книгу
👉 @KodBlog | #books
Автор: Krishna Rungta
Год: 2018
Please open Telegram to view this post
VIEW IN TELEGRAM
😁16🤯7👍3🤣2🌭1
This media is not supported in your browser
VIEW IN TELEGRAM
Сохраняй коллекцию алгоритмов на C#
🟡 Сортировки (например, пузырьковая, быстрая, слиянием);
🟡 Поиск (например, бинарный поиск);
🟡 Структуры данных (например, стек, очередь, дерево);
🟡 Численные методы;
🟡 Графовые алгоритмы (например, поиск в глубину, поиск в ширину);
🟡 Алгоритмы на строки, криптографические алгоритмы
и многое другое.
⛓ Ссылка: тык
👉 @KodBlog | #ресурсы
и многое другое.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2🥰2
Структуры данных в C#: линейные и нелинейные динамические структуры
Автор: Симонова Е. В
Год: 2020
📂 Скачать книгу
👉 @KodBlog | #books
Автор: Симонова Е. В
Год: 2020
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3
Как включить новые функции без повторного развертывания приложения?
Используйте мощь👇
Флаги функций в .NET позволяют разработчикам включать или выключать функции динамически во время работы приложения, что упрощает контроль за поведением приложения без необходимости его повторного развертывания.😏
Это полезно для постепенного внедрения новых функций, A/B тестирования и безопасного представления новых возможностей.
Основные концепты:
⏩ Переключатели, которые контролируют, включена ли функция или выключена.
⏩ Встроенная поддержка в .NET 8 для управления флагами функций через API управления функциями.
⏩ Возможность выпустить функции для определённой группы пользователей перед их глобальным включением.
⏩ Флаги функций можно настраивать с использованием различных источников, таких как appsettings.json, Azure App Configuration или другие внешние сервисы.
⏩ Позволяют создавать условия или правила для определения, когда функция должна быть включена (например, на основе ролей пользователей, окружения или логики).
👉 @KodBlog | #ресурсы
Используйте мощь
Feature Flags Флаги функций в .NET позволяют разработчикам включать или выключать функции динамически во время работы приложения, что упрощает контроль за поведением приложения без необходимости его повторного развертывания.
Это полезно для постепенного внедрения новых функций, A/B тестирования и безопасного представления новых возможностей.
Основные концепты:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍5