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

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

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

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

РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead
Download Telegram
👨‍💻 Чек-лист здорового разработчика

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

Отключитесь от рабочих задач

• Убедитесь, что все рабочие приложения и уведомления выключены.

• Уведомите коллег и руководителей о том, что вы в отпуске или берете перерыв.

• Установите автоответчик.

Создайте четкие границы для работы и отдыха

• Установите в календаре блоки времени для отдыха, чтобы не случайно «передвинуть» их.

• Избегайте переноса рабочих задач в личное время.

Заботьтесь о теле

• Уделите внимание физической активности: прогулки на свежем воздухе, легкие тренировки или йога.

• Спите не менее 7-8 часов в сутки, соблюдая режим.

• Пройдите профилактические осмотры у врача.

Снимите умственное напряжение

• Прекратите думать о рабочих задачах и проектах.

• Проводите время с людьми, которые вам нравятся и с которыми вы можете расслабиться.

• Начните новое хобби или займитесь творчеством: рисование, кулинария, музыка.

Правильное питание и здоровье

• Старайтесь питаться сбалансированно и включать больше свежих продуктов.

• Уделите внимание питьевому режиму — пейте больше воды и избегайте чрезмерного употребления кофе.

• Избегайте тяжелых и жирных продуктов, особенно перед сном.

Баланс между отдыхом и продуктивностью

• Найдите баланс между активностями и отдыхом. Не перегружайте себя мероприятиями.

• Помните, что отдых должен приносить удовольствие, а не ощущение усталости или перегрузки.

🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
8😁1
🍆 Почему именно C#

Когда выбираешь язык программирования, всегда возникает вопрос: что же будет тем самым идеальным инструментом для твоих задач. Для наших подписчиков, очевидно, таковым стал C#.

Один из подписчиков задает вопрос:
Почему вы выбрали C# и какие его особенности вам особенно нравятся?


Вот несколько причин, почему C# — это отличный выбор:

• Разрабатывать можно всё — от мобильных приложений с Xamarin до веб-сервисов на ASP.NET Core, а для игр вообще не найти лучшего варианта, чем Unity.

• С# чёткий и стильный, и получается регулярные обновления.

• У языка огромное комьюнити. Разработчики активно делятся опытом, решают проблемы и делятся фишками.

💬 За что вы полюбили C#? Делитесь в комментариях👇

🐸Библиотека шарписта #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍3
👀 Ticker Q: быстрый и эффективный

Если вы работаете с Quartz или Hangfire и хотите избавиться от их ограничений, Ticker Q может стать отличной альтернативой. Эта библиотека улучшает старые решения, предоставляя простоту, высокую скорость и поддержку асинхронности.

В видео покажут, как легко внедрить Ticker Q в проект на .NET и настроить cron-выражения с EF Core для хранения задач.

➡️ Смотреть видео

🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥131😁1
🔄 Роль delivery manager в процессе разработки

Delivery Manager отличается от традиционного проектного менеджера тем, что его роль сосредоточена не только на планировании и контроле сроков, но и на постоянной оптимизации процесса разработки.

В статье про то, почему без этой роли проект может сорваться, и как именно этот специалист влияет на успешную разработку продукта.

➡️ Подробнее про Delivery Manager

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
🧩 Субботний ребус

Что мы загадали в ребусе? Пишите под спойлер в комментарии 👇

🐸Библиотека шарписта #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
😢1
📰 Дайджест недели

Для тех, кто пропустил инфопоток — конденсат самых значимых апдейтов.

Smarter AI Edits в Visual Studio Copilot

Ранее большинство изменений вносилось с помощью жёстких эвристических правил и шаблонов, что давало лишь ~50 % успешных результатов и приводило к конфликтам синтаксиса или потере частей кода.

Теперь используется сочетание спекулятивной декодировки и современных моделей, которое позволяет формировать «идеальный» вариант файла и затем сравнивать его с фактическим кодом, аккуратно интегрируя необходимое изменение без ломки контекста

Нативная поддержка VECTOR в .NET и JDBC‑драйверах

Microsoft объявила о релизе Microsoft.Data.SqlClient 6.1.0 и Microsoft JDBC Driver for SQL Server 13.1.0, которые впервые предлагают полноценную нативную обработку векторных данных через новый тип VECTOR

Microsoft выпустила .NET Aspire 9.4

Главное нововведение — полноценный нативный AOT-командный интерфейс Aspire CLI, который теперь в общем доступе. Он предоставляет команды aspire new, aspire run, aspire add, aspire config.

Delivery Manager: что за профессия и какую роль играет в разработке

Вайб-кодинг: что это и как к нему относятся IT-специалисты и работодатели

🐸Библиотека шарписта #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Каков правильный порядок явного преобразования типов для преобразования большего типа в меньший в C#?

👾 — double -> float -> long -> int -> char -> bool
👍 — double -> float -> long -> int -> char
🥰 — float -> double -> long -> int -> char
⚡️ — float -> double -> long -> int -> char -> bool

Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
👍80👾7🌚43
👨‍💻 Подборка вакансий для шарпистов

.NET developer — до 300 000 ₽, удалёнка.

