.NET / C# – Telegram
.NET / C#
3.92K subscribers
2.14K photos
40 videos
1 file
3.69K links
Лучшие материалы по разработке на платформе .NET и языке C#

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Другие наши проекты: https://tprg.ru/media
Download Telegram
Особенности предметно-ориентированного проектирования

Многие слышали о DDD, но редко применяют его. В статье обсудим, как события предметной области и MediatR могут улучшить архитектуру проектов, снизив точки отказа и упростив обслуживание системы. Ознакомьтесь с новыми подходами к созданию заказов и обработке событий в DDD!

Читать подробнее...

Читать подробнее: https://habr.com/ru/articles/846796/

#ru

@dot_net_c_sharp | Другие наши каналы
Разработка гипермедийных приложений с HTMX 2.0 на ASP.NET Core 8.0

Изучите статью на Хабре о создании гипермедийных веб-приложений на основе HTMX 2.0 и ASP.NET Core 8.0. Автор делится пошаговыми примерами, которые подойдут как новичкам, так и опытным разработчикам C#. Подробнее здесь: [ссылка](https://habr.com/ru/articles/844932/).

Читать подробнее: https://habr.com/ru/articles/846850/

#ru

@dot_net_c_sharp | Другие наши каналы
Готовимся к собеседованию по C#?

Статья помогает освоить ключевые концепции C# для успешного прохождения технического собеседования. Рассмотрены 20 популярных вопросов с ответами, включая основы ООП, SOLID, асинхронное программирование и LINQ. Прекрасно подходит как для новичков, так и для тех, кто освежает знания. Задачи и потоки в C#: что выбрать?

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

Подробности: https://blog.arpitdwivedi.in/top-20-c-interview-questions-and-answers

#en

@dot_net_c_sharp | Другие наши каналы
❤‍🔥3
🏆 Подготовьтесь к интервью по .NET Core с уверенностью

Статья с 20 важными вопросами и ответами по .NET Core поможет вам разобраться в ключевых аспектах фреймворка. Узнайте различия между .NET Framework и .NET Core, принцип работы Middleware и Dependency Injection. Станьте экспертом и уверенно проходите технические интервью!

Подробности: https://blog.arpitdwivedi.in/top-20-net-core-interview-questions-and-answers

#en

@dot_net_c_sharp | Другие наши каналы
WolvenKit: Моддинг для Cyberpunk 2077

Хотите создать моды для Cyberpunk 2077? Узнайте больше о WolvenKit, инструменте для моддинга с открытым исходным кодом! PVS-Studio нашёл интересные ошибки в его коде: двойное присвоение, проверки на null и некорректные сдвиги битов. Читайте подробнее в статье!

Читать подробнее: https://habr.com/ru/companies/pvs-studio/articles/847016/

#ru

@dot_net_c_sharp | Другие наши каналы
Переход от монолита к микросервисам: руководство

Миграция от модульного монолита к микросервисам — это не просто технический шаг, а стратегическое решение, способное изменить всю систему. Статья описывает ключевые этапы перехода: определение границ модулей, извлечение первого модуля, настройка межсервисной связи и стратегию миграции данных. Узнайте, когда стоит использовать модульный монолит вместо микросервисов

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

Подробности: https://milanjovanovic.hashnode.dev/breaking-it-down-how-to-migrate-your-modular-monolith-to-microservices

#en

@dot_net_c_sharp | Другие наши каналы
🖥 Как принцип единственной ответственности может улучшить ваш код

В статье рассматривается применение принципа единственной ответственности на примере класса Orchestrator. Автор показывает, как разделение задач на отдельные классы улучшает читаемость, гибкость и поддерживаемость кода. Узнайте, как refactoring позволяет избежать сложности и улучшить качество разработки.

Подробности: https://evolving-engineer.hashnode.dev/single-responsibility-principle

#en

@dot_net_c_sharp | Другие наши каналы
Полноценное веб-приложение на C#

