ar
Feedback
C# (C Sharp) programming

C# (C Sharp) programming

الذهاب إلى القناة على Telegram

По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ

إظهار المزيد

📈 نظرة تحليلية على قناة تيليجرام C# (C Sharp) programming

تُعد قناة C# (C Sharp) programming (@csharp_ci) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 18 305 مشتركاً، محتلاً المرتبة 7 337 في فئة التكنولوجيات والتطبيقات والمرتبة 36 917 في منطقة روسيا.

📊 مؤشرات الجمهور والحراك

منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 18 305 مشتركاً.

بحسب آخر البيانات بتاريخ 11 يونيو, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار -27، وفي آخر 24 ساعة بمقدار 6، مع بقاء الوصول العام مرتفعاً.

  • حالة التحقق: غير موثّقة
  • معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 16.94‎%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 8.35‎% من ردود الفعل نسبةً إلى إجمالي المشتركين.
  • وصول المنشورات: يحصل كل منشور على متوسط 3 100 مشاهدة. وخلال اليوم الأول يجمع عادةً 1 528 مشاهدة.
  • التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 0.
  • الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل .net, api, логика, архитектура, string.

📝 الوصف وسياسة المحتوى

يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ

بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 12 يونيو, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.

18 305
المشتركون
+624 ساعات
-27 أيام
-2730 أيام
أرشيف المشاركات
#ПятничныйКвиз
#ПятничныйКвиз

🔧 Shift Left с архитектурным тестированием в .NET Что делать, чтобы ваш модульный (или монолитный) .NET-проект не превратилс
🔧 Shift Left с архитектурным тестированием в .NET Что делать, чтобы ваш модульный (или монолитный) .NET-проект не превратился в «болото кода» спустя пару месяцев? Поможет механизм architecture testing, который позволяет строго контролировать архитектуру прямо в CI-пайплайне. 🎯 Почему это важно • Технический долг неизбежен: быстрые фиксы, дедлайны, новые участники — архитектура разваливается • Architecture tests — это сдвиг влево, позволяющий обнаруживать нарушения структуры на ранних этапах разработки • Это как страховка: если кто-то случайно нарушил архитектурные правила — сборка падает 🧩 Как это работает (на примере NetArchTest)

// Проверка: Ticketing-модуль не должен зависеть от Users, Events и т.д.
Types.InAssemblies(ticketingAssemblies)
  .That().DoNotHaveDependencyOnAny(otherModules)
  .Should().NotHaveDependencyOnAny(otherModules)
  .GetResult()
  .ShouldBeSuccessful();

// Проверка Clean Architecture:
Types.InAssembly(DomainAssembly)
  .Should().NotHaveDependencyOn(ApplicationAssembly.GetName().Name)
  .GetResult()
  .ShouldBeSuccessful();
✅ Можно проверять любой дизайн: • Модули — должны вызывать друг друга только через public API • Слои Clean Architecture — например, Domain не должен ссылаться на Infrastructure • Правила дизайна — все IDomainEvent должны быть sealedКонвенции имен — например, все CommandHandler'ы должны оканчиваться на CommandHandler 🛠 Итого: • Architecture tests — не просто инструмент, а средство контроля архитектуры • Работает как компилятор для архитектурных правил — это гарантирует соблюдение структуры • Идеально подходит для modular monolith, Clean Architecture и крупных систем • Сдвигает баги из продакшна в CI-пайплайн 🧭 Как начать: 1. Выберите библиотеку (ArchUnitNET, NetArchTest, …) 2. Напишите пару тестов — например, на зависимости между слоями 3. Интегрируйте в CI (GitHub Actions, Azure Pipelines, TeamCity и др.) 4. Соблюдайте — и архитектура останется в целости 🎯 Ключевой вывод С architecture testing вы не просто «следуете стандартам» — вы автоматизируете дизайн, позволяя команде фокусироваться на логике, а не на структуре. Shift Left не для QA — теперь и архитектура под защитой. 📚 Подробнее

