csharpproglib | Unsorted

Telegram-канал csharpproglib - Библиотека шарписта | C#, F#, .NET, ASP.NET

23284

Все самое полезное для C#-разработчика в одном канале. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/b60af5a4 Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead

Subscribe to a channel

Библиотека шарписта | C#, F#, .NET, ASP.NET

🔥 В ASP NET Core 8 появился IExceptionHandler

Проблема заключалась в том, что обработчик исключений по умолчанию всегда устанавливал HTTP-код состояния ответа равным 500.

В ASP NET Core 9 представлена ​​новая опция StatusCodeSelector, которая позволяет выбирать код состояния на основе исключения.

👉 Подробнее

#dotnet #csharp #tip by Oleg Kyrylchuk

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🏗 3 основных шаблона событийно-ориентированной архитектуры

Знание данных шаблонов позволяет:

✔️ Создавать слабосвязанные системы, в которых сбой одного компонента не приводит к полному отказу всей системы, а составные части приложения легче масштабировать и модифицировать.
✔️ Эффективно управлять асинхронными операциями и обрабатывать непредсказуемые события в системе.
✔️ Разрабатывать отзывчивые и эффективные приложения, обрабатывающие данные в реальном времени.
✔️ Создавать высоконагруженные системы, в которых требуется быстрая реакция на события.
✔️ Эффективно использовать современные технологии, например потоковую обработку данных и бессерверные вычисления.

1️⃣ Шаблон конкурирующих потребителей используется для эффективного распределения большого количества асинхронных сообщений между несколькими потребителями. Ключевой момент в этом шаблоне — необходимость обработки каждого сообщения только одним потребителем. Разные инструменты и платформы решают эту задачу по-своему:
2️⃣ Шаблон повторных попыток сообщений используется для обработки ошибок при работе с очередями сообщений. Этот шаблон позволяет создать надежную систему обработки транзакций, способную справляться с временными сбоями и обеспечивающую контролируемый процесс для работы с проблемными транзакциями, например, при обработке платежей.
3️⃣ Шаблон асинхронного запроса-ответа позволяет создавать масштабируемые и устойчивые к сбоям системы, где сервисы могут взаимодействовать асинхронно, не блокируя друг друга и сохраняя способность корректно обрабатывать ответы даже при изменении состояния системы между запросом и ответом.

👉 Подробнее читайте в нашей статье
👉 Зеркало

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🔥 Руководство по асинхронному программированию в .NET от David Fowler из команды ASP.NET

Асинхронное программирование существует уже несколько лет на .NET, но исторически у разработчиков возникали трудности в его «правильной» реализации.

С момента появления async/await в C# 5 асинхронное программирование стало мейнстримом. Современные фреймворки (например, ASP.NET Core) полностью асинхронны, и очень сложно избежать ключевого слова async при написании веб-сервисов.

В результате возникло много путаницы относительно лучших практик для async и того, как правильно его использовать. David Fowler представил рекомендации с примерами плохих и хороших паттернов написания асинхронного кода.

👉 GitHub

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

Поделитесь своим опытом: какой шрифт, на ваш взгляд, самый удобный для долгих сессий кодинга и почему? 💻🕰️

Ждем ваши ответы в комментариях! Самые интересные и полезные советы войдут в нашу статью. 📝💡

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

Как будто у Unreal и Unity родился ребёнок


— такое трогательное описание дали движку в геймдев-сообществе. Эта фраза точно передаёт его суть, ведь движок действительно задумывался как нечто среднее между Unity Engine и Unreal Engine.

Flax Engine — современный 3D-движок для разработки игр, написанный на C++ и C#. От потрясающей графики до мощных скриптов, он разработан для быстрого workflow со множеством готовых к использованию функций.

Ребята из PVS-Studio уже разобрали основные особенности движка и наиболее интересные проблемы, найденные в его исходниках с помощью одноименного статического анализатора.

👉 GitHub

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

👩‍💻 «Шарьте» значения между окружениями с помощью http-файлов в Visual Studio

Начиная с версии 17.12 Preview 2, больше не нужно явно повторять значения, которые используются в разных окружениях.

#dotnet #csharp #tip by Dave Callan

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🤔 Как работать с коллегами, застрявшими в прошлом?

C#-разработчик делился опытом работы с двумя коллегами, которые до сих пор работают по стандартам C# 1.0 и практически ничего не знают о современных методах. На Reddit пришел за советами — как быть, что делать.

