Библиотека шарписта | 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
Rider_macosx_shortcuts.pdf
46.8 KB
💡Шпаргалки с шорткатами для Rider, VS и ReSharper: на заметку C#-разработчику

Default Keymap
Mac OS X 10.5+ Keymap
ReSharper OSX Keymap
ReSharper Keymap
Visual Studio Keymap
Visual Studio OSX Keymap

#cheatsheet
🔥19👍7🤔1
🛠 Очередь исследовательских статей в серии .NET 8 Performance Improvements дошла до .NET MAUI: обзор большой работы, проведенной командой платформы и сообществом.

😉 Короче, сворачиваем все мемы про #maui
😁24❤‍🔥1🥱1
This media is not supported in your browser
VIEW IN TELEGRAM
💻🍏Apple представила новый MacBook Pro с процессорами семейства M3, которые делают один из лучших в мире профессиональных ноутбуков еще лучше. 14- и 16-дюймовые модели с M3 Pro и M3 Max доступны в новом цвете «черный космос». Хотите узнать подробнее? Смотрите презентацию Apple Scary Fast на русском и всего за 6 минут.

💡А мы недавно делали небольшую подборку ноутбуков для разрабов, где перечислили самые легкие, автономные и производительные. Скажем честно, не всем она понравилась. Так или иначе, поделитесь своим опытом 🔽

💬Какие характеристики для вас наиболее важны? Накидайте свой топ ноутбуков в комментарии👇

#холивар
🔥6😁6🥱2👍1🌚1
🔐 .NET 8: обзор новых возможностей платформы для поддержки аутентификации и авторизации в ваших приложениях

Andrea Chiarelli, Principal Developer Advocate, разбирает новые расширения ASP.NET Core Identity:

◆ Поддержка
Bearer-аутентификации,
новые встроенные эндпоинты для аутентификации/регистрации пользователей

◆ Полноценный стандартный набор компонентов для
аутентификации в Blazor

◆ Упрощение специализированных политик авторизации и другие

👉 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101
👍43
🤝Недавно команда EF Core сотрудничала с инженерами MongoDB, чтобы обеспечить поддержку MongoDB в EF Core.

😎Первоначальным результатом этого сотрудничества стал предварительный выпуск MongoDB provider для EF Core.

Под катом — практика использования последнего для:

☑️Сопоставления объектной модели C# с документами в MongoDB
☑️Использования EF для сохранения некоторых документов в БД
☑️Написания запросов LINQ для получения документов из БД
☑️Внесения изменений в документ и использования отслеживания изменений EF для обновления документа
🔥50👍75👏1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🧠⚙️ Как научиться критически мыслить: 6 эффективных способов

Критическое мышление позволяет принимать решения в условиях неопределённости, доносить свои идеи до команды, видеть ошибки в логике, замечать манипуляции. В статье рассказываем, откуда пошло это понятие и как можно развить критическое мышление.

💬Считаете ли вы, что у вас развито критическое мышление?

👍 — да, и это очень помогает мне в жизни и работе
🤔 — да, но оно ничем не помогает
🥱 — нет
🥱27👍24🤔1
Классы vs Структуры: как не стоит учить производительности

Пожалуйста, не используйте подобные тесты для каких-либо сравнений производительности!


— Сергей Тепляков о курсе на Pluralsight «Пособие по производительности C# 10»

Сергей возвращается после долгого перерыва в блоге с одной целью: дать правильные советы C#-разработчикам.
👍38
Как избежать ненадежных тестов с помощью TimeProvider и ITimer

🔥 Вышла новая часть в серии «Знакомство с предварительной версией .NET 8». В 12-ой части Эндрю Лок рассматривает новые типы TimeProvider и ITimer, описывает, как их использовать, и показывает некоторые проблемы, которые они решают.

#dotnet8
👍8
📄Самый простой способ создания PDF-файлов в .NET: гайд по использованию QuestPDF от Ника Чапсаса

📺 Смотреть
👍15🔥1😢1
Результаты ежегодного опроса разработчиков StackOverflow: 20+ главных инсайтов 2023 года

В данной статье мы собрали 20+ главных инсайтов, которые помогут лучше понять, что происходит в ИТ-сфере в мире.

🔗 Читать статью
🔗 Зеркало
🥱21👍1
⚡️Подборка за неделю

📌С Code Maze:

🔹
Управление каталогами с помощью Directory и DirectoryInfo в C#: простой практический гайд
🔹
Архитектурный паттерн Strangler Fig на C#: от теории к практике
🔹
Как создать строку запроса для URL-адреса на C#: примеры различных подходов
🔹
Обработка дат с помощью Noda Time в .NET: работа с датами без лишних проблем
🔹
Как принудительно запустить приложение .NET от имени администратора: без лишних прелюдий про безопасность

📌С официального блога .NET:

🔸
Новая функция компилятора F#: проверка типов на основе графов
🔸
Что нового в идентификации в .NET 8: введение в идентификацию в .NET 8 с примерами кода для защиты API, создания UI на основе Blazor и интеграции аутентификации в приложения Blazor WebAssembly
🔸Удобство System.IO: анализ удобства и производительности файлового ввода-вывода и текстовых API, применяемых для подсчета строк, слов и байтов

#dotnet #dotnet8 #csharp #codemaze #матчасть
👍5
🤔Динамика закрытия пулл-реквестов, прирост кодовой базы, активность разработчиков по часам и по дням недели и многое другое... Что только не придумают для оценки производительности разработчика.

💬А в вашей команде есть метрики оценки личной производительности? Если да, то какие и как они измеряются?

#холивар
🌚1
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🔥2
💡Интерфейсы могут иметь частные методы: по мотивам новой фичи C# 8 Default interface methods

🔸Методы интерфейса по умолчанию позволяют нам определить реализацию по умолчанию для метода в интерфейсе.

🔸Это полезно, когда мы хотим добавить новый метод к интерфейсу, но не хотим разрушать все классы, реализующие этот интерфейс:
public interface IMyInterface
{
public void MyMethod()
{
// Do something
}
}

public class MyClass : IMyInterface
{
// I don't need to implement MyMethod
}

🔸Но при его использовании мы не можем вызывать MyMethod из MyClass:
var myClass = new MyClass();
myClass.MyMethod(); // This won't compile

IMyInterface myInterface = myClass;
myInterface.MyMethod(); // This will compile

🔸И чтобы еще больше усложнить этот беспорядок, мы также можем провести рефакторинг:
public interface IMyInterface
{
public void MyMethod()
{
MyPrivateMethod();
}

private void MyPrivateMethod()
{
// Do something
}
}

#tip by Steven Giesel
🤔21👍53🥱3🌚2
Как в Rider реализована отладка .NET WebAssembly: тонкости реализации интерфейса IDE для отладки Blazor WASM и всех вариантов приложений .NET, ориентированных на WebAssembly.

👉 Читать
🔥51👍1
Как подсчитывать RPS (Requests per second) эффективно: на заметку C#-разработчику

#dotnet #tip by Egor Bogatov
🔥26👍52