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

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

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

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

РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead
Download Telegram
Продолжаем конкурс на самый интересный контент в телеграм-каналах Proglib!
Призовой фонд — 280 тысяч рублей.
Срок окончания конкурса — 15 мая

Автор лучшего поста в отдельно взятом канале получает 20 тысяч рублей.
Мы упростили конкурс — теперь вам достаточно найти интересную и актуальную статью 2020-2021 года, написать к ней небольшой анонс (до 700 знаков) и прислать нам, тем не менее ваши идеи по другим форматам только добавляют + в общий зачет. Авторство можем указать по вашему желанию. В канале @progbook предлагаем отправлять рецензии на новые книги и старые актуальные.

Полный список каналов:
https://t.me/progbook
https://t.me/proglibrary
https://t.me/pyproglib
https://t.me/frontendproglib
https://t.me/javaproglib
https://t.me/dsproglib
https://t.me/phpproglib
https://t.me/cppproglib
https://t.me/mobileproglib
https://t.me/goproglib
https://t.me/csharpproglib
https://t.me/devopsslib
https://t.me/testerlib
https://t.me/hackproglib

Все посты будут с лайками и дизлайками и хэштегом #proglib_contest. Ссылки мы будем прогонять через наш сокращатель, будут браться в расчет лайки, дизлайки, охваты, клики по ссылкам. Чем больше лайков/охватов/кликов по ссылкам в публикации, тем больше шансов стать победителем в конкурсе. Присылайте посты боту @proglib_contest_bot с указанием, на какой канал идет публикация. Юридическая информация здесь.
Вы наверняка заметили, что мы регулярно проводим опросы, чтобы соответствовать вашим запросам и интересам. Знаем, что нас читают не только новички – многие подписчики уже стали миддлами и даже сеньорами. Если чувствуете, что переросли middle-уровень, пора задуматься о создании собственного полноценного проекта – не на одни выходные.

Для такой задачи нужно широкое видение процесса разработки и архитектуры информационных систем. На одной интуиции можно набить шишек, а книжки по таким вопросам достаточно быстро устаревают. Обратите внимание на страницу курса Архитектор ИТ https://proglib.io/w/60ce80bf

На странице можно почерпнуть сведения о том, какие знания нужны, и составить собственную программу-максимум. Или сэкономить время и воспользоваться учебным планом GeekBrains – благо уже есть площадка с контентом, приглашенные эксперты-практики и 4 курсовых проекта с поддержкой крупных компаний.
Как создавать навыки для виртуальных ассистентов Салют и получить за это 2 500 000 рублей?

28 апреля| 18:00 Онлайн-митап от SberDevices

Обсудим темы:
📌 Каким UX-принципам следовать, чтобы создавать полезные и понятные продукты?
📌 Какие возможности для разработчиков смартапов открывает SaluteJS?
📌 Как упростить проектирование внешнего вида смартапов с помощью дизайн-системы Plasma?
📌 Как улучшить клиентский опыт с помощью инструментов SmartServices?
📌 Как портировать готовые навыки для других ассистентов в экосистему Салют?
📌 Зачем и как использовать видео с цифровыми аватарами в смартапах?

Знаниями в области создания приложений для виртуальных ассистентов поделятся ведущие специалисты SberDevices и аккредитованные партнеры, а также про свой независимый опыт разработки смартапа расскажет победитель первого этапа конкурса разработчиков SmartMarket.

Подключайся к митапу и узнай все о создании смартапов. Участие бесплатное. Регистрация по ссылке:
За последнее время интерес к NFT-токенам стремительно увеличивается. Вы наверное слышали о таких крупных сделках, как картина Бенкси, портрет Сноудена или токен Нурмагомедова? Кажется, мода на цифровое искусство только набирает обороты, а тут кто первый, тот и выиграл.

Являясь медиа об IT, «Библиотека программиста» просто не могла пройти мимо тренда и решила внести свой вклад в развитие блокчейн-технологий и цифрового искусства. Любой желающий может приобрести первую статью на сайте (proglib.io), которая имеет более 470 000 просмотров.
Цена лота от 1 Ethereum, торги продлятся 3 недели.
Узнать больше можно по ссылке: https://proglib.io/w/874152a9
Forwarded from hahacker_news
Газпромбанк проведет свой хакатон для DevOps-специалистов

Банк совместно с компанией SAS проведет свой первый онлайн-хакатон GPB Hack. Призовой фонд составит 500 тысяч рублей, а лучшие участники получат шанс попасть в банк на работу.

Для тех, кто зарегистрируется как участник, специалисты компании SAS проведут беплатный интенсив по системам принятия решений в реальном времени. Кроме того, подавшим заявку на участие выдадут бесплатные доступы к виртуальным мощностям компании для отработки навыков.