🤖 Два подхода DDD: Rich Model vs Anemic Model Приглашаем на открытый урок. 🗓 24 июня в 20:00 МСК 🆓 Бесплатно. Урок в рамка
🤖 Два подхода DDD: Rich Model vs Anemic Model  Приглашаем на открытый урок. 🗓 24 июня в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «C# Developer Professional». На вебинаре: ✔️  Разбор концепций: чем анемичная модель (Anemic Model) отличается от богатой (Rich Model) ✔️  Рассмотрим, когда что выбрать ✔️  Оценим преимущества и недостатки каждой из моделей Кому будет полезно: - Всем, кто стремится глубже понять DDD - .NET-разработчикам, проектирующим сложные системы с долгосрочной поддержкой - Студентам, изучающим паттерны проектирования и чистую архитектуру Чему научатся участники по итогам вебинара: - Понимать, когда код попадает в антипаттерн Anemic Model - Проектировать сущности с бизнес-логикой внутри - Выбирать компромиссы: скорость разработки (Anemic) vs гибкость/безопасность (Rich). 🔗 Ссылка на регистрацию: https://otus.pw/58s6/ #реклама О рекламодателе

🏗️ Value Objects и DDD в ASP.NET Core — подробный гайд от Telerik В новом блоге Telerik разбирается ключевой принцип Domain-
🏗️ Value Objects и DDD в ASP.NET Core — подробный гайд от Telerik В новом блоге Telerik разбирается ключевой принцип Domain-Driven Design (DDD)Value Objects — и как грамотно реализовать их в ASP.NET Core. 📌 Что такое Value Object: • Объект без идентичности • Сравнивается по значению, а не по ссылке • Иммутабельный по своей сути • Является частью бизнес-логики (например, Money, Email, `Address`) 🛠 В статье: • Почему использовать Value Objects вместо простых типов • Как реализовать их в .NET (структура, инварианты, валидация) • Примеры кода, включая record, struct и кастомные value equality • Как внедрять их в Entity Framework Core без боли 💡 Отличный материал для тех, кто хочет строить чистую доменную модель и развивать архитектурное мышление. 🔗 Читай статью: https://www.telerik.com/blogs/domain-driven-design-principles-value-objects-aspnet-core #DDD #ASPNetCore #ValueObjects #SoftwareArchitecture #Telerik

Высшее на новом уровне: онлайн-магистратура от Яндекса и ИТМО. Здесь фундаментальные знания и практика для карьерного роста,
Высшее на новом уровне: онлайн-магистратура от Яндекса и ИТМО. Здесь фундаментальные знания и практика для карьерного роста, а ещё — учёба, которую можно совмещать с работой и жизнью. IT‑специальность с экспертизой Яндекса + диплом магистра гособразца = новая ступень в карьере. Приёмная кампания уже идёт! Все подробности — на дне открытых дверей: — Разбор совместной программы с ИТМО. — Всё о формате прикладной онлайн-магистратуры: что взяли от классического высшего, а что добавили из опыта специалистов Яндекса. — Общение с экспертами из вуза и ответы на вопросы. — Всё про поступление: сроки, экзамены, документы, оплата и образовательный кредит. ▷ Ждём вас 26 июня в 19:00 мск.

🧠 C#‑задача с подвохом: как работает `foreach` на изменяемой коллекции? Представим, у нас есть такой код:

List<int> numbers = new List<int> { 1, 2, 3, 4 };

foreach (var n in numbers)
{
    Console.WriteLine(n);
    if (n == 2)
        numbers.Remove(n); // 😬
}
Вопрос: Что произойдёт при запуске? 🔍 Разбор На первый взгляд — ничего особенного. Но при запуске вы получите:
1
2
Unhandled exception. System.InvalidOperationException:
Collection was modified; enumeration operation may not execute.
💣 Почему так? Потому что `foreach` в C# использует **итератор (Enumerator)**, который **не допускает изменений коллекции во время прохода**. Это встроенная защита от непредсказуемых багов и гонок. ✅ Как можно обойти? Вариант 1 — использовать for вместо foreach:

for (int i = 0; i < numbers.Count; i++)
{
    if (numbers[i] == 2)
    {
        numbers.RemoveAt(i);
        i--; // ⚠️ Обязательно откатить индекс!
    }
}
Вариант 2 — создать копию коллекции:

