NeuroLook
Open in Telegram
1 669
Subscribers
No data24 hours
-37 days
-1130 days
Posts Archive
1 669
🖥 Обучающая статья, которая объясняет, как передавать данные в обработчики событий в C# с использованием класса EventArgs
🌟 На примере системы управления запасами демонстрируется создание пользовательского класса StockChangedEventArgs для отслеживания изменений в количестве товаров. Статья охватывает создание и использование этих классов в обработчиках событий для более гибкой передачи данных. Приведены примеры кода и задания для практики
🔗 Ссылка: *клик*
1 669
🖥 Используйте коллекционные выражения в .NET 8!
🌟 Коллекционные выражения — это лучший и более чистый способ создания коллекций. Он заменяет new[] просто [ ]!
1 669
Всем привет!
Наша международная продуктовая компания в сфере IoT ищет опытного C# разработчика для работы над проектом по созданию 3D digital twins для промышленных компаний. Мы разрабатываем передовые платформы для управления и мониторинга сетей, интегрирующие сбор данных в реальном времени, автоматизацию и аналитику. Работа полностью удалённая (не из РФ и РБ).
🛠 Стек: C#, .NET Core, REST API, WebSockets, MongoDB, SNMP
💼 Зарплата: $7000-9000
👥 Команда: небольшая и плоская, опытные разработчики со стажем 10+ лет.
Требуется опыт глубокой работы с протоколом SNMP и кроссплатформенной разработкой (Windows, Linux).
Пока на практике, нам встречаются либо опытные C# разработчики без опыта SNMP, либо сильные специалисты со знанием SNMP, но с другим стэком технологий (обычно С++, Java).
Если вы имеете глубокие знания и обширный опыт с C# и SNMP - будем очень рады познакомиться и пообщаться. Если вы знаете таких специалистов - будем признательны за рекомендацию, готовы обсудить бонус в случае найма такого специалиста к нам в команду
Если интересно — пишите в личные сообщения !
Вакансии C#
1 669
🖥 Создание повторно используемых методов расширения в C#!
💡 Методы расширения — это мощная функция в C#, которая позволяет добавлять новый функционал к существующим типам без изменения их исходного кода.
Вы можете создавать методы расширения практически для всего: классов, структур, интерфейсов и даже делегатов. функциональность
🌟 В этой статье рассматривается, как создавать методы расширения для общего класса для больших проектов. Это поможет вам понять, как расширить функциональность кода таким образом, чтобы ее было удобно поддерживать и использовать повторно в нескольких проектах
🔗 Ссылка: *клик*
1 669
🖥 Статья на блоге Microsoft подробно объясняет, как использовать JSON Schema для управления структурированным выводом OpenAI моделей в .NET-приложениях
🌟 Основная цель — улучшить формат и структуру ответов от моделей, делая их более управляемыми и предсказуемыми. Использование JSON Schema позволяет заранее определить, каким должен быть ответ модели, что особенно полезно для обработки данных в строго заданных форматах. В статье приводятся примеры использования этой техники и интеграции с .NET для создания надежных решений
🔗 Читать: *клик*
1 669
🖥 Полезная статья, которая описывает паттерн проектирования Iterator в языке C#. Этот паттерн предоставляет способ последовательного доступа к элементам коллекции без раскрытия ее внутренней структуры
🌟 Приведен пример с реализацией интерфейсов IIterator<T> и ICollection<T>, демонстрирующий, как с помощью итератора можно перебрать элементы коллекции (в данном случае список товаров). Статья объясняет, как это упрощает доступ к элементам и улучшает читаемость кода
🔗 Ссылка: *клик*
1 669
🎉🎉🎉 Релиз .NET Aspire 9.0 RC1!
Полная информация о выпуске:
https://learn.microsoft.com/dotnet/aspire/whats-new/dotnet-aspire-9-release-candidate-1
1 669
🖥 В этой статье автор объясняет, почему следует избегать ленивой загрузки (lazy loading) сущностей в ASP.NET приложениях
🌟 Ленивое выполнение запросов может значительно замедлить работу веб-приложений, так как увеличивает количество запросов к базе данных, особенно при сложных связях между сущностями. Это приводит к проблемам с производительностью и ненужным нагрузкам. Автор рекомендует отключать ленивую загрузку и использовать жадную загрузку (eager loading) для более эффективной работы
🔗 Подробнее: *клик*
1 669
🖥 Интересный тред на Reddit, который обсуждает использование "Results Pattern" в .NET. Это подход, который предлагает способ обработки результатов выполнения операций в коде, где вместо использования исключений для ошибок, методы возвращают объект результата, содержащий как успешные данные, так и информацию об ошибке (если она произошла)
🌟 Такой паттерн улучшает читаемость кода, упрощает отладку и снижает вероятность исключений в рантайме, делая код более предсказуемым и надежным
🔗 Читать: *клик*
1 669
🎹 Сolorchord.net
Color Chord - это визуализатор хроматической музыки в реальном времени. Основан на работе cnlohr, портирован на C#.NET c добавлением функционала.
Хроматическими по существу называются такие интервалы, которые образуются семью и более квинтовыми шагами, а именно: увеличенная прима (и уменьшённая октава); увеличенная квинта (и уменьшённая кварта); увеличенная секунда (и уменьшённая септима);
🖥 Github
1 669
+1
🖥 Autofac — полезный IoC container для .NET.
Он помогает управлять зависимостями между классами, для того, чтобы приложение можно было легко изменять по мере масштабирования и сложности.
Это достигается за счет обработки обычных .NET-классов как компонентов.
Используете ли вы в своей практике IoC-контейнеры (которые позволяют упростить и автоматизировать написание кода), в частности, Autofac?
▪ Github
▪ Docs
1 669
🖥 Полезная статья, которая посвящена созданию динамических фильтров в C# с помощью Expression Trees. Автор объясняет, как использовать Expression Trees для построения гибких условий фильтрации в контексте минимального API в .NET. Это позволяет избежать жестко закодированных запросов и упрощает создание динамических поисковых запросов, что особенно полезно в сложных приложениях с различными требованиями к выборке данных.
🌟 Статья содержит практические примеры реализации с использованием C# и показывает реальные примеры
🔗 Ссылка: *клик*
1 669
🖥PrivateConstructorDiagnosticSuppressor — библиотека для решения ошибки CS8618 в C# для приватных конструкторов
Переменная CS8618 - , не допускающая значение NULL, должна содержать ненулевое значение при выходе из конструктора. Рассмотрите возможность объявления его как допускающего значение NULL.
🌟 Библиотека удобна для случаев, когда используются ORM (например, EF Core) или другие фреймворки, требующие пустых конструкторов.
💡 Подключение пакета устраняет необходимость использовать директивы #pragma или другие обходные решения, сохраняя читаемость кода
🔐 Лицензия: MIT
▪️Github
1 669
🖥 ryujinx-mirror/ryujinx — это форк оригинального эмулятора Nintendo Switch Ryujinx. Этот эмулятор, написанный на C#, поддерживает широкий спектр игр и предоставляет настройки для повышения производительности и графики. Основные цели форка — восстановление базовой инфраструктуры сборки
🌟 Проект не связан с оригинальным Ryujinx или компанией Nintendo и доступен под лицензией MIT
▪️Github
1 669
🖥 SignalR — это библиотека для ASP.NET, упрощающая добавление функциональности реального времени в веб-приложения. Она позволяет серверу отправлять обновления клиентам (например, браузерам) в реальном времени, что удобно для чатов, уведомлений и мониторинга данных
🌟 SignalR автоматически управляет подключением и переключается между различными транспортными протоколами (WebSockets, Server-Sent Events и т.д.) в зависимости от возможностей клиента
🔐 Лицензия: MIT
▪️Github
1 669
🖥 FluentDocker — это библиотека для управления контейнерами Docker через удобный и понятный API на C#. Она предоставляет набор инструментов для управления Docker-контейнерами, Docker Compose и Docker Machine. FluentDocker упрощает выполнение сложных сценариев развертывания, взаимодействие с контейнерами, а также позволяет разрабатывать гибкие и динамические приложения, используя все возможности Docker
🌟 Поддерживаются Windows, Mac и Linux
🔐 Лицензия: Apache 2.0
▪️Github
