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

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

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

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

РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead
Download Telegram
🔐 🔑 OAuth 2: как работает современная авторизация

Помнишь кнопку «Войти через Google»? Та самая кнопка, которая избавляет от необходимости запоминать очередной пароль. Сегодня разберем, как работает эта магия изнутри, почему гиганты вроде Spotify и Medium используют такой способ входа, и как внедрить его в свое приложение. Спойлер: это проще, чем кажется, и гораздо безопаснее традиционной формы регистрации.

Читать статью
🥱6🌚1
🛠️ «Native AOT. Возможности и ограничения» — доклад Андрея Порожнякова из SKAI

Иногда .NET-приложения запускаются дольше, чем нужно. Это связано с особенностями JIT-компиляции — при каждом старте IL-код компилируется в машинные инструкции. Проблема становится заметной, когда приложения запускаются часто, например, при реализации FaaS.

Решением может стать ahead-of-time, или AOT-компиляция. Это одна из функций, над которой сейчас работает группа ASP.NET Microsoft. Она генерирует машинные инструкции на этапе сборки приложения, и можно обойтись без IL-кода. Но такой подход предъявляет ряд требований к приложению и разработке.

Андрей Порожняков рассказывает, как ускорить запуск приложения за счёт AOT-компиляции. Рассматривает требования и ограничения публикации Native AOT. Отдельно затрагивает поддержку Minimal API и генераторов исходного кода, о плюсах, минусах и практической пользе технологии.

🔗 Смотреть доклад & Презентация
👍15🥱3👾1
🎙 Сравнения Rust и C#, Minimal API и Controllers, Problem и Details: 103-й выпуск подкаста RadioDotNet

Таймкоды:

[00:01:50] — Provide opt-in to experimental APIs
[00:11:50] — Comparison of Rust's borrow checker to C#
[00:36:35] — Problem Details for ASP.NET Core APIs
[00:54:30] — Comparing performance between Minimal API and classic Controllers
[01:05:30] — API Error Messages for a Good Developer Experience
[01:19:15] — Книга «ASP.NET Core в действии 3» в правильном переводе
[01:22:55] — Кратко о разном

⏯️ YouTube | Другие площадки

#подкасты
👍10❤‍🔥4😁3
🎊 Ну что ж, .NET 9 уже здесь! Конференцию .NET Conf 2024 можно посмотреть в прямом эфире.

💬 Присоединитесь или уже смотрите?
🔥27🥰5🥱3👍2
Привет, друзья! 👋

Мы готовим статью о том, как эффективно изучать программирование, и хотим услышать ваше мнение! 🤓💻 Поделитесь своим опытом, и самые полезные советы войдут в нашу публикацию.
🥱71
💡 Какой совет вы бы дали начинающим программистам? Поделитесь своими мыслями в комментариях👇
🥱141👾1
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
Азбука айтишника — здесь мы познаем азы из мира программирования

🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion

#️⃣C#

Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
Библиотека разработчика игр | Gamedev, Unity, Unreal Engine

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
🥱21👍1
7 способов сортировки массивов на примере С++ с иллюстрациями

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

Статья

Зачем учить алгоритмы сортировки, если есть уже готовые методы сортировки?
Чтобы знать плюсы и минусы каждого алгоритма, понимать, как действительно он работает (а не просто копипастить) и какой алгоритм выбрать для конкретной задачи. Плюс изучение алгоритмов развивает мышление и профессиональный кругозор.

Как мне оперативно научиться применять алгоритмы?

Начни с бесплатного демо доступа к курсу «Алгоритмы и структуры данных», на котором junior и middle+ программисты смогут потренировать навыки применения алгоритмов и сгенерировать идеальные решения сложных задач в сообществе других разработчиков.
🥱11
⚖️🛠️ EfCore.SchemaCompare — библиотека для сравнения модели базы данных EF Core со схемой базы данных

Если вы меняете схему базы данных вне системы миграций EF Core, например, с помощью SQL-скриптов, то эта библиотека может быстро сообщить, синхронизированы ли текущая схема базы данных и модель базы данных в EF Core.

👉 GitHub
👍23🥰21
🔥 Cамые интересные улучшения в библиотеках, Runtime и SDK, представленные в .NET 9: статья Артёма Ровенского из PVS-Studio

◾️C# 13
◾️Производительность
◾️LINQ
▪️Новый тип OrderedDictionary
▪️Новый тип ReadOnlySet
▪️Новый тип Tensor
allows ref struct в библиотеках
▪️[GeneratedRegex] для свойств
◾️SDK
▪️Terminal Logger включён по умолчанию
▪️Параллельный запуск тестов
▪️NuGet Audit
▪️BuildCheck
▪️Workload history
◾️Runtime
▪️Feature switch
▪️Динамическая адаптация к размерам приложений (DATAS)
▪️Улучшение JIT
▪️Улучшения Register Allocator

👉 Читать
👍13🔥5🤩1🥱1
🛠️ «Использование АОП в .NET» — доклад Дмитрия Егорова из Artsofte на DotNext 2024

Аспектно-ориентированное программирование (АОП) — широко распространенная практика во многих популярных фреймворках вроде Angular или Spring. В ASP.NET мы привычно используем этот архитектурный подход при работе с контроллерами, что натолкнуло автора на мысль масштабировать АОП на другие слои приложений.

Благодаря подходу АОП мы получаем возможность декларативно управлять поведением кода и инкапсулировать сквозную функциональность, не засоряя основную логику бизнес-кейсов. В .NET существует как минимум четыре механизма для реализации АОП: классические объектно-ориентированные декораторы, посткомпиляция, динамические прокси, а также новая технология Interseptor в C# 12.

Дмитрий рассказывает об опыте использования каждого из них, их преимуществах, ограничениях и особенностях + затрагивает вопрос перехвата зависимостей из DI для реализации внутренних механизмов АОП.

👀 Смотреть доклад & Презентация
👍10🎉3🥱31