Разработчик Дмитрий Бахтенков делится опытом создания веб-приложения на базе C# и .NET. Используются ASP.NET Core для бэкенда, Blazor для фронтенда, RavenDB для основной базы данных и Garnet для кеша. Узнайте подробнее о процессе разработки на платформе вАЙТИ. Оптимизация кеширования в .NET приложениях

Команда разработчиков обсудила использование кеша Garnet в .NET приложениях. Они предлагают использовать библиотеку StackExchange.Redis для работы с этим кешем, а также добавили класс CacheService для управления кешированием данных. В статье также представлен пример интеграции сервисов кеширования и репозитория для эффективной работы с ToDo задачами. Читайте больше по ссылке! Создание веб-приложения на .NET

В статье описывается разработка веб-приложения на платформе .NET с использованием классов ToDoItem и ToDoService для работы с задачами. Код, включая регистрацию сервиса в Program.cs и создание страниц CreateItem.razor, EditItem.razor и ToDoList.razor, доступен на GitHub.

Читать подробнее: https://habr.com/ru/companies/beeline_cloud/articles/847332/

#ru

@dot_net_c_sharp | Другие наши каналы
👍32
Обновление NetEscapades.AspNetCore.SecurityHeaders

В проекте NetEscapades.AspNetCore.SecurityHeaders вышла предварительная версия 1.0.0 с множеством обновлений. Добавлены новые методы, изменены поддерживаемые фреймворки и обновлены заголовки безопасности. Теперь X-XSS-Protection и Expect-CT не рекомендуются. Подробности читайте в статье!

Подробности: https://andrewlock.net/major-updates-to-netescapades-aspnetcore-security-headers/

#en

@dot_net_c_sharp | Другие наши каналы
2
🎉 Новый релиз библиотеки OpenAI для .NET!

Теперь интеграция моделей ИИ в ваши .NET-приложения стала еще проще и надежнее. Поддержка последних моделей GPT-4o, асинхронных API и улучшений на основе отзывов сообщества. Пробуйте уже сегодня, установив библиотеку через NuGet! 🔗

Подробнее на GitHub.

Подробности: https://devblogs.microsoft.com/dotnet/announcing-the-stable-release-of-the-official-open-ai-library-for-dotnet/

#en

@dot_net_c_sharp | Другие наши каналы
👍3
Тестирование кода на ZIIoT Oil&Gas

Андрей Федотов делится уникальным опытом юнит и интеграционного тестирования в разработке платформы ZIIoT Oil&Gas. В статье изложены методы улучшения качества кода и снижения количества багов через продуманное тестирование. Узнайте, как команда преодолела трудности и добилась успеха.

Читать подробнее: https://habr.com/ru/companies/zyfra/articles/847502/

#ru

@dot_net_c_sharp | Другие наши каналы
# Invo: Новый инструмент для малого бизнеса

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

Подробности: https://dannybensonblog.hashnode.dev/from-ideas-to-reality-building-invo-a-tool-for-small-businesses

#en

@dot_net_c_sharp | Другие наши каналы
📊 "Enums vs Таблицы: Какой метод выбрать?"

В статье рассмотрены два основных подхода для выделения типов в моделях: использование перечислений (enums) и таблиц. При небольшом количестве типов (до 5) рекомендуется использовать enums, а для сложных многоуровневых структур — таблицы. Подробный анализ с примерами и тестированием поможет сделать выбор! Преимущества использования Enums при добавлении записей в БД

Исследование показало, что добавление записей в базу данных с использованием Enums быстрее на 13% по сравнению с табличным подходом. Наиболее оптимально использовать пакеты запросов по ≤ 500. Однако, Enums не рекомендуется для изменений и многообразных типов данных.

Читать подробнее: https://habr.com/ru/articles/847614/

#ru

@dot_net_c_sharp | Другие наши каналы
🎓 Деревья выражений в C#/.NET: от теории к практике

Деревья выражений — мощный инструмент в C#/.NET для динамического создания и выполнения кода. Они представляют код в виде дерева, что позволяет анализировать и преобразовывать запросы, как в LINQ to SQL или Entity Framework, в SQL-запросы. Узнайте больше о применении и возможностях этого подхода!