foreach (var n in numbers.ToList())
{
    if (n == 2)
        numbers.Remove(n);
}
🧠 Вывод: В C# `foreach` нельзя использовать на коллекциях, которые вы планируете менять в теле цикла. Это распространённая ловушка даже для опытных разработчиков. 📎 Советы: - При изменениях — лучше for или .ToList() - Внимательно читайте исключения: InvalidOperationException — ваш друг в отладке Поделитесь с коллегами — пусть никто не попадается 😊 @csharp_ci

🕹️ NET-NES — эмулятор легендарной NES, написанный на C# и Raylib После создания собственного эмулятора GameBoy (**CODE-DMG**
🕹️ NET-NES — эмулятор легендарной NES, написанный на C# и Raylib После создания собственного эмулятора GameBoy (**CODE-DMG**), следующий шаг был очевиден — NES. Консоль, оставившая след не только в истории видеоигр, но и в электронике, вдохновила на создание нового проекта — NET-NES. 🎮 Что такое NET-NES? Это NES-эмулятор, написанный на C# с использованием Raylib. Он уже способен запускать множество классических хитов от Nintendo. 📜 Немного истории: • NES (Nintendo Entertainment System) — вышла в Японии как FamiCom в 1983 году • В 1985 появилась в Северной Америке, где спасла индустрию после видеоигрового краха 1983 года • Продавалась как "игрушка" — и изменила всё 🧠 Аппаратная часть NES: • 8-битный CPU Ricoh 2A03 (~1.79 МГц), основанный на MOS 6502 • Встроенный APU (аудио) • Видео: Ricoh 2C02 — вывод 256×240, палитра 64 цвета • 2 КБ RAM + 2 КБ VRAM • ROM‑картриджи с мапперами для расширения памяти и графики 🛠️ Почему C# и Raylib? • Потому что C# — удобен, современен и любим • Raylib — весёлый, минималистичный и идеально подходит для 2D-рендера • А название NET-NES — от .NET и NES, звучит круто 😄 🔗 GitHub: github.com/Paulescu/NET-NES #nes #dotnet #emulation #gamedev #csharp #retrogaming @csharp_ci

🔥 Успех в IT = скорость + знания + окружение Здесь ты найдёшь всё это — коротко, по делу и без воды. Пока другие ищут, где “подглядеть решение”, ты уже используешь самые свежие инструменты! AI: t.me/ai_machinelearning_big_data Python: t.me/pythonl Linux: t.me/linuxacademiya Собеседования DS: t.me/machinelearning_interview C++ t.me/cpluspluc Docker: t.me/DevopsDocker Хакинг: t.me/linuxkalii Devops: t.me/DevOPSitsec Data Science: t.me/data_analysis_ml Javascript: t.me/javascriptv C#: t.me/csharp_1001_notes Java: t.me/java_library Базы данных: t.me/sqlhub Python собеседования: t.me/python_job_interview Мобильная разработка: t.me/mobdevelop Golang: t.me/Golang_google React: t.me/react_tg Rust: t.me/rust_code ИИ: t.me/vistehno PHP: t.me/phpshka Android: t.me/android_its Frontend: t.me/front Big Data: t.me/bigdatai МАТЕМАТИКА: t.me/data_math Kubernets: t.me/kubernetc Разработка игр: https://t.me/gamedev Haskell: t.me/haskell_tg Физика: t.me/fizmat 💼 Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy Папка FRONTEND: https://t.me/addlist/mzMMG3RPZhY2M2Iy 😆ИТ-Мемы: t.me/memes_prog 🇬🇧Английский: t.me/english_forprogrammers 🧠ИИ: t.me/vistehno 🎓954ГБ ОПЕНСОРС КУРСОВ: @courses 📕Ит-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy Подпишись, если хочешь быть в числе тех, кого зовут в топовые проекты!

