Рассмотрим основные коллекции в C#
#новичкам
1. List<T> — динамический массив, коллекция с изменяемым размером, которая позволяет хранить элементы в определённом порядке и обеспечивает быстрый доступ к элементам по индексу:
2. Dictionary<TKey, TValue> — хранит пары ключ-значение, где ключи уникальны. По времени работы операции поиска, добавления и удаления обычно выполняются за O(1), благодаря использованию хеширования:
3. HashSet<T> — множество уникальных элементов, хранит только уникальные элементы и не сохраняет их порядок. Это коллекция, которая отлично подходит для быстрого поиска и проверки наличия элемента:
4. Queue<T> — очередь, реализует принцип FIFO, то есть элементы обрабатываются в том порядке, в котором они были добавлены. Это полезно, когда нужно обрабатывать данные по очереди:
➡️ C# Ready | #техсобес
#новичкам
1. List<T> — динамический массив, коллекция с изменяемым размером, которая позволяет хранить элементы в определённом порядке и обеспечивает быстрый доступ к элементам по индексу:
List<int> numbers = new List<int> { 1, 2, 3 };
numbers.Add(4); // Добавление элемента в конец
2. Dictionary<TKey, TValue> — хранит пары ключ-значение, где ключи уникальны. По времени работы операции поиска, добавления и удаления обычно выполняются за O(1), благодаря использованию хеширования:
Dictionary<int, string> dict = new Dictionary<int, string>();
dict[1] = "One"; // Добавление пары ключ-значение
3. HashSet<T> — множество уникальных элементов, хранит только уникальные элементы и не сохраняет их порядок. Это коллекция, которая отлично подходит для быстрого поиска и проверки наличия элемента:
HashSet<int> set = new HashSet<int> { 1, 2, 3 };
set.Add(3); // Дубликат не добавится, операция вернет false
4. Queue<T> — очередь, реализует принцип FIFO, то есть элементы обрабатываются в том порядке, в котором они были добавлены. Это полезно, когда нужно обрабатывать данные по очереди:
Queue<int> queue = new Queue<int>();
queue.Enqueue(1); // Добавление элемента в конец
int item = queue.Dequeue(); // Извлечение первого элемента (1)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍3
Media is too big
VIEW IN TELEGRAM
Нашел вам ещё один репозиторий — AspNetCore-Developer-Roadmap
Это самая подробная карта навыков для разработки на ASP,NET, которая дополнена множеством ресурсов для изучения всех тем, которые она затрагивает.
➡️ C# Ready | #репозиторий
Это самая подробная карта навыков для разработки на ASP,NET, которая дополнена множеством ресурсов для изучения всех тем, которые она затрагивает.
И как всегда, ссылочка: Github😸
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8🤝4👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Monica — топовое расширение для Chrome. Это помощник с ИИ, который поможет вам в изучении любой темы. Нужно просто выделить текст или код, а нейросеть объяснит эту тему, кратко законспектирует или переведёт текст на нужный язык.
⬇️ Скачать расширение
➡️ C# Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍1
Используйте описательные методы вместо сложных условных операторов
IF
Чтение длинных и запутанных условий в IF-операторах может быть затруднительным.
Лучше всего вынести логику проверки в отдельный метод (или переменную) с понятным и выразительным именем.
Имя метода должно четко отражать суть проверки, чтобы любой разработчик мог легко понять, что происходит в коде.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21😁4❤1
This media is not supported in your browser
VIEW IN TELEGRAM
sololearn — сайт, на котором вы найдете интерактивный курс по C# на разные уровни с задачами. Также на сайте есть встроенная нейросеть, которая разберёт ваши неправильные ответы.
📌 Ссылочка: sololearn.com
➡️ C# Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍4
Media is too big
VIEW IN TELEGRAM
Стань легендой, играя в игру!
Вас ждёт уникальная браузерная игра, где каждое решение — это вызов вашему уму. Программируйте на языке C#, решайте увлекательные задачи и прокладывайте путь к величию.
Чем дальше вы продвигаетесь, тем мощнее становятся ваши способности, а сюжет становится ещё интереснее. Докажите, что вы достойны звания мастера кода👍
📌 Ссылочка: rpg.dijix.com
➡️ C# Ready | #ресурс
Вас ждёт уникальная браузерная игра, где каждое решение — это вызов вашему уму. Программируйте на языке C#, решайте увлекательные задачи и прокладывайте путь к величию.
Чем дальше вы продвигаетесь, тем мощнее становятся ваши способности, а сюжет становится ещё интереснее. Докажите, что вы достойны звания мастера кода
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4
Не возвращайте null-коллекции в C# — это источник проблем!
Давайте разберёмся, почему null-коллекции могут вызвать множество неприятностей:
В большинстве случаев коллекции используются для итераций, будь то циклы или другие операции. Если ваш метод возвращает null вместо пустой коллекции, вы неизбежно столкнётесь с трудностями.
Прежде всего, вам придётся добавлять проверки на null перед каждой итерацией. Это увеличивает объём кода, делает его менее читаемым и более подверженным ошибкам.
Хуже того, если вызывающая сторона не учтёт возможность возврата null, программа может просто упасть в рантайме.
Какие же альтернативы? Вместо возврата null всегда возвращайте:
🟡 Новый экземпляр коллекции, например, new List<T>().
🟡 Статические методы:
🟡 Коллекционные выражения в C# 12
Это маленькая, но важная привычка, которая сделает ваш код лучше.
➡️ C# Ready | #гайд
Давайте разберёмся, почему null-коллекции могут вызвать множество неприятностей:
В большинстве случаев коллекции используются для итераций, будь то циклы или другие операции. Если ваш метод возвращает null вместо пустой коллекции, вы неизбежно столкнётесь с трудностями.
Прежде всего, вам придётся добавлять проверки на null перед каждой итерацией. Это увеличивает объём кода, делает его менее читаемым и более подверженным ошибкам.
Хуже того, если вызывающая сторона не учтёт возможность возврата null, программа может просто упасть в рантайме.
Какие же альтернативы? Вместо возврата null всегда возвращайте:
Enumerable.Empty
или Array.Empty
Это маленькая, но важная привычка, которая сделает ваш код лучше.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥3🤝1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26
This media is not supported in your browser
VIEW IN TELEGRAM
Знали про эту библиотеку C#, которая предоставляет удобный слой абстракции для работы с YouTube
—
YoutubeExplode позволяет извлекать метаданные видео, плейлистов и каналов YouTube, а также позволяет удобно скачивать всё это дело.
📌 Ссылочка: github.com
➡️ C# Ready | #ресурс
—
dotnet add package YoutubeExplode --version 6.3.16
YoutubeExplode позволяет извлекать метаданные видео, плейлистов и каналов YouTube, а также позволяет удобно скачивать всё это дело.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3👎1
Кстати, .NET Upgrade Assistant теперь может оценить ваш код и указать на ошибки или недочеты
Чтобы установить —
При обновлении версии можно использовать новую функцию .NET Upgrade Assistant — проверку написанного кода и получение оценки от инструмента.
После сканирования Upgrade Assistant предоставит отчёт с проблемными местами, классифицированными по серьёзности.
Пользователь сможет перейти к решению конкретной проблемы и отметить ее исправленной. Microsoft отмечает, что вместе с определением проблемы будет предоставлен список ссылок и рекомендаций по исправлению ошибок.
📌 И конечно, ссылка: github.com
➡️ C# Ready | #ресурс
Чтобы установить —
dotnet tool install --global upgrade-assistant --version 0.5.678
При обновлении версии можно использовать новую функцию .NET Upgrade Assistant — проверку написанного кода и получение оценки от инструмента.
После сканирования Upgrade Assistant предоставит отчёт с проблемными местами, классифицированными по серьёзности.
Пользователь сможет перейти к решению конкретной проблемы и отметить ее исправленной. Microsoft отмечает, что вместе с определением проблемы будет предоставлен список ссылок и рекомендаций по исправлению ошибок.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Cursor AI — нейросеть для разработки, представляющая собой интеллектуальный редактор кода, который помогает за счет подсказок, автоматизации и интеграции с расширениями VS Code.
📌 Ссылочка: cursor.com
➡️ C# Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁33