Библиотека шарписта | C#, F#, .NET, ASP.NET
22.9K subscribers
2.26K photos
35 videos
85 files
4.42K links
Все самое полезное для C#-разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/b60af5a4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead
Download Telegram
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🚀💾 Protocol Buffers: самая эффективная бинарная альтернатива текстовому формату

Protobuf — механизм бинарной сериализации данных, разработанный компанией Google. Протокол не зависит от языка и платформы, и обеспечивает более компактную и быструю сериализацию по сравнению с традиционными текстовыми форматами.

Особенно интересно, как решается проблема совместимости версий. Обо всем этом подробнее читайте в нашей статье👇

🔗 Читать статью
🔗 Зеркало
1
🔥 Кстати, Эндрю Лок добавил экспериментальную поддержку interceptors в пакет NetEscapades.EnumGenerators

NetEscapades.EnumGenerators создает методы расширения для enums, позволяя быстро выполнять операции, аналогичные рефлексии.

Поддержка interceptors позволяет заменять вызовы ToString() и HasFlag(). Это требует .NET SDK версии 8.0.400 или выше. Interceptors можно включить, установив EnableEnumGeneratorInterceptor в файле проекта.

dotnet add package NetEscapades.EnumGenerators --version 1.0.0-beta11


👉 Подробнее
👍11🥱2
🔀 Асинхронность — не баг, а фича: 4 паттерна, которые спасут ваш распределённый сервис

Представь, что ты отправляешь сообщение в мессенджере, а оно доходит с задержкой в минуту. Бесит? А теперь представь, что у тебя сервис с миллионами пользователей, и каждое их действие должно мгновенно отражаться везде. Звучит как кошмар? Спокойно, есть четыре проверенных способа решить эту головоломку, и они реально работают.

👉 Читать статью
👍10🤔1
🕹️ Что нового в Unity 6? Обзор нововведений и ошибок в опенсорсных исходниках от команды PVS-Studio

Наконец, состоялся релиз Unity 6! Разработчики называют эту версию самой стабильной за всё время существования движка. Что ж, пришло время в этом убедиться:

◼️Что нового в Unity 6?
▫️Интеграция ИИ
▫️Расширение инструментария для создания многопользовательских проектов
▫️Оптимизация нагрузки на CPU
▫️Оптимизация нагрузки на GPU
▫️Улучшение качества рендеринга среды и многое другое
◼️Разбор новых ошибок в исходниках движка
Привет, друзья! 👋

Мы готовим статью о секретах мастерства в программировании и хотим узнать ваше мнение! 💻
🚀 Сравнение производительности конкатенации строк в .NET 9

Есть и другие подходы, когда нам нужна ещё более высокая производительность, но из распространённых подходов, показанных ниже, StringJoin выигрывает.

#dotnet #csharp #tip by Dave Callan
👍25👏3👾2
⚒️ Microsoft.Extensions.VectorData.Abstractions — новая библиотека, которая предоставляет .NET-экосистеме абстракции для интеграции векторных хранилищ в приложения и библиотеки .NET.

🤔 Почему векторные хранилища?

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

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

👉 Анонс предварительной версии библиотеки
9👍3
📈 Исследование рынка .NET разработки: анализ текущих тенденций и прогнозы

.NET остается одной из ведущих платформ для разработки корпоративных приложений, особенно в России, где она используется как в крупных корпорациях, так и в малом бизнесе.

🤔 Но как на самом деле чувствует себя сообщество разработчиков?

Для того чтобы понять это, команда fuse8 опросила 300 российских .NET разработчиков и руководителей разработки. Читайте подробнее, что из этого получилось👇

🔗 Читать
👍10
🔐 🔑 OAuth 2: как работает современная авторизация

Помнишь кнопку «Войти через Google»? Та самая кнопка, которая избавляет от необходимости запоминать очередной пароль. Сегодня разберем, как работает эта магия изнутри, почему гиганты вроде Spotify и Medium используют такой способ входа, и как внедрить его в свое приложение. Спойлер: это проще, чем кажется, и гораздо безопаснее традиционной формы регистрации.

Читать статью
🥱6🌚1
🛠️ «Native AOT. Возможности и ограничения» — доклад Андрея Порожнякова из SKAI

Иногда .NET-приложения запускаются дольше, чем нужно. Это связано с особенностями JIT-компиляции — при каждом старте IL-код компилируется в машинные инструкции. Проблема становится заметной, когда приложения запускаются часто, например, при реализации FaaS.

Решением может стать ahead-of-time, или AOT-компиляция. Это одна из функций, над которой сейчас работает группа ASP.NET Microsoft. Она генерирует машинные инструкции на этапе сборки приложения, и можно обойтись без IL-кода. Но такой подход предъявляет ряд требований к приложению и разработке.

Андрей Порожняков рассказывает, как ускорить запуск приложения за счёт AOT-компиляции. Рассматривает требования и ограничения публикации Native AOT. Отдельно затрагивает поддержку Minimal API и генераторов исходного кода, о плюсах, минусах и практической пользе технологии.

🔗 Смотреть доклад & Презентация
👍15🥱3👾1
🎙 Сравнения Rust и C#, Minimal API и Controllers, Problem и Details: 103-й выпуск подкаста RadioDotNet

Таймкоды:

[00:01:50] — Provide opt-in to experimental APIs
[00:11:50] — Comparison of Rust's borrow checker to C#
[00:36:35] — Problem Details for ASP.NET Core APIs
[00:54:30] — Comparing performance between Minimal API and classic Controllers
[01:05:30] — API Error Messages for a Good Developer Experience
[01:19:15] — Книга «ASP.NET Core в действии 3» в правильном переводе
[01:22:55] — Кратко о разном

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

#подкасты
👍10❤‍🔥4😁3