🚀 Вышел .NET 10 Preview 5 — с улучшениями на всех фронтах! 🛠️ В этом обновлении Microsoft прокачала: • Runtime — улучшена п
🚀 Вышел .NET 10 Preview 5 — с улучшениями на всех фронтах! 🛠️ В этом обновлении Microsoft прокачала: • Runtime — улучшена производительность и управление памятью • C# — новые языковые фичи для более выразительного кода • ASP.NET Core — оптимизация рендеринга и поддержки HTTP • Blazor — упрощена работа с интерактивными компонентами • MAUI — ускорены сборки и улучшена поддержка платформ • + расширены инструменты диагностики и безопасности ✅ Почему стоит обратить внимание Серьёзные улучшения в производительности и безопасность Новые фичи как в Runtime, так и в C#, веб-фреймворках и UI (MAUI) Продолжение активного развития с учётом обратной связи сообщества 📌 Подробности 📌 Скачать .NET 10 уже сейчас выглядит как одно из самых амбициозных обновлений в экосистеме. @csharp_ci

🔍 Что под капотом у SourceForge: полный стек open-source технологий SourceForge.net — один из старейших хабов для open-source проектов (основан в 1999), до сих пор остаётся важной платформой для размещения, разработки и распространения ПО. Но что делает его таким устойчивым и масштабируемым? Компания BlackSlate раскрыла подробности о том, на чём построен SourceForge — и это настоящее пособие по продвинутой архитектуре на Python и open-source инструментах. 🧠 Архитектура SourceForge.net:Allura — основной backend-фреймворк, написанный на Python. Он отвечает за всё: трекеры задач, Git/SVN, вики, форумы и многое другое. Код — доступен на GitHub. ⚙️ Технологии под капотом: 🟣 Python — основной язык, на котором написана серверная часть. 🗄 MongoDB — NoSQL база данных для хранения проектов, тикетов, пользователей. → ORM: Ming + PyMongo 🔍 Поиск — реализован с помощью Apache Solr + pysolr → Поддержка полнотекстового поиска и фильтрации по метаданным 📬 Асинхронные задачи и очереди:RabbitMQ + Kombu — используются для обработки фонов задач 🛠 Git и SVN:GitPython — работа с Git-репозиториями → pysvn — управление Subversion 🧩 Веб-фреймворки и middleware: - TurboGears + Pylons — основа веб-интерфейса - Paste — WSGI-мидлвари - Beaker — управление сессиями и кэшами 🎨 UI и шаблоны: - Jinja2 — шаблонизатор - Pygments — подсветка синтаксиса в веб-интерфейсе 📦 Окружение и тестирование: - Vagrant — управление виртуальными dev-средами - FUSE — файловая система для работы с вложениями и архивами 📌 Почему это важно? SourceForge — это пример того, как построить надёжную, масштабируемую платформу, полностью на open-source стекe. Без дорогостоящих проприетарных решений — и при этом с полной функциональностью для миллионов проектов и разработчиков. 📎 Полный список технологий: https://www.blackslate.io/tech-stack/opensource-used-in-sourceforge Если вы создаёте свою платформу, маркетплейс, dev-инструмент или систему управления проектами — архитектура SourceForge может стать отличным референсом. @csharp_ci

