Библиотека шарписта | C#, F#, .NET, ASP.NET
22.8K subscribers
2.27K 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
Avalonia — фреймворк, позволяющий создавать кроссплатформенные приложения с графическим интерфейсом на основе XAML, предоставляющий гибкую систему стилей и поддерживающий широкий спектр операционных систем (Windows через .NET Framework и .NET Core, Linux через Xorg, macOS).

Немного материалов, связанных с Avalonia:
Github
Разработка кроссплатформенного десктопного приложения с помощью Avalonia
Реализация MVVM
System.Array.CopyTo() копирует не только сами элемента класса Array, но и объекты, которые связаны ссылками с элементами Array. Это всё называется «глубоким копированием».

System.Array.Clone() осуществляет так называемое «поверхностное копирование». При поверхностном копировании метод копирует только элементы объекта класса Array, и методу не важно, являются ли эти элементы ссылочными или значимыми типами. Копирования объектов, на которые ссылаются ссылочные типы, не происходит. Ссылки в новом объекте класса Array указывают на те же объекты, что и ссылки в оригинальном массиве Array.
Автор поднял редко обсуждаемые, но достаточно важные вопросы, связанные с глобализацией и локализацией в приложении ASP.NET. Он реализовал некоторую расширенную настройку, где сохранил выбранную информацию о языке в Cookie в браузере клиента.

https://proglib.io/w/96bf8af7
#вопросы_для_самопроверки

Объясните предназначение ключевого словоа stackalloc.
Ключевое слово stackalloc выделяет блок памяти в стеке. Выделенный в стеке блок памяти, который создает этот метод, автоматически удаляется по завершении выполнения метода. Вы не можете явным образом освободить память, выделенную stackalloc. Выделенный в стеке блок памяти не подвергается сборке мусора, поэтому его не нужно закреплять с помощью инструкции fixed.

При использовании stackalloc в среде CLR автоматически включается контроль переполнения буфера. Если буфер переполнен, процесс незамедлительно прерывается — это позволяет минимизировать риск исполнения вредоносного кода.
Что мотивирует вас откликнуться на вакансию?
❇️ Команда Библиотеки программиста ищет редактора-копирайтера для подготовки публикаций

Что делать:
— Подготовка нативных материалов по IT-тематике согласно контент-плану. Темы: программирование, информационная безопасность, Data Science и другие. Форматы материалов: лонгриды, обзоры, интервью, тесты, викторины и переводы англоязычных публикаций.
— Редакторская работа со структурой материала под ключ.
— Коммуникация с командой по внесению правок.
— Факт-чекинг, корректура написанных материалов.

Требования:
— Опыт написания материалов для IT-медиа, продукта или компании.
— Понимание целевой аудитории и SEO-оптимизации.
— Умение написания материалов, полезных как для читателя, так и заказчика.
— Знание английского языка для чтения и перевода иностранных источников.
— Приветствуется знание основ программирования и других направлений в IT-сфере.
— Готовность к выполнению тестового задания (оплачиваемое).
— Работа в команде с главным редактором.

Условия:
— Удаленная работа с соблюдением дедлайнов.
— Оплата 40-50 тыс.руб. в зависимости от опыта работы, выплаты два раза в месяц.

С кем связаться:
Откликнуться на вакансию: artem@proglib.io. Присылайте несколько предложений о себе и опыте работы, ссылки на примеры публикаций. Резюме присылать не нужно. В случае взаимного интереса, мы пришлем вам тестовое задание.
throw повторно выбрасывает исключение, которое было обнаружено, и сохраняет трассировку стека (путь к источнику исключения).

throw ex генерирует одно и то же исключение, но сбрасывает трассировку стека на этот метод.
Roger_Villela_Understanding_System_IO_for_NET_Core_3_Implementing.epub
7.2 MB
Understanding System.IO for .NET Core 3: Implementing Internal and Commercial Tools (2020)

Автор(ы): Roger Villela

Воспользуйтесь всеми преимуществами API .NET в System.IO для достижения фундаментальных операций ввода-вывода и создания более качественного программного обеспечения.

В данной книге вы начнете с основ создания собственной библиотеки .NET Core для System.IO. Вы узнаете назначение и преимущества настраиваемой кроссплатформенной библиотеки .NET Core вместе с архитектурой реализации компонентов настраиваемой библиотеки. В дальнейшем вы узнаете, как использовать .NET APIs System.IO для получения информации о ресурсах.

Вы познакомьтесь с внутренними принципами реализации System.IO BCL на платформе .NET Core; научитесь работать с механизмами System.IO, доступными через платформу .NET Core; создадите пользовательскую библиотеку, инкапсулирующую API-интерфейсы .NET из System.IO Design, и внедрите различные инструменты в System.IO.
Автор статьи описывает процесс модернизации проектов .NET Framework в .NET Core, .NET Standard и .NET 5, выпуск которых запланирован на этот год. Он также объясняет различия в уровне между платформами и последствия обновления для потребителей, разработчиков и сопровождающих.

https://proglib.io/w/d62f71d3
В C# метод в производном классе может иметь то же имя, что и метод в базовом классе. С помощью модификаторов override и new можно задать способ взаимодействия методов. При этом override расширяет метод virtual базового класса, а new скрывает доступный метод базового класса.

Разница проявляется в случае полиморфизма. Если вы работаете с экземпляром класса-наследника через его родительский класс, то в случае, если вы будете вызывать переопределенный виртуальный метод (override), то будет вызвана его реализация из наследника, а если перекрытый (new), то будет вызван метод базового класса.
​​Мы снова проводим конкурс (с увеличенным призовым фондом) во ВКонтакте для самых креативных из вас на лучший мем для статьи с нашего сайта. Правила простые:

1. Вы берете произвольную статью с сайта, не утратившую свою актуальность
2. Делаете для нее мем
3. Отправляете в предложенные новости ссылку и вашу картинку
4. Мы оформляем и публикуем.

Автор картинки с публикацией с наибольшим охватом среди всех нам отправленных получит 15 тысяч рублей. Поехали: https://vk.com/proglib

Срок окончания конкурса — 18 августа 2020 года.