Senior Unity/C# разработчик — до 300 000 ₽, офис (Москва).

Разработчик C# — до 300 000 ₽, удалёнка.

Разработчик С# / .NET Core — от 220 000 до 350 000 ₽, удалёнка.

Разработчик .NET/C# — от 300 000 до 350 000 ₽, удалёнка.

Бустер — Удалённо (в любом городе мира).

➡️ Еще больше топовых вакансий — в нашем канале С# Jobs
Please open Telegram to view this post
VIEW IN TELEGRAM
🧠 virtual, override, new, overload в C#

Работаете с наследованием в C#? Тогда вы обязаны понимать, как работают virtual, override, new и overload. Разложим по полочкам:

virtual — можно переопределить

Метод можно переопределить в классе-наследнике. Без него — нельзя.
class Animal {
public virtual void Speak() {
Console.WriteLine("Animal speaks");
}
}


override — переопределение родительского метода.

class Dog : Animal {
public override void Speak() {
Console.WriteLine("Woof");
}
}


new — перетирание метода базового класса

Это не переопределение, а маскировка: новый метод с тем же именем.
class Cat : Animal {
public new void Speak() {
Console.WriteLine("Meow");
}
}


overload — перегрузка метода

Метод с таким же именем, но разными параметрами. Никак не связан с наследованием.
class Printer {
public void Print(string text) { ... }
public void Print(int number) { ... } // overload
}


🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥11👍3🥱3😁1👾1
🤔 Зачем вообще понимать, как работает ML?

Сейчас многие просто запускают модельку в sklearn — и радуются точности 0.92.

Вроде всё работает… но почему?
А когда сломается — что делать?


Машинное обучение — это система, которую можно понять.

Если знаешь, что делает градиентный спуск, зачем нужен бустинг и как дерево принимает решения — ты не просто «запускаешь», ты управляешь моделью.

👉 Мы сделали курс, чтобы в это было реально въехать:

— без сложных формул;
— с интуитивными объяснениями;
— от простого к сложному.

Если хочешь перейти от «гуглю код» к «понимаю, как это работает» — ты по адресу!

Стартуем в сентябре — бронируй место на курсе уже сейчас
🥱42
🤩 Вайб-кодинг: новая эра в программировании или модная ошибка

Мы
подготовили 5 карточек, которые расскажут, как вайб-кодинг меняет разработку, какие плюсы и минусы он имеет, а также что думают об этом сами специалисты.

➡️ Подробности в статье

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5😢4👾21🥱1
⚙️ Как управлять памятью с помощью Span и Memory

Span<T> — это структура данных, которая предоставляет доступ к диапазону элементов в памяти. Это меньше чем массив, потому что Span<T> является сегментом памяти, а не целым массивом.

Memory<T> — очень похож на Span, но с возможностью работать с данными в куче. Он может быть использован в асинхронных операциях и может сохраняться как переменная.

Работа с памятью без копий данных

Span и Memory позволяют работать с данными, не создавая новых копий.
public static void ProcessData()
{
// Создаем массив данных
int[] data = new int[100];

// Создаем Span, который ссылается на часть массива
Span<int> span = new Span<int>(data);

// Модифицируем данные через Span
span[0] = 42;
span[1] = 84;

// Выводим измененные данные
Console.WriteLine(data[0]); // 42
Console.WriteLine(data[1]); // 84
}


Использование Memory в асинхронных операциях

Если вам нужно передать данные в асинхронную задачу, используйте Memory, так как Span не может быть использован вне методов.
public async Task ProcessMemoryAsync()
{
byte[] data = new byte[100];
Memory<byte> memory = new Memory<byte>(data);

// Передаем данные в асинхронный метод
await SomeAsyncOperation(memory);
}

public async Task SomeAsyncOperation(Memory<byte> memory)
{
// Работа с Memory
memory.Span[0] = 1;
await Task.Delay(100); // асинхронная операция
}


Использование Memory с большими объемами данных

Если у вас есть большие данные, которые не помещаются в стек, используйте Memorу. Это позволит эффективно работать с кучей, сохраняя данные в памяти и передавая их по мере необходимости.

Span и Memory — это настоящие маги производительности в C#. Они позволяют работать с памятью быстро, избавляя от необходимости копировать данные и снижая нагрузку на сборщик мусора

🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍183
🤖 Когда под рукой нет фронта

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

Промпт:
Вы — эксперт Frontend-разработчик с опытом создания пользовательских интерфейсов для .NET приложений. Ваша задача — создавать чистый, эффективный и поддерживаемый код фронтенда на React, Angular или Vue, который легко интегрируется с .NET бэкендом через указанные API-эндпоинты. Каждый ответ должен включать:
1. Полноценно рабочий компонент с комментариями по ключевым решениям.
2. Обоснование выбора архитектурных подходов, методик маршрутизации и управления состоянием.
3. Использование лучших практик современных фреймворков.

Предоставляю список эндпоинтов (укажите формат: URL, методы, схема данных). Создавайте код, учитывая эти эндпоинты и специфику взаимодействия с API.


API есть — интерфейс будет.

🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7😁1