.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
Оптимизация кода: взгляд изнутри

Программисты часто сталкиваются с дилеммами оптимизации. Наш автор, будучи «джуниором», делится опытом рефакторинга кода. Как выбрать правильные алгоритмы и ускорить операции, например, через бинарный поиск? Когда объёмы данных растут, это становится ключевым аспектом. Обучение с 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 | Другие наши каналы
Переосмысление паттерна Visitor в C#

В статье исследуется реализация паттерна Visitor на C#, решающая проблемы с типобезопасностью и динамическим приведением типов. Рассматриваются классические и современные подходы, улучшения структуры кода и снижение циклических зависимостей для более поддерживаемых проектов.

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

#ru

@dot_net_c_sharp | Другие наши каналы
🔍 Как работать с API Яндекс Метрики: краткое руководство

Чтобы начать работу с API Яндекс Метрики, необходимо сначала зарегистрировать приложение через Яндекс OAuth и получить токен авторизации. Этот токен потом используется для синхронизации данных, таких как возрастные интервалы, с вашей базой данных. Основные шаги включают регистрацию, получение и сохранение токена. 🔍 Обработка возрастных данных с помощью Яндекс Метрики

Новый метод синхронизации с Яндекс Метрикой позволяет получить возрастные данные за заданный период. Сначала формируется запрос через API, включая все необходимые параметры, такие как токен и фильтры. Данные группируются по датам и сохраняются в базе, что обеспечивает более точное понимание аудитории. 🔍 Анализ возрастных интервалов с Yandex Metrica

В статье раскрыт процесс интеграции с Yandex Metrica для сбора данных о возрастных группах посетителей. Рассмотрены модели данных, построение запросов к API и особенности работы с метриками. Для более точной настройки предложено сверять данные с официальной документацией.

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

#ru

@dot_net_c_sharp | Другие наши каналы
1
Гибридный подход в EF Core: T-SQL и .NET

Хотите повысить производительность .NET Core приложений? Узнайте, как гибридный подход с использованием T-SQL и LINQ в Entity Framework Core может улучшить ваш проект. Статья рассматривает способы оптимизации и лучшие практики работы с базами данных.

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

#ru

@dot_net_c_sharp | Другие наши каналы
👍2
Кодогенерация на C#: как начать правильно

Авторы новой серии статей объясняют, как эффективно применять кодогенерацию на C#. Вы узнаете о настройке генераторов, использовании Microsoft.CodeAnalysis и преимуществах создания точек входа. Это поможет ускорить процессы разработки .NET проектов. Рекомендуем к прочтению!

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

#ru

@dot_net_c_sharp | Другие наши каналы
Необычные запросы на разработку: плакать или смеяться?

В статье разработчик из финтех-компании Богдан делится забавными и иногда абсурдными требованиями от коллег. Один случай: API вместо отчета возвращает ошибку, а команда просит переделать так, чтобы ошибка отображалась в PDF, потому что система не обрабатывает ошибки. Необычные истории интеграций

Как вы относитесь к параметрам на кириллице? А к JSON-телам в 1С? Наши коллеги столкнулись с забавными вызовами при интеграции, от экзотических методов до идей вроде контроля загрузки по CPU. Эта статья — дорожка в мир нестандартных решений и изобретательных подходов. Забавные моменты из жизни IT-специалистов

В статье обсуждаются нелепые и смешные ситуации, с которыми сталкиваются IT-специалисты при работе. Одна из них — предложение адаптировать потоки в зависимости от загрузки ЦПУ, а также требования зашифровать данные с помощью Base64, как будто это надежное шифрование.

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

#ru

@dot_net_c_sharp | Другие наши каналы
😁2🗿1
Инновации в C#: использование await this

Текст: В статье обсуждается необычное применение await this в C#. Автор делится опытом использования этой конструкции для последовательной асинхронной обработки данных, что устраняет дублирования и пропуски. Если вас интересуют нетривиальные решения, эта статья — находка.

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

#ru

@dot_net_c_sharp | Другие наши каналы
Нужен ли сеньору второй язык программирования? Опытом поделился разработчик с 18 годами стажа

Нужен ли сеньору второй язык программирования? Опыт и выводы разработчика с 18 годами стажа — когда и зачем изучать новые языки

Читать: «Нужен ли сеньору второй язык программирования? Опытом поделился разработчик с 18 годами стажа»

#ru