🧩 Blazor и Dependency Injection: лучшие практики и примеры В Blazor встроена мощная система Dependency Injection (DI), котор
🧩 Blazor и Dependency Injection: лучшие практики и примеры В Blazor встроена мощная система Dependency Injection (DI), которая помогает создавать модульные и легко тестируемые приложения. Недавно на [Telerik Blog](https://www.telerik.com/blogs/blazor-basics-dependency-injection-best-practices-use-cases) вышла отличная статья с практическими советами по использованию DI в Blazor. 🔧 Типы внедрения зависимостей: - Constructor Injection: предпочтительный способ для обязательных зависимостей. - Property Injection: используется для опциональных зависимостей с помощью @inject или [Inject]. - Service Locator: избегайте этого подхода, так как он усложняет тестирование и нарушает принципы DI. 🔄 Варианты времени жизни сервисов: - Singleton: один экземпляр на всё приложение. - Scoped: один экземпляр на сессию пользователя. - Transient: новый экземпляр при каждом запросе. 💡 Рекомендации: - Используйте интерфейсы для определения зависимостей. - Избегайте внедрения Scoped сервисов в Singleton сервисы. - Для управления временем жизни сервисов используйте OwningComponentBase. 📚 Примеры использования: - Внедрение HttpClient для выполнения HTTP-запросов. - Использование NavigationManager для управления навигацией. - Внедрение IJSRuntime для взаимодействия с JavaScript. 📖 Подробнее читайте в статье @csharp_ci

Давно хотели освоить программирование, но вас останавливала нехватка времени или строгие дедлайны? Тогда советуем обратить вн
+4
Давно хотели освоить программирование, но вас останавливала нехватка времени или строгие дедлайны? Тогда советуем обратить внимание на бесплатные курсы Яндекс Лицея по Python, Go и C++ для начинающих. Заниматься на них можно когда и где угодно, ведь уроки доступны онлайн и в них нет дедлайнов! Вас ждут: ✅ Качество: занятия разработаны практикующими экспертами Яндекса. ✅ Свобода: пользуйтесь автоматической проверкой решений и задавайте вопросы через поддержку. ✅ Перспективы: после завершения вы получите уверенную базу для дальнейшего роста, а также сертификат, который пригодится при поступлении в Яндекс Лицей. Не откладывайте на потом — выберите курс и зарегистрируйтесь на сайте!

🧠 Задача для .NET разработчиков: «Загадочная утечка памяти в ASP.NET Core приложении» 🧩 Уровень: Senior .NET / Backend Engineer 🎯 Цель: Найти и устранить причину роста памяти без падений и исключений 📍 Ситуация: У вас — высоконагруженное API на ASP.NET Core (.NET 8), работающее под Linux в контейнере. Сервис обрабатывает тысячи запросов в минуту. Мониторинг показывает: - Память растёт стабильно, но не освобождается - GC работает, но не очищает выделенную память - dotnet-counters показывает рост в LOH (Large Object Heap) - Приложение не падает, но хост начинает свапать и тормозить - При перезапуске — память очищается, но через 2–3 часа снова заполняется ❗ В логах — тишина, ошибок нет. Библиотеки: Newtonsoft.Json, HttpClient, MemoryCache, EF Core. --- 🧩 Твоя задача: 1. Почему .NET GC может не освобождать LOH, даже при работе GC? 2. Какие действия вызывают накопление в LOH? 3. Как можно отследить, какие объекты скапливаются в памяти? 4. Чем опасен повторный вызов HttpClient или StringBuilder без очистки? 5. Как корректно использовать MemoryCache, чтобы избежать утечек? 💡 Подсказка: - LOH начинается с объектов > 85,000 байт - Часто виноваты: большие строки, сериализация, `ToString()`, `MemoryStream`, `Image`, `byte[]` - `MemoryCache` может хранить сильные ссылки бесконечно, если не задано время жизни - Частое создание `HttpClient` — может удерживать сокеты в TIME_WAIT и загонять GC в ступор 🛠 Решение: 1. Запускаем профилировщик:

   dotnet-gcdump collect -p <PID>
   dotnet-gcdump analyze dump.gcdump
   
2. Смотрим типы с самым большим retained size: List<string>, byte[], MemoryStream → В коде — сериализация в JSON огромных объектов без ограничения глубины 3. Находим участок с JsonConvert.SerializeObject(hugeObject) без MaxDepth 4. Исправления: - Добавить настройки сериализации:

     new JsonSerializerSettings { MaxDepth = 5, ReferenceLoopHandling = Ignore }
     
- Ограничить MemoryCache по размеру:

     new MemoryCache(new MemoryCacheOptions { SizeLimit = 100_000_000 });
     
- Использовать HttpClientFactory вместо new HttpClient() на каждый запрос 5. Альтернатива: перейти на System.Text.Json с Utf8JsonWriter — меньше аллокаций 📌 Вывод: Даже без явных ошибок .NET-приложение может стабильно "утекать" в LOH — через сериализацию, кэш или неправильную работу с потоками. Только анализ дампа памяти и правильная конфигурация GC и кешей помогут найти такие проблемы. @csharp_ci

Что выведет на экран это код?
Anonymous voting

#ПятничныйКвиз
#ПятничныйКвиз

🚀 Как ускорить ASP.NET Core API: 6 рабочих приёмов Если ваш API на .NET тормозит под нагрузкой — вот краткий гайд, как прока
🚀 Как ускорить ASP.NET Core API: 6 рабочих приёмов Если ваш API на .NET тормозит под нагрузкой — вот краткий гайд, как прокачать его производительность. ): ⚡ 1. Async/await везде Избегай .Result и .Wait() — они блокируют потоки. Асинхронность улучшает масштабируемость. 📉 2. Добавь пагинацию Не отдавай 10 000 записей за раз. Параметры page и pageSize — must-have для любых списков. 🚫 3. Используй `AsNoTracking` в EF Core Если данные не редактируются — отключай отслеживание изменений. Это экономит память и ускоряет запросы. 📦 4. Включи сжатие ответов Подключи Gzip или Brotli, особенно если отдаёшь большие JSON-объекты. 🧠 5. Кэшируй часто запрашиваемые данные Используй IMemoryCache или Redis — уменьши нагрузку на базу. 📤 6. Передавай DTO, а не сущности Не светите внутренними моделями. Создавай DTO и отправляй только нужные поля. 🧪 Подробнее с примерами кода — в оригинальном сайде: https://dev.to/this-is-learning/tips-for-improving-api-performance-in-aspnet-core-n4o @csharp_ci

