Forwarded from Библиотека программиста | программирование, кодинг, разработка
🚀💾⚡ Protocol Buffers: самая эффективная бинарная альтернатива текстовому формату
Protobuf — механизм бинарной сериализации данных, разработанный компанией Google. Протокол не зависит от языка и платформы, и обеспечивает более компактную и быструю сериализацию по сравнению с традиционными текстовыми форматами.
Особенно интересно, как решается проблема совместимости версий. Обо всем этом подробнее читайте в нашей статье👇
🔗 Читать статью
🔗 Зеркало
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
Forwarded from Библиотека питониста | Python, Django, Flask
🔀 Асинхронность — не баг, а фича: 4 паттерна, которые спасут ваш распределённый сервис
Представь, что ты отправляешь сообщение в мессенджере, а оно доходит с задержкой в минуту. Бесит? А теперь представь, что у тебя сервис с миллионами пользователей, и каждое их действие должно мгновенно отражаться везде. Звучит как кошмар? Спокойно, есть четыре проверенных способа решить эту головоломку, и они реально работают.
👉 Читать статью
Представь, что ты отправляешь сообщение в мессенджере, а оно доходит с задержкой в минуту. Бесит? А теперь представь, что у тебя сервис с миллионами пользователей, и каждое их действие должно мгновенно отражаться везде. Звучит как кошмар? Спокойно, есть четыре проверенных способа решить эту головоломку, и они реально работают.
👉 Читать статью
👍10🤔1
🕹️ Что нового в Unity 6? Обзор нововведений и ошибок в опенсорсных исходниках от команды PVS-Studio
Наконец, состоялся релиз Unity 6! Разработчики называют эту версию самой стабильной за всё время существования движка. Что ж, пришло время в этом убедиться:
◼️Что нового в Unity 6?
▫️Интеграция ИИ
▫️Расширение инструментария для создания многопользовательских проектов
▫️Оптимизация нагрузки на CPU
▫️Оптимизация нагрузки на GPU
▫️Улучшение качества рендеринга среды и многое другое
◼️Разбор новых ошибок в исходниках движка
Наконец, состоялся релиз Unity 6! Разработчики называют эту версию самой стабильной за всё время существования движка. Что ж, пришло время в этом убедиться:
◼️Что нового в Unity 6?
▫️Интеграция ИИ
▫️Расширение инструментария для создания многопользовательских проектов
▫️Оптимизация нагрузки на CPU
▫️Оптимизация нагрузки на GPU
▫️Улучшение качества рендеринга среды и многое другое
◼️Разбор новых ошибок в исходниках движка
Привет, друзья! 👋
Мы готовим статью о секретах мастерства в программировании и хотим узнать ваше мнение! 💻
Мы готовим статью о секретах мастерства в программировании и хотим узнать ваше мнение! 💻
Какие качества, по вашему мнению, отличают действительно выдающегося программиста? 🏆
Anonymous Poll
37%
Глубокие технические знания
69%
Умение решать сложные проблемы
64%
Способность быстро учиться новому
26%
Отличные коммуникативные навыки
2%
Другое (напишите в комментариях)
🚀 Сравнение производительности конкатенации строк в .NET 9
Есть и другие подходы, когда нам нужна ещё более высокая производительность, но из распространённых подходов, показанных ниже,
#dotnet #csharp #tip by Dave Callan
Есть и другие подходы, когда нам нужна ещё более высокая производительность, но из распространённых подходов, показанных ниже,
StringJoin
выигрывает. #dotnet #csharp #tip by Dave Callan
👍25👏3👾2
⚒️ Microsoft.Extensions.VectorData.Abstractions — новая библиотека, которая предоставляет .NET-экосистеме абстракции для интеграции векторных хранилищ в приложения и библиотеки .NET.
🤔 Почему векторные хранилища?
Векторные базы данных важны для поиска и генерации ответов с помощью ИИ. Подобно тому, как реляционные и документоориентированные базы данных оптимизированы для работы со структурированными и частично структурированными данными, векторные базы данных созданы для эффективного хранения, индексирования и управления данными, представленными в виде векторов.
В результате алгоритмы индексирования, используемые векторными базами данных, оптимизированы для эффективного извлечения данных, которые могут быть использованы в ваших приложениях.
👉 Анонс предварительной версии библиотеки
🤔 Почему векторные хранилища?
Векторные базы данных важны для поиска и генерации ответов с помощью ИИ. Подобно тому, как реляционные и документоориентированные базы данных оптимизированы для работы со структурированными и частично структурированными данными, векторные базы данных созданы для эффективного хранения, индексирования и управления данными, представленными в виде векторов.
В результате алгоритмы индексирования, используемые векторными базами данных, оптимизированы для эффективного извлечения данных, которые могут быть использованы в ваших приложениях.
👉 Анонс предварительной версии библиотеки
❤9👍3
📈 Исследование рынка .NET разработки: анализ текущих тенденций и прогнозы
.NET остается одной из ведущих платформ для разработки корпоративных приложений, особенно в России, где она используется как в крупных корпорациях, так и в малом бизнесе.
🤔 Но как на самом деле чувствует себя сообщество разработчиков?
Для того чтобы понять это, команда fuse8 опросила 300 российских .NET разработчиков и руководителей разработки. Читайте подробнее, что из этого получилось👇
🔗 Читать
.NET остается одной из ведущих платформ для разработки корпоративных приложений, особенно в России, где она используется как в крупных корпорациях, так и в малом бизнесе.
🤔 Но как на самом деле чувствует себя сообщество разработчиков?
Для того чтобы понять это, команда fuse8 опросила 300 российских .NET разработчиков и руководителей разработки. Читайте подробнее, что из этого получилось👇
🔗 Читать
👍10
Forwarded from Библиотека девопса | DevOps, SRE, Sysadmin
🔐 🔑 OAuth 2: как работает современная авторизация
Помнишь кнопку «Войти через Google»? Та самая кнопка, которая избавляет от необходимости запоминать очередной пароль. Сегодня разберем, как работает эта магия изнутри, почему гиганты вроде Spotify и Medium используют такой способ входа, и как внедрить его в свое приложение. Спойлер: это проще, чем кажется, и гораздо безопаснее традиционной формы регистрации.
Читать статью
Помнишь кнопку «Войти через 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 и генераторов исходного кода, о плюсах, минусах и практической пользе технологии.
🔗 Смотреть доклад & Презентация
Иногда .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 | Другие площадки
#подкасты
⏳ Таймкоды:
[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