@dot_net_c_sharp | Другие наши каналы
👍3
Новое AI-шаблон для .NET позволяет быстро создать чат-приложение на основе больших языковых моделей. В превью-версии доступны GitHub Models, OpenAI и локальный запуск, а также разные способы хранения данных для прототипирования и экспериментов. Новый .NET AI Chat Web App позволяет создавать чат-ботов, умеющих отвечать на вопросы, используя данные из PDF-файлов. В основе — генерация эмбеддингов и поиск по ним, что обеспечивает точные ответы с указанием источников. В следующем посте рассмотрят работу с веб-данными.

Подробности: https://andrewlock.net/exploring-the-new-ai-chat-template/

#en

@dot_net_c_sharp | Другие наши каналы
2👍1
Почему стартапы выбирают C# для своих продуктов? В статье рассказывается, как язык сочетает высокую продуктивность, богатую стандартную библиотеку и отличные инструменты разработки. Этот выбор помогает быстро запускать и поддерживать сложный B2B SaaS-продукт.

Подробности: https://devblogs.microsoft.com/dotnet/why-we-built-our-startup-in-csharp/

#en

@dot_net_c_sharp | Другие наши каналы
7👍1
Новый синтаксис extension members в C# 14 расширяет возможности расширяющих методов и свойств. Теперь можно объявлять статические и экземплярные расширения, улучшая читаемость и организацию кода без потери обратной совместимости. Новый синтаксис расширяющих методов в C# 14 упрощает создание расширений, сохраняя совместимость с существующими. Обсуждаются ограничения и детали реализации, которые помогут лучше понять изменения и использовать новые возможности языка. Подробнее о нововведениях – в статье.

Подробности: https://devblogs.microsoft.com/dotnet/csharp-exploring-extension-members/

#en

@dot_net_c_sharp | Другие наши каналы
👍2
JSON в Unity: сохраняем прогресс игрока

JSON — идеальный формат для сохранения данных в Unity. В статье описывается, как с его помощью можно сохранять и загружать положение игрока между сессиями. Используйте JsonUtility или Newtonsoft.Json для сериализации данных и облегчения управления объектами и зависимостями в проекте.

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

#ru

@dot_net_c_sharp | Другие наши каналы
👍1
🚀 Расширение возможностей WPF приложений

Команда OpenSilver адаптировала свою технологию для запуска WPF приложений на iOS и Android, используя .NET MAUI Blazor Hybrid. Это позволяет сохранить нативный интерфейс и доступ к API платформы. Основное препятствие — работа с потоками, что было успешно преодолено. OpenSilver и MAUI Blazor Hybrid: Новый уровень разработки приложений

Текст: С использованием OpenSilver и MAUI Blazor Hybrid разработка на всех платформах становится проще. Теперь доступ к нативным API возможен напрямую из C#, что значительно ускоряет процесс. Разработка происходит в Visual Studio 2022, поддерживая Windows и Android. Новые горизонты для кроссплатформенных приложений с OpenSilver и MAUI

Преобразуйте свои классические десктопные приложения в универсальные кроссплатформенные решения с помощью OpenSilver и MAUI. Эти инструменты позволяют публиковать приложения во всех основных магазинах, открывая новые возможности для разработчиков. Узнайте больше о ToDoCalendar!

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

#ru

@dot_net_c_sharp | Другие наши каналы
👍5🔥3🤔1
Новый шаблон .NET AI Chat Web App позволяет создавать чат-ботов, которые отвечают на вопросы, используя содержимое сайтов. В примере с подкастом The Modern .NET Show реализован чат, который анализирует веб-страницы и предоставляет точные ответы на основе последних данных. Создан пример приложения на .NET, которое индексирует страницы сайта и позволяет общаться с чат-ботом, отвечающим с цитатами из источника. В статье подробно описывается процесс загрузки, обработки и оптимизации данных для улучшения работы чат-бота.

Подробности: https://andrewlock.net/using-the-new-ai-template-to-create-a-chatbot-about-a-website/

#en

@dot_net_c_sharp | Другие наши каналы
🤣4👍1
Обновление .NET 10 Preview 4: улучшена производительность рантайма, новые возможности для ASP.NET Core, Blazor и .NET MAUI. Обновления затрагивают также F#, Windows Forms и Entity Framework Core. Подробности и ссылки на полный список изменений доступны в официальных заметках.

Подробности: https://devblogs.microsoft.com/dotnet/dotnet-10-preview-4/

#en

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