💬 Кажется, главный совет в данном случае — искать другую компанию. Или есть шанс что-то исправить?

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🔼 Spread element в C# 12: простой пример

Идея похожа на ... ( три точки) в JavaScript и используется для объединения коллекций.

💬 Уже пользовались?

#dotnet #csharp #tip by Dave Callan

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🥇 Итоги конкурса: победитель определён

Надеемся, что все отлично отпраздновали день программиста. А нам за два дня пришло много ответов на нашу задачу.


У нас есть победитель, он выбран рандомно среди правильных ответов:
erdnya — аккаунт закрытый. Свяжитесь с @mdudarevcontact

Мы с ним свяжемся и дадим доступ к любому из следующих курсов

Курсы на выбор:
🔵 Архитектуры и шаблоны программирования
🔵 Основы программирования на Python
🔵 Базовые модели ML и приложения
🔵 Frontend Basic: принцип работы современного веба

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🎙Выпуск подкаста RadioDotNet про реинкарнацию Discriminated Unions, Mono и многое другое

Таймкоды:

[00:00:00] — Приветствие
[00:01:10] — Microsoft передала Mono сообществу Wine
[00:10:30] — .NET 9 Preview 7
[00:28:20] — Enable NuGet auditing for your .NET projects
[00:33:05] — Visual Studio 2022 v17.11 GA
[00:38:30] — Type Unions for C#
[01:01:15] — Кратко о разном

YouTube | Другие площадки

#подкасты

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🚀 Улучшения производительности в .NET 9: ежегодный обзор от Stephen Toub

Более 7500 PR были объединены в dotnet / runtime за последний год, из которых значительный процент так или иначе повлиял на производительность.

Stephen Toub проводит экскурсию по более чем 350 PR, которые нашли свое применение в .NET 9, отличающейся высокой производительностью.

👉 Читать

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

💬 Поделитесь опытом: на каком ноутбуке вы сейчас работаете и почему он вам нравится (или не нравится)? 🌟

Ждем ваши ответы в комментариях! Самые полезные советы войдут в нашу статью. 📝💡

Спасибо за участие! 🙌

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🤯 Рефакторим легаси при помощи ООП

Спустя годы проекты обрастают тёмными местами, в которые никто не хочет соваться, поскольку их сложно понять и легко сломать. Константин Волоховский, тимлид из PVS-Studio, рассказывает про кейс рефакторинга такого кода с переводом на ООП рельсы при помощи паттернов, причём с современным стилем.

Автор не в первый раз пишет про применение ООП на практике — одна из прошлых статей буквально так и называлась (правда с примерами на Java). Только там он фокусировался на применении поведенческих паттернов, здесь же речь пойдёт больше о паттернах порождающих, так что можно воспринимать эту статью как продолжение.

👉 Читать

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

❗️Задача для конкурса в честь дня программиста

Условие:

Даны две строки s и f (начальная и конечная) и словарь D (набор слов).

Нужно определить, можно ли преобразовать s в f, используя только слова из словаря D. При этом каждое преобразование должно менять только один символ, а длина слова должна оставаться неизменной. Если преобразование возможно, нужно найти кратчайшую последовательность таких преобразований и вернуть ее длину. Если преобразование невозможно, вернуть "Преобразование невозможно".

Пример ввода 1:

    D = ["cat", "cot", "dot", "dog", "bat", "dag"]
    s = "cat"
    t = "dog"

Вывод:
Минимальное количество шагов для преобразования 'cat' в 'dog': 3

Пример ввода 2:
    D = ["cat", "cot", "bat"]
    s = "cat"
    t = "dog"

Вывод:
Минимальное количество шагов для преобразования 'cat' в 'dog': Преобразование невозможно

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🛠️ Разработка GraphQL-клиента на .NET с помощью Rider и StrawberryShake

Если у вас возникают сложности с созданием схем, написанием запросов и интеграцией GraphQL в .NET-приложение, посмотрите в сторону плагина GraphQL в Rider + фреймворк StrawberryShake.

Под катом — гайд по настройке окружения, определению схем, генерации клиентского кода и интеграции всего этого в проект.

👉 Читать

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

Пополняем коллекцию мемов про #dotnet #maui

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🎁 256-й день года: 15 подарков, которые оценит каждый программист

