#Собес
🤔 Что такое Common Language Runtime (CLR)?
CLR - это виртуальная машина, которая является частью .NET Framework. Она управляет выполнением программ, обеспечивая такие услуги, как управление
памятью, многозадачностью, безопасность типов и удаленным вызовом. CLR также разделяет код на управляемый и неуправляемый, где управляемый код работает в его среде.
👉 Новости 👉 Платформа
CLR - это виртуальная машина, которая является частью .NET Framework. Она управляет выполнением программ, обеспечивая такие услуги, как управление
памятью, многозадачностью, безопасность типов и удаленным вызовом. CLR также разделяет код на управляемый и неуправляемый, где управляемый код работает в его среде.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Media is too big
VIEW IN TELEGRAM
#статьи
🥱 Процесс создания приложения на платформе .NET MAUI для Windows, способного сканировать штрихкоды с помощью камеры
🚩 Автор демонстрирует, как использовать Windows Media API для захвата видеопотока с USB-камеры и интеграции с Dynamsoft Barcode Reader для распознавания штрихкодов. Проект включает две страницы: одну для загрузки изображений и другую для работы с живым видеопотоком с камеры, отображая результаты сканирования над изображением или видео.
Читать
👉 Новости 👉 Платформа
Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1🔥1
#полезное
😊
В версии 9 библиотеки
Этот атрибут расширяет возможности работы с перечислениями (enum) при преобразовании их в JSON и обратно.
👉 Новости 👉 Платформа
JsonStringEnumMemberName
В версии 9 библиотеки
System.Text.Json, которая является стандартным инструментом для сериализации и десериализации JSON в .NET, был добавлен новый атрибут под названием JsonStringEnumMemberName. Этот атрибут расширяет возможности работы с перечислениями (enum) при преобразовании их в JSON и обратно.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
👍 Бесплатная, с открытым исходным кодом CRM для разработчиков .NET и солопредпринимателей!
Этот проект построен с использованием технологий, таких как
Ознакомиться
👉 Новости 👉 Платформа
Этот проект построен с использованием технологий, таких как
ASP.NET Core 9, Clean Architecture, CQRS и MediatR. Он предоставляет возможности для управления клиентами, кампаниями и командами без дополнительных сборов, а также включает полный RESTful API.Ознакомиться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#Собес
🤔 Что такое наследование? Поддерживает ли С# множественное наследование?
Наследование — это механизм в С#, позволяющий одному классу наследовать
характеристики другого. С# не поддерживает множественное наследование для
классов, но поддерживает его для интерфейсов.
👉 Новости 👉 Платформа
Наследование — это механизм в С#, позволяющий одному классу наследовать
характеристики другого. С# не поддерживает множественное наследование для
классов, но поддерживает его для интерфейсов.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#ЛитКод
Задача: 364. Nested List Weight Sum II
Вам дан вложенный список целых чисел nestedList. Каждый элемент является либо целым числом, либо списком, элементы которого также могут быть целыми числами или другими списками.
Глубина целого числа — это количество списков, внутри которых оно находится. Например, вложенный список [1,[2,2],[[3],2],1] имеет значение каждого целого числа, установленное равным его глубине. Пусть maxDepth будет максимальной глубиной любого целого числа.
Вес целого числа определяется как maxDepth - (глубина целого числа) + 1.
Верните сумму каждого целого числа в nestedList, умноженную на его вес.
Пример:
👨💻 Алгоритм:
1⃣ Инициализировать первый уровень BFS-дерева, добавив все элементы из входного nestedList в очередь.
2⃣ Для каждого уровня извлекать передний элемент из очереди. Если это список, то добавить его элементы в очередь. В противном случае обновить значения sumOfElements, maxDepth и sumOfProducts.
3⃣ Когда очередь станет пустой, вернуть значение (maxDepth + 1) * sumOfElements - sumOfProducts.
😎 Решение:
👉 Новости 👉 Платформа
Задача: 364. Nested List Weight Sum II
Вам дан вложенный список целых чисел nestedList. Каждый элемент является либо целым числом, либо списком, элементы которого также могут быть целыми числами или другими списками.
Глубина целого числа — это количество списков, внутри которых оно находится. Например, вложенный список [1,[2,2],[[3],2],1] имеет значение каждого целого числа, установленное равным его глубине. Пусть maxDepth будет максимальной глубиной любого целого числа.
Вес целого числа определяется как maxDepth - (глубина целого числа) + 1.
Верните сумму каждого целого числа в nestedList, умноженную на его вес.
Пример:
Input: nestedList = [[1,1],2,[1,1]]
Output: 8
Explanation: Four 1's with a weight of 1, one 2 with a weight of 2.
1*1 + 1*1 + 2*2 + 1*1 + 1*1 = 8
using System;
using System.Collections.Generic;
public class Solution {
public int DepthSumInverse(IList<NestedInteger> nestedList) {
var queue = new Queue<NestedInteger>(nestedList);
int depth = 1, maxDepth = 0, sumOfElements = 0, sumOfProducts = 0;
while (queue.Count > 0) {
int size = queue.Count;
maxDepth = Math.Max(maxDepth, depth);
for (int i = 0; i < size; i++) {
var nested = queue.Dequeue();
if (nested.IsInteger()) {
int value = nested.GetInteger();
sumOfElements += value;
sumOfProducts += value * depth;
} else {
foreach (var ni in nested.GetList()) queue.Enqueue(ni);
}
}
depth++;
}
return (maxDepth + 1) * sumOfElements - sumOfProducts;
}
}
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#новости
😊 Версия 2.3.0 шаблонов Auth0 для .NET уже вышла!
🟠 Добавлена поддержка .NET 9.0
🟠 Minimal API теперь используется по умолчанию для Web API
🟠 Добавлена поддержка параметра 'controllers' в Web API
🟠 Исправлена ошибка выхода из системы в шаблонах Blazor
Теперь можно использовать актуальные шаблоны с последними возможностями .NET!
Ознакомиться
👉 Новости 👉 Платформа
Теперь можно использовать актуальные шаблоны с последними возможностями .NET!
Ознакомиться
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
#видео
😬 Как запустить проект? ASP.NET Core + React + NGINX + Docker Compose
Видео объясняет процесс создания и развертывания веб-приложения с использованием API на FastAPI, клиентской части на React и проксирования через Nginx, с контейнеризацией всех компонентов в Docker.
📱 Cмотреть видео
👉 Новости 👉 Платформа
Видео объясняет процесс создания и развертывания веб-приложения с использованием API на FastAPI, клиентской части на React и проксирования через Nginx, с контейнеризацией всех компонентов в Docker.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#Собес
🤔 В чем разница между структурой и классом в С#?
Класс и структура в С # похожи, но имеют ключевые различия. Класс - это ссылка на объект, а структура - это значение. Классы обычно используются для более сложных объектов, а структуры - для небольших, легких обьектов.
👉 Новости 👉 Платформа
Класс и структура в С # похожи, но имеют ключевые различия. Класс - это ссылка на объект, а структура - это значение. Классы обычно используются для более сложных объектов, а структуры - для небольших, легких обьектов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
#статьи
👍 Изучите SignalR в .NET Core для общения в чате в реальном времени.
Держи статью в которой рассматриваются основы SignalR, создание хаба для чата, работа с группами для сообщений, а также использование строго типизированных хабов.
Также затрагиваются вопросы масштабирования и использования IHubContext для отправки событий. Приводятся примеры кода для каждой стадии.
Читать статью
👉 Новости 👉 Платформа
Держи статью в которой рассматриваются основы SignalR, создание хаба для чата, работа с группами для сообщений, а также использование строго типизированных хабов.
Также затрагиваются вопросы масштабирования и использования IHubContext для отправки событий. Приводятся примеры кода для каждой стадии.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
В видео объясняются паттерны проектирования "Медиатор" и "CQRS" (разделение операций чтения и записи), а также их использование в разработке веб-приложения для заметок с помощью библиотеки MediatR.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤯 BlazorToolkit
Это набор инструментов для разработки на Blazor.
Он включает утилиты для упрощения сетевых операций, такие как вызовы REST API, сервисы для модульного кода и инструменты для валидации форм.
Этот набор доступен через NuGet и лицензирован по MIT License.
Смотреть тут
👉 Новости 👉 База вопросов
Это набор инструментов для разработки на Blazor.
Он включает утилиты для упрощения сетевых операций, такие как вызовы REST API, сервисы для модульного кода и инструменты для валидации форм.
Этот набор доступен через NuGet и лицензирован по MIT License.
Смотреть тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
#Собес
🤔 Что такое enum в С#?
Enum (перечисление) в С# - это тип данных, который позволяет задавать именованные целочисленные константы. Это облегчает работу с фиксированными наборами значений, такими как дни недели или направления.
👉 Новости 👉 Платформа
Enum (перечисление) в С# - это тип данных, который позволяет задавать именованные целочисленные константы. Это облегчает работу с фиксированными наборами значений, такими как дни недели или направления.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#статьи
🥺 Подробный план упражнений по освоению многозадачности и параллельного программирования на C#
Он охватывает основы, такие как многопоточность и синхронизация, а затем переход к более сложным темам, таким как асинхронное программирование, Parallel LINQ и шаблоны "производитель-потребитель".
Каждый этап включает примеры кода и практические задачи для закрепления знаний.
Читать статью
👉 Новости 👉 База вопросов
Он охватывает основы, такие как многопоточность и синхронизация, а затем переход к более сложным темам, таким как асинхронное программирование, Parallel LINQ и шаблоны "производитель-потребитель".
Каждый этап включает примеры кода и практические задачи для закрепления знаний.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#ЛитКод
Задача: 767. Reorganize String
Дана строка s, переставьте символы строки s так, чтобы любые два соседних символа не были одинаковыми.
Верните любую возможную перестановку строки s или верните "", если это невозможно.
Пример:
👨💻 Алгоритм:
1⃣ Инициализируйте пустой список ans для хранения переставленных символов. Создайте приоритетную очередь pq, используя структуру данных кучи. Каждый элемент в pq — это кортеж, содержащий количество символов и сам символ. Приоритетная очередь упорядочена так, что элементы с большим количеством имеют более высокий приоритет.
2⃣ Извлеките элемент с наивысшим приоритетом из pq. Присвойте его количество и символ переменным count_first и char_first соответственно. Если ans пуст или текущий символ char_first отличается от последнего символа в ans, добавьте char_first в ans. Если количество char_first не равно нулю, уменьшите его на один. Если обновленное количество больше нуля, поместите его обратно в pq. Перейдите к следующей итерации.
3⃣ В противном случае, если char_first совпадает с последним символом в ans, нужно выбрать другой символ. Если pq пуста, верните пустую строку, так как переставить символы невозможно. Извлеките следующий элемент из pq, присвоив его количество и символ переменным count_second и char_second соответственно. Добавьте char_second в ans. Если количество char_second не равно нулю, уменьшите его на один. Если обновленное количество больше нуля, поместите его обратно в pq. Наконец, поместите оригинальный char_first обратно в pq. Верните переставленные символы как строку, объединив элементы в ans.
😎 Решение:
👉 Новости 👉 База вопросов
Задача: 767. Reorganize String
Дана строка s, переставьте символы строки s так, чтобы любые два соседних символа не были одинаковыми.
Верните любую возможную перестановку строки s или верните "", если это невозможно.
Пример:
Input: s = "aab"
Output: "aba"
using System;
using System.Collections.Generic;
public class Solution {
public string ReorganizeString(string s) {
int[] charCounts = new int[26];
foreach (char c in s) {
charCounts[c - 'a']++;
}
var pq = new PriorityQueue<int[], int>(Comparer<int>.Create((a, b) => b.CompareTo(a)));
for (int i = 0; i < 26; i++) {
if (charCounts[i] > 0) {
pq.Enqueue(new int[] { charCounts[i], i + 'a' }, charCounts[i]);
}
}
var result = new List<char>();
while (pq.Count > 0) {
var first = pq.Dequeue();
if (result.Count == 0 || first[1] != result[^1]) {
result.Add((char)first[1]);
if (--first[0] > 0) {
pq.Enqueue(first, first[0]);
}
} else {
if (pq.Count == 0) {
return "";
}
var second = pq.Dequeue();
result.Add((char)second[1]);
if (--second[0] > 0) {
pq.Enqueue(second, second[0]);
}
pq.Enqueue(first, first[0]);
}
}
return new string(result.ToArray());
}
}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#полезное
😊 ASPNET Core Identity
Не реализуйте собственную аутентификацию, если вы разработчик на .NET.
ASPNET Core Identity может быть всем, что вам нужно.
Identity предоставляет вам
🟠 Аутентификацию
🟠 Управление пользователями
🟠 Вход, выход, обновление токенов
🟠 Роли и утверждения для авторизации
🟠 Внешние провайдеры аутентификации (Google, Meta)
Это легко настроить в .NET приложении.
Вы полностью контролируете все данные в своей базе данных.
Identity имеет всё, что нужно для простых приложений.
Один недостаток — его сложно использовать в микросервисах.
Но это можно решить с помощью собственной реализации JWT.
Система аутентификации в .NET достаточно гибкая.
Вот как можно реализовать RBAC: клик
👉 Новости 👉 База вопросов
Не реализуйте собственную аутентификацию, если вы разработчик на .NET.
ASPNET Core Identity может быть всем, что вам нужно.
Identity предоставляет вам
Это легко настроить в .NET приложении.
Вы полностью контролируете все данные в своей базе данных.
Identity имеет всё, что нужно для простых приложений.
Один недостаток — его сложно использовать в микросервисах.
Но это можно решить с помощью собственной реализации JWT.
Система аутентификации в .NET достаточно гибкая.
Вот как можно реализовать RBAC: клик
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
#Собес
🤔 В чем разница между ключевыми словами ref и out?
чтобы параметр был инициализирован перед передачей, а out используется для
передачи параметров, которые будут инициализированы в методе.
👉 Новости 👉 Платформа
ref и out оба используются для передачи параметров по ссылке, но ref требует,чтобы параметр был инициализирован перед передачей, а out используется для
передачи параметров, которые будут инициализированы в методе.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥1
Media is too big
VIEW IN TELEGRAM
#видео
🤯 Полный курс. От нуля и до создания игры на Unity и C# 2024
Рассматриваются интерфейс Unity, работа с объектами и их компонентами, основы программирования (переменные, операторы, циклы, корутины), использование префабов и GetComponent, механики перемещения и взаимодействия (Input, стрельба, камера, анимация), а также создание врагов, эффектов, интерфейса и внутриигрового магазина.
📱 Cмотреть видео
👉 Новости 👉 База вопросов
Рассматриваются интерфейс Unity, работа с объектами и их компонентами, основы программирования (переменные, операторы, циклы, корутины), использование префабов и GetComponent, механики перемещения и взаимодействия (Input, стрельба, камера, анимация), а также создание врагов, эффектов, интерфейса и внутриигрового магазина.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😬 Это библиотека для управления авторизацией и правами доступа в
Она поддерживает настраиваемые роли, multi-tenant архитектуру, обновляемые JWT-токены и гибкие схемы аутентификации. Администраторы могут менять разрешения ролей без перезапуска, а данные хранятся с шардированием или в общей базе.
Гитхаб
👉 Новости 👉 База вопросов
ASP.NET Core. Она поддерживает настраиваемые роли, multi-tenant архитектуру, обновляемые JWT-токены и гибкие схемы аутентификации. Администраторы могут менять разрешения ролей без перезапуска, а данные хранятся с шардированием или в общей базе.
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#полезное
👍 Примеры .NET DateOnly и TimeOnly
Мне очень нравятся эти новые типы, добавленные в dotnet 6.
Они позволяют нам лучше выражать намерения в коде и делают его более понятным для других разработчиков, показывая, что нас интересует только дата или только время.
До .NET 6 мы часто просто использовали DateTime и отбрасывали часть с временем для таких переменных, как DateOfBirth или OrderDate.
👉 Новости 👉 База вопросов
Мне очень нравятся эти новые типы, добавленные в dotnet 6.
Они позволяют нам лучше выражать намерения в коде и делают его более понятным для других разработчиков, показывая, что нас интересует только дата или только время.
До .NET 6 мы часто просто использовали DateTime и отбрасывали часть с временем для таких переменных, как DateOfBirth или OrderDate.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#Собес
🤔 Что такое свойства (Properties) в С#?
Свойства в С # — это специальные члены класса, которые позволяют гибко читать, записывать или вычислять значение приватного поля. Свойства используют методы доступа ("get" и "set"), которые скрывают внутреннюю реализацию и обеспечивают инкапсуляцию.
👉 Новости 👉 Платформа
Свойства в С # — это специальные члены класса, которые позволяют гибко читать, записывать или вычислять значение приватного поля. Свойства используют методы доступа ("get" и "set"), которые скрывают внутреннюю реализацию и обеспечивают инкапсуляцию.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1