.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
Тестирование кода на 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 | Другие наши каналы
Политики авторизации в ASP.Net Core

Погрузитесь в создание гибкой системы безопасности с помощью политик авторизации в ASP.Net Core. Узнайте, как регистрировать политики, реализовывать требования и обработчики. Создавайте собственные политики для вашего веб-приложения, используя шаблон ASP.Net Core.

Подробности: https://seoguy.hashnode.dev/how-to-use-policy-based-authorization-in-aspnet-core

#en

@dot_net_c_sharp | Другие наши каналы
Почему .NET станет основным выбором в 2024 году

Текст: В 2024 году спрос на .NET только растет. Благодаря его кроссплатформенности, высокой безопасности и мощной поддержке сообщества, платформа привлекает бизнесы всех размеров. Удобство интеграции с облачными сервисами и Microsoft Azure делает его идеальным выбором для масштабируемых решений.

Подробности: https://witquick.hashnode.dev/why-is-net-most-demanded

#en

@dot_net_c_sharp | Другие наши каналы
💊6🤣3
Октябрьские обновления .NET и .NET Framework

Вышли новые обновления для .NET и .NET Framework за октябрь 2024 года. Основные изменения связаны с улучшением безопасности, включая исправление нескольких уязвимостей. Детали обновлений для версий .NET 6.0, 8.0 и фреймворка можно найти в опубликованных заметках.

Подробности: https://devblogs.microsoft.com/dotnet/dotnet-and-dotnet-framework-october-2024-servicing-updates/

#en

@dot_net_c_sharp | Другие наши каналы
Новые возможности Microsoft.Extensions.AI для .NET

Microsoft представила библиотеки Microsoft.Extensions.AI.Abstractions и Microsoft.Extensions.AI, которые упрощают интеграцию AI-сервисов в .NET. Они предоставляют единые интерфейсы для взаимодействия с языковыми моделями, что позволяет разработчикам легко использовать AI-технологии без привязки к конкретному провайдеру. Попробуйте уже сегодня!

Подробности: https://devblogs.microsoft.com/dotnet/introducing-microsoft-extensions-ai-preview/

#en

@dot_net_c_sharp | Другие наши каналы
Выпущен .NET 9 Release Candidate 2

Microsoft анонсировала второй кандидат на релиз .NET 9, который включает в себя улучшения производительности и стабильности. Разработчики могут использовать его в продакшене с поддержкой. Финальный выпуск ожидается в ноябре, так что попробуйте новинку и оставляйте отзывы!

Подробности: https://devblogs.microsoft.com/dotnet/dotnet-9-rc-2/

#en

@dot_net_c_sharp | Другие наши каналы
2
Совмещаем SQL и C# с помощью EF Core

Текст: Узнайте, как интегрировать скалярные SQL функции в проекты на ASP.NET Core с EF Core. На примере функции GetTotalUnitPriceBySpecialOfferId показано, как упростить обработку данных в базе AdventureWorks2019 и расширить функциональность вашего приложения.

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

#ru

@dot_net_c_sharp | Другие наши каналы
3
🚀 Масштабируемые приложения с Kubernetes и ArgoCD

В статье рассматривается проект автоматизации развёртывания приложений на AWS EC2 с использованием Kubernetes и ArgoCD. Описан процесс установки ключевых компонентов, включая Docker, Kind и ArgoCD, с использованием Kubernetes Dashboard для управления ресурсами и развертывания приложений.

Подробности: https://harshitsahu2311.hashnode.dev/kubernetes-devops-project-using-argocd

#en

@dot_net_c_sharp | Другие наши каналы
👍3
Векторная революция в .NET с Arm SVE

Dotnet-разработчикам представили поддержку Arm Scalable Vector Extension (SVE), что открывает новые горизонты в написании эффективного кода. Новый API упрощает обработку данных, адаптируя операции через ConditionalSelect, и помогает справляться с предикатами. Подробности в статье.

Подробности: https://devblogs.microsoft.com/dotnet/engineering-sve-in-dotnet/

#en

@dot_net_c_sharp | Другие наши каналы
2
🔍 Понимание паттерна проектирования "Посредник" в C#

Усложнение программных систем приводит к запутанным взаимосвязям между объектами. Паттерн "Посредник" помогает сохранять объекты слабо связанными, централизуя их коммуникацию через единый объект-посредник. Это упрощает код и улучшает его поддержку в C#.

Подробности: https://devwithjosh.com/understanding-the-mediator-design-pattern-in-c

#en

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