.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
От Turbo Pascal до .NET: История технологий и людей

Изучите путь от легендарного Turbo Pascal к влиятельной платформе .NET. Узнайте, как революция Delphi привела к созданию языка C# и как Microsoft вытолкнула на рынок свой ответ — .NET. История о людях, решениях и технологиях, которые сформировали современную разработку. История .NET: от Delphi к современности

.NET — это не просто платформа, а наследие многих технологий, начиная с Delphi. Несмотря на попытки обновления с помощью .NET Core и новой кроссплатформенности, старые технологии остаются актуальными. .NET живёт, сохраняя опыт прошлого и открывая путь будущим разработкам.

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

#ru

@dot_net_c_sharp | Другие наши каналы
Простая миграция данных с Newtonsoft.Json

Как избежать лишнего кода при обновлении версий данных? Об этом рассказано в статье, посвященной миграции с использованием Newtonsoft.Json и кастомных JsonConverter'ов. Простое решение для разработчиков, которое позволяет обойтись без сложных иерархий кода.

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

#ru

@dot_net_c_sharp | Другие наши каналы
Статья о Dependency Injection расширяет стандартные возможности

В статье обсуждаются существующие временные периоды сервисов в .NET DI-контейнере и воображаемые "гипотетические" временные периоды, представленные в подкасте The Breakpoint Show. Описанные варианты включают tenant-scoped, pooled и drifter типы сервисов, предлагающие новые подходы к управлению зависимостями. 🔧 Управление зависимостями в ASP.NET Core: подходы и ограничения

В статье обсуждаются разные подходы к созданию временных зависимостей в ASP.NET Core: с использованием Lazy<t и lock(). Основное внимание уделяется созданию потокобезопасных зависимостей. Однако есть проблемы с IDisposable сервисами — они могут быть удалены в процессе использования.

Подробности: https://andrewlock.net/going-beyond-singleton-scoped-and-transient-lifetimes/

#en @dot_net_c_sharp | Другие наши каналы
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Прорыв в AI для .NET разработчиков

Встречайте AI Dev Gallery — приложение для Windows, упрощающее разработку AI с помощью .NET. Оно предлагает интерактивные образцы, легкий доступ к моделям и экспортируемый исходный код. Начните свой путь в AI без подключения к облачным сервисам и дополнительных затрат. Узнайте больше!

Подробности: https://devblogs.microsoft.com/dotnet/introducing-ai-dev-gallery-gateway-to-local-ai-development/

#en

@dot_net_c_sharp | Другие наши каналы
🔥5💊1
🔔Официальный клиент SignalR для Swift доступен!

iOS-разработчики, у нас отличные новости: теперь вы можете добавить в ваши приложения на SwiftUI и UIKit поддержку реального времени с помощью официального SignalR клиента. Откройте для себя новые возможности чата, уведомлений и потоковой передачи данных без лишних забот о совместимости и поддержке.

Подробности: https://devblogs.microsoft.com/dotnet/building-real‑time-ios-apps-with-signalr-introducing-the-official-swift-client-public-preview/

#en

@dot_net_c_sharp | Другие наши каналы
👍3
Искусственный интеллект: новые горизонты общения

В эпоху повсеместного распространения ИИ один случай выделяется: девушка начала взаимодействовать с виртуальной анкетой в Telegram-боте знакомств и настолько привязалась к ней, что попросила не удалять "виртуального человека". Это показало, как ИИ может заменять реальное человеческое общение.

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

#ru

@dot_net_c_sharp | Другие наши каналы
Forwarded from Типичный программист
This media is not supported in your browser
VIEW IN TELEGRAM
Делаем учебник из любого GitHub-репозитория

Вышла прикольная тулза — Tutorial-Codebase-Knowledge. Она превращает любой репозиторий в пошаговый гайд: LLM анализирует код, находит ключевые компоненты и связи, а потом объясняет, как всё устроено и зачем.

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

#инструменты
👍6🔥3
🌐 Вся мощь асинхронности в программировании

Асинхронность в C# позволяет выполнять задачи, не блокируя поток программы. Это особенно полезно при работе с серверными запросами или файлами. В статье описаны ключевые приемы использования async/await и объясняется, как они делают код более эффективным и гибким. Узнайте подробнее!

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

#ru

@dot_net_c_sharp | Другие наши каналы
3
Одна библиотека для всех JSON задач в .NET

Столкнулись с множеством спецификаций JSON? JSON Everything в .NET предлагает единое решение. Поддержка JSON Schema, Path и Patch, продуманная модульная архитектура и активное сообщество — всё это делает её незаменимой для разработчиков. Узнайте больше на GitHub!

Подробности: https://dotnetfoundation.org/news-events/detail/spotlight-on-json-everything-a-unified-toolkit-for-json-standards-in-.net

#en

@dot_net_c_sharp | Другие наши каналы
2
🔧 Упрощение регистрации в контейнерах

Создана утилита, упрощающая регистрацию реализаций в контейнерах для крупных проектов. Благодаря TypeRegistrationAttribute и DerivedTypeRegistrationAttribute можно легко управлять LifetimeManagement без ручного добавления. Утилита значительно ускоряет процесс и упрощает поддержку.

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

#ru

@dot_net_c_sharp | Другие наши каналы
🎓 Успей подать заявку на стажировку в PIX Robotics!