Читать подробнее: https://habr.com/ru/articles/847642/

#ru

@dot_net_c_sharp | Другие наши каналы
👍3
Применение Принципа Единственной Ответственности (SRP) на практике

Статья рассказывает, как использовать принцип единственной ответственности (SRP) для улучшения кода. Автор делится опытом по рефакторингу класса Orchestrator, который управлял логикой работы с инвойсами. Реорганизация кода позволила сделать его более поддерживаемым и гибким. \

Подробности: https://evolving-engineer.hashnode.dev/single-responsibility-principle-practical-example

#en

@dot_net_c_sharp | Другие наши каналы
Учебное пособие по Semantic Kernel с PostgreSQL и PGVector

В статье рассмотрены основы использования Semantic Kernel от Microsoft для создания AI-приложений. Пошагово показано, как настроить базу данных PostgreSQL с PGVector, создать C# Web API и использовать AzureOpenAI для создания векторных представлений. Узнайте, как расширить возможности вашего проекта с помощью этих технологий!

Подробности: https://davek.dev/beginners-guide-to-semantic-kernel-with-dapper-postgresql-and-pgvector-in-c

#en

@dot_net_c_sharp | Другие наши каналы
📚 Типы в программировании как математические множества

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

Статья рассказывает о концепции подмножеств в программировании на примере транспортных средств и электронных устройств. Также рассмотрен принцип Барбары Лисков и примеры работы с интерфейсами. Узнайте, как все связано через теорию множеств и применимо в ООП. Откройте для себя Теорию Типов

Увлеклись ежедневной рутиной в программировании? Попробуйте взглянуть на привычные аспекты по-новому. Обсуждаем принцип наследования и его нарушения на примере квадратов и прямоугольников. Заинтересовались? Начните свой путь в Теорию Типов с рекомендованной статьи.

Читать подробнее: https://habr.com/ru/articles/847958/

#ru

@dot_net_c_sharp | Другие наши каналы
👍1
Создание чата с Microsoft Orleans: шаг за шагом

Изучите, как создать чат-приложение с использованием Microsoft Orleans! В статье рассказывается о настройке серверной и клиентской частей с Grains и Silo, а также о подключении через Blazor. Подробности внедрения и примеры кода доступны на GitHub. Узнайте больше о состоянии и кластерах!

Подробности: https://codewithhans.com/learn-to-build-a-chat-application-using-microsoft-orleans

#en

@dot_net_c_sharp | Другие наши каналы
Динамическая фильтрация в C#: решение для ASP.NET Core

Статья раскрывает возможности деревьев выражений для создания динамической фильтрации продуктов в C# на ASP.NET Core. Используя минимальный API и EF Core, можно легко настраивать запросы по параметрам, таким как цена и активность, улучшая эффективность работы с данными. Подробности на GitHub.

Читать подробнее: https://habr.com/ru/articles/848446/

#ru

@dot_net_c_sharp | Другие наши каналы
👍1
Понимание HttpContextAccessor в .NET

В мире ASP.NET Core важен доступ к состоянию HTTP-запросов и ответов. HttpContextAccessor — это мощный инструмент, позволяющий разработчикам управлять данными HTTP вне контроллеров и middleware. Узнайте, как эффективно использовать эту службу в своих веб-приложениях.

Подробности: https://dannybensonblog.hashnode.dev/exploring-httpcontextaccessor-in-net-a-developers-guide-part-1

#en

@dot_net_c_sharp | Другие наши каналы
👍2
Интеграция C-библиотек в C# с помощью P/Invoke

В статье рассказывается об использовании механизма P/Invoke в C# для вызова нативных библиотек. Это позволяет эффективно взаимодействовать с кодом на C/C++ и системными API, такими как Windows API, без переписывания их на C#. P/Invoke особенно полезен для работы с платформоспецифичными функциями.

Читать подробнее: https://habr.com/ru/articles/848714/

#ru

@dot_net_c_sharp | Другие наши каналы