🔐 AuthenticationProperties в ASP.NET Core — недооценённый, но важный механизм Если вы используете куки или OpenID Connect в
🔐 AuthenticationProperties в ASP.NET Core — недооценённый, но важный механизм Если вы используете куки или OpenID Connect в ASP.NET Core, то наверняка сталкивались с объектом AuthenticationProperties. Он не просто "дополнительные параметры" — это мощный инструмент управления поведением аутентификации. 💡 Что можно сделать с AuthenticationProperties: • ⏳ Установить срок действия куки:

new AuthenticationProperties { ExpiresUtc = DateTimeOffset.UtcNow.AddHours(1) }
• ↩️ Указать URL возврата после логина:

new AuthenticationProperties { RedirectUri = "/dashboard" }
• 🧭 Добавить временные метки, элементы состояния, флаги: Например, IsPersistent, IssuedUtc, AllowRefresh, и кастомные значения. • 🧠 Используется в: HttpContext.SignInAsync(...) ChallengeAsync(...) для OIDC редиректах после логина/логаута 🛠️ Это ключевой объект, если вы хотите более гибко управлять логикой входа, выхода и жизненным циклом сессии в ASP.NET Core. 📎 Полный разбор: https://blog.duendesoftware.com/posts/20250527-the-role-of-authenticationproperties-in-aspnet-core @csharp_ci

Какой язык более читаемый: C# или Python? Программисты забивают на безопасность? Обсуждаем эти и другие холиварные темы в шоу Контура «Согласен — не согласен», где сталкиваются два представителя разных IT-профессий, каждый со своим мнением и бэкграундом. Cмотрите самые горячие выпуски🔥 ➡️ С# vs Python-разработчики: какой язык круче ➡️ Джун vs cеньор-разработчики: нужны ли джуны в бигтехе ➡️ Бэкендер vs фронтендер: кто больше страдает ➡️ Программист vs учитель информатики: делать ли программирование обязательным в школе ➡️ Безопасник vs программист: кто должен думать об уязвимости продукта Новые дискуссии выходят в канале @KonturTech каждые две недели. Будет эмоционально, но с уважением. 16+. Реклама. АО «ПФ «СКБ Контур», ОГРН 1026605606620. 620144, Екатеринбург, ул. Народной Воли, 19А. Erid: 2SDnjcTtt77

🔥 Новая эра C# — dotnet run app.cs в .NET 10 Preview 4 Теперь вы можете запускать C#-файлы напрямую, без создания проекта: dotnet run hello.cs 📌 Что нового: Без .csproj — пишите и запускайте C#-код как скрипты. Директивы в файле: #:package — подключение NuGet-пакетов. #:sdk — выбор SDK (например, для ASP.NET). #:property — установка свойств сборки. Поддержка shebang — делайте .cs-файлы исполняемыми скриптами в Unix-системах. 🛠 Преимущества: Быстрый старт без лишних настроек. Идеально для прототипирования и обучения. Лёгкий переход от скрипта к полноценному проекту с dotnet project convert. 🔗 Подробнее: devblogs.microsoft.com/dotnet/announcing-dotnet-run-app @csharp_ci

Что выведет на экран это код?
Anonymous voting