Прием заявок завершится 24 мая. Стать участником можно по ссылке.
Начиная с версии C# 9, метод Main не нужно явно включать в проект консольного приложения. Вместо этого можно использовать операторы верхнего уровня для минимизации объема создаваемого кода.

Мы уже касались данной темы в недавней серии статей. Сегодня рассмотрим материал, в котором автор объединяет операторы верхнего уровня с библиотекой Tesseract / RabbitMQ. Почитайте, что из этого получилось.

https://proglib.io/w/ba78fde4
💻 Какие IT каналы в Telegram читаем мы?

Сегодня представляем вашему вниманию 5 каналов, которые действительно этого заслуживают. Подписывайтесь на наших друзей:

CodeCampМастхэв канал для любого IT-специалиста: лучшие книги, полезные сервисы и отборные видеоуроки.

@bugfeature — Подлинный канал "Не баг, а фича", который раскрывает секреты социальных сетей, уязвимости приложений, а так же рассказывает об этичном хакинге, анонимности в сети и личной безопасности в интернете.

@front_end_dev – Актуальные материалы для веб-разработчика: статьи, туториалы, инструменты, фишки ЯП и лучшие практики.

@S_E_Book — Самая редкая и актуальная литература в сети, для ИТ специалистов любого уровня и направления, которая публикуется еще до момента выхода в официальных источниках.

GIT — Канал, где Вы найдете уникальные онлайн-сервисы и инструменты на все случаи жизни.
#tip

Инфографика о некоторых аспектах управления памятью в .NET
2
Использование кортежей в C# для инициализации свойств в конструкторе и деконструкции объекта

В статье демонстрируется эффективность кортежей для объединения нескольких операторов assign в один оператор. Комбинируя кортежи с телами выражений, вы получаете довольно компактный код, который по-прежнему хорошо читается.

https://proglib.io/w/3a47dce0
Вы профи в своём деле? Мы хорошо за это заплатим. Ищем экспертов для проведения мероприятия в Москве 22 и 23 мая. Темы следующие:

- Архитектура программного обеспечения
- Подходы к решению алгоритмических задач с собеседований Google и Яндекс
- Базы данных: модели, миграции, тестирование
- Практикум по рефакторингу

За один день платим от 20 до 30 тыс. ₽ (в зависимости от опыта и вовлеченности). Отклики с резюме кидайте сюда: @proglib_expert_bot
Разбираемся с Pure.DI — чистым DI для .NET без фреймворков. Этот пакет с анализатором / генератором кода .NET 5 задумывался как помощник, который пишет простой код для композиции объектов в стиле чистого DI, используя подсказки для построения графа зависимостей.

Он следит за изменениями, анализирует типы и зависимости между ними, подсвечивает проблемы и предлагает пути решения.

- Pure DI для .NET
- Pure.DI следующий шаг
8 способов вызвать утечки памяти в .NET

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

- Обработчики событий
- Захват членов класса в анонимных методах
- Статические переменные
- Кэширование
- Некорректная привязка данных в WPF
- Потоки, которые никогда не останавливаются
- Не освобожденная неуправляемая память
- Не вызванный метод Dispose

https://proglib.io/w/d6f00b8e
#humor

Оказывается, вот как любители ООП видят мир
В новой версии Uno Platform представлена дополнительная поддержка WinUI, Project Reunion и Linux, повышение производительности Wasm и многое другое. Подробности здесь и на прикрепленном видео.
#tip

В .NET 6 были добавлены некоторые методы расширения Queryable. В результате этих добавлений может быть нарушена работа кода, как показано на прикрепленном примере. Данный код теперь будет создавать исключение InvalidOperationException.

Если вы создаете библиотеки для поставщика запросов, убедитесь, что ваш код устойчив к добавлению перегрузок методов. Например, используйте перегрузку Type.GetMethod, которая явным образом принимает типы параметров метода.

Читать подробнее
Крупнейший сервис Телеграм-аналитики TGStat проводит исследование аудитории Телеграма. Опрос анонимный, занимает не больше пяти-семи минут, почти везде просто клики по вариантам ответа. В результате статистика по каналам станет точнее, а жизнь — проще. Давайте поможем: https://tgstat.ru/research
#proglib_contest

Какой паттерн оптимизирует работу с памятью путем предотвращения создания экземпляров элементов, имеющих общую сущность?
Anonymous Quiz
60%
Легковес (Приспособленец, англ. flyweight)
12%
Наблюдатель (англ. observer)
15%
Декоратор (англ. decorator)
13%
Стратегия (англ. strategy)