Мы собрали 15 идей подарков — от практичных гаджетов до инструментов для профессионального роста. Эти подарки не только упростят рабочий процесс, но и вдохновят на новые достижения. Независимо от того, junior вы или senior, в нашем списке каждый найдёт что-то для себя.

👉 Смотреть список

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

Привет, друзья! 👋

Готовим статью «Лучшие шрифты для программирования» и хотим узнать ваше мнение! 🖥️✨

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

❗Вакансии «Библиотеки программиста» — ждем вас в команде!

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

Подробности тут

Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴

Ждем ваших откликов 👾

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

erid:2VtzqxB3X6F

Как устроена работа ИТ-специалистов в Т-Банке?

Загляните в канал T-Crew — тут показывают будни команды и делятся полезным:

— Дайджесты вакансий, регистрация на fast track и приглашения от руководителей.
— Анонсы мероприятий. Например, когда пройдет следующий ИТ-каток, ИТ-пикник и другие нашумевшие ивенты.
— Кейсы, статьи и лайфхаки для работы — от методов планирования до карьерного роста.

Подписаться на T-Crew

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

✨Мы хотим провести большой розыгрыш и подарить победителю смартфон на выбор. Помимо iPhone, предлагаем вам выбрать, какой ещё смартфон вы бы хотели видеть среди призов👇

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

Одна из самых больших проблем при использовании ASP.NET Core в Linux решается в .NET 9. Это developer certificate tool (в некоторых дистрибутивах):

dotnet dev-certs https --trust


👉 Подробнее

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

💡Модификатор доступа к файлу в C#

Он был представлен в C# 11. Видимость созданного типа ограничена исходным файлом, в котором он объявлен.

Эта фича помогает избегать конфликтов имен при написании генераторов исходного кода.

💬 Как думаете, в каких кейсах его еще можно применить?

#dotnet #csharp #tip by Oleg Kyrylchuk

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🛠️ Пример модульного теста C# с использованием паттерна Builder

💬 Кто использует паттерн Builder для настройки тестовых данных? В каких ситуациях оправданы дополнительные накладные расходы на обслуживание?

#dotnet #csharp #tip by Dave Callan

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
Азбука айтишника — здесь мы познаем азы из мира программирования

🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion

#️⃣C#

Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

☕Java

Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
Библиотека разработчика игр | Gamedev, Unity, Unreal Engine

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

Привет, друзья! 👋

Готовим статью «Лучший ноутбук для программирования в 2024 году» и хотим узнать ваше мнение! 👇💻✨

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🛠 Autofac — IoC container для .NET. Он управляет зависимостями между классами, чтобы приложение можно было легко изменять по мере масштабирования и сложности. А достигается это за счет обработки обычных .NET-классов как компонентов.

var builder = new ContainerBuilder();

builder.Register(c => new TaskController(c.Resolve<ITaskRepository>()));
builder.RegisterType<TaskController>();
builder.RegisterInstance(new TaskController());
builder.RegisterAssemblyTypes(controllerAssembly);

var container = builder.Build();


👉 GitHub

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

🆒 Дарим наш курс за ответ на задачу

В предверии дня программиста проводим конкурс: решите нашу задачу на тему программирования — рандомно выберем победителя


Подробные условия:
➡️ Решаем задачу со следующего поста
➡️ Решение присылаем в бота @ProglibContest_bot
➡️ Рандомно среди правильных ответов разыгрываем курс на выбор

Курсы на выбор:
🔵 Архитектуры и шаблоны программирования
🔵 Основы программирования на Python
🔵 Базовые модели ML и приложения
🔵 Frontend Basic: принцип работы современного веба

Таймлайн:
11-12 сентября — принимаем ответы
⬇️
13 сентября — подводим итоги

Читать полностью…

Библиотека шарписта | C#, F#, .NET, ASP.NET

Привет, друзья! 👋

Мы готовим статью о будущем AI и его влиянии на разработку. Нам важно ваше мнение! ✨

1️⃣ Как вы думаете, AI действительно изменит мир разработки? 🤖
2️⃣ Какие плюсы и минусы использования AI в разработке вы видите? 💡
3️⃣ Есть ли у вас примеры успешного применения AI в ваших проектах? 🛠️

Поделитесь своими идеями в комментариях! Самые интересные идеи и предложения мы обязательно включим в нашу статью. Спасибо за участие! 🙌

Читать полностью…
Subscribe to a channel