PIX Robotics завершила первую успешную стажировку по C# и открывает набор на новые позиции. Вас ждут реальные задачи, усиленный код ревью и возможность расти в динамичной команде. Узнайте, как мы превращаем новичков в профессионалов!

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

#ru

@dot_net_c_sharp | Другие наши каналы
Обновления в алгоритме развёртывания

Автор статьи поделился доработками в алгоритме развёртывания, который он описывал год назад. Тогда, пытаясь сократить материал, он пропустил важные сценарии, ставшие техдолгом. Теперь он исправляет этот недочет перед продолжением работы.

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

#ru

@dot_net_c_sharp | Другие наши каналы
Scalar вместо Swashbuckle: что нового в .Net

С .Net исчез Swashbuckle, и теперь для работы с API Microsoft предлагает использовать собственный пакет OpenApi. Вместо Swagger UI активно развивается Scalar, который легко интегрируется с .Net и поддерживает Code First подход. Простой переход с Swashbuckle!

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

#ru

@dot_net_c_sharp | Другие наши каналы
🆒3👍2
Паттерн Strangler Fig: плавная миграция к микросервисам

Преобразуйте свой монолит в современную систему с помощью паттерна Strangler Fig. Это поэтапный переход к микросервисам, позволяющий тестировать каждую составляющую и минимизировать риски. Узнайте, как компании модернизируют легаси-системы и повышают их надежность.

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

#ru

@dot_net_c_sharp | Другие наши каналы
👍1
Оптимизация кода: взгляд изнутри

Программисты часто сталкиваются с дилеммами оптимизации. Наш автор, будучи «джуниором», делится опытом рефакторинга кода. Как выбрать правильные алгоритмы и ускорить операции, например, через бинарный поиск? Когда объёмы данных растут, это становится ключевым аспектом. Обучение с LeetCode: личный опыт

Платформа LeetCode — это отличный выбор для изучения алгоритмов. Она не только предлагает разнообразные учебные планы, но и позволяет видеть разные решения задач благодаря большому сообществу. Используя визуализацию заметок в Obsidian, я углубил знания и отслеживал прогресс. Как эффективно использовать Obsidian для обучения

В статье обсудили важность практического подхода к обучению. Обзор показывает, что Obsidian отлично подходит для структурирования и пересмотра изученного материала. Это мощный инструмент для управления задачами и ведения личных записей.

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

#ru

@dot_net_c_sharp | Другие наши каналы
🤣3💊1
Forwarded from Типичный программист
LLM4Decompile: языковая модель для декомпиляции бинарников

Это опенсорс LLM-ка, способная превращать бинарный код программы в читаемый C-код. Сейчас она поддерживает декомпиляцию Linux x86_64 на всех уровнях оптимизации GCC — от O0 до O3.

Проект активно развивается: в будущем планируется поддержка других архитектур и языков. А все материалы и модель — в свободном доступе.

Реально крутой проект, аналогов пока не видел 🔥

#инструменты
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
🔐 Безопасность плагинов: новый взгляд

В статье обсуждают создание системы безопасности для менеджера плагинов. Автор делится опытом внедрения защиты динамической загрузки .dll, используя паттерн "Наблюдатель" и контроллер разрешений. Эти решения увеличивают гибкость и устойчивость системы, предотвращая угрозы.

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

#ru

@dot_net_c_sharp | Другие наши каналы
Реализация пула зависимостей в ASP.NET Core

Пост: В продолжение предыдущей статьи, автор делится примером реализации "пулового" времени жизни в ASP.NET Core. Эта концепция позволяет снизить издержки ресурсноёмких операций, улучшая производительность, благодаря повторному использованию сервисов в пределах пула. Узнайте больше о требованиях и нюансах внедрения в новой статье. 🔍 Нужен ли пул сервисов в .NET?

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

Подробности: https://andrewlock.net/creating-a-pooled-dependency-injection-lifetime/

#en

@dot_net_c_sharp | Другие наши каналы
Погружение в акторную модель с Алексеем Деевым

Ознакомьтесь с акторной моделью, которая помогает решать проблемы потоковых архитектур и улучшать управляемость сложных систем. Алексей Деев рассказывает об использовании акторам и фреймворке Orleans для .NET, а также о различиях между Proto.Actor и Akka.NET.

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

#ru

@dot_net_c_sharp | Другие наши каналы
👍3
Игнорируя null: почему старый подход работает в F#

В статье обсуждается, как последние изменения в F# влияют на работу с null и почему команда автора продолжает использовать традиционные методы. Это помогает новым разработчикам легче ориентироваться в коде. Узнайте, какие компромиссы приходится делать, взаимодействуя с C#-фреймворками.

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

#ru

@dot_net_c_sharp | Другие наши каналы
🔧 Автоматизация публикации .NET MAUI библиотеки с помощью GitHub Actions

В статье рассказывается, как настроить GitHub Actions для автоматизации сборки, упаковки и публикации .NET MAUI библиотеки в виде NuGet пакета. Используется динамическое версионирование и подпись пакета для защиты содержимого. Публикация возможна как на NuGet.org, так и на Azure DevOps.

Подробности: https://devblogs.microsoft.com/dotnet/dotnet-maui-libraries-github-actions/

#en

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