Size: a a a

Библиотека шарписта

2020 August 05
Библиотека шарписта
#вопросы_для_самопроверки

Известно, что при размещении объекта ссылочного типа в куче у него есть указатель на объект-тип (область памяти, содержащую статические поля и реализацию статических методов). Этот объект-тип содержит индекс блока синхронизации и еще один указатель на объект-тип. Зачем он нужен и куда указывает?
источник
Библиотека шарписта
​​В CLR каждый объект в куче имеет указатель на объект-тип. Это нужно для того, чтобы, например, найти значения статических полей и реализацию статических методов для экземпляра типа. Но объект-тип, на который ссылается экземпляр типа так же имеет ссылку на объект-тип и является «экземпляром» для объекта-типа System.Type, объект-тип для которого создается CLR при запуске.

На приведённой схеме объект Manager ссылается на объект-тип Manager, указатель на объект-тип которого ссылается на объект-тип System.Type.

Источник: https://proglib.io/w/932ad628
источник
Библиотека шарписта
Какие продвинутые навыки стоит освоить C#-разработчикам ?

11 августа в 20:00 (мск) приглашаем познакомиться с онлайн-курсом «C# ASP.NET Core разработчик». Участие бесплатное: https://otus.pw/LAHZ/
Преподаватель Алексей Ягур представит программу, расскажет, как организована практика и ответит на ваши вопросы о карьере.

Вебинар предназначен для практикующих C#-разработчиков по созданию сайтов на ASP.NET Core. Регистрируйтесь, чтобы не пропустить!
источник
2020 August 06
Библиотека шарписта
Перевод цикла статей, ранее опубликованных на канале, о различиях между VB.NET и C#:

- Часть 1
- Часть 2
источник
Библиотека шарписта
Прокачайте свои навыки реверс-инжиниринга. Демо-занятие «Анализ буткита» для специалистов, которые хотят сосредоточиться на анализе вредоносного ПО.

20 августа в 20:00 Артур Пакулов проведет практический вебинар, где вы проанализируете алгоритм работы буткита и попытаетесь воссоздать семпл.

Занятие является частью программы онлайн-курса «Реверс-инжиниринг. Продвинутый уровень». Для регистрации на открытый урок пройдите вступительный тест https://otus.pw/esO3/
источник
Библиотека шарписта
Описание последних функций производительности .NET, доступных в Visual Studio 2019: https://proglib.io/w/2c51a832
источник
2020 August 07
Библиотека шарписта
Мечтаешь создавать свои игровые миры и вселенные? Геймдев ждёт тебя! Присоединяйся к бесплатному интенсиву по движку Unity и научись разрабатывать игры с нуля!


Регистрация на интенсив по ссылке: 👉 https://clc.to/JizgCg.

🚀 Тебя ждут три онлайн-эфира и два домашних задания, чтобы закрепить полученные знания.

🚀 В результате под руководством Михаила Овчинникова, методиста Skillbox и программиста с 12-летним опытом, ты сделаешь полноценный проект всего за три вечера.

🎉 Все участники, прошедшие интенсив до конца, получат в подарок электронную книгу Кея Петерсона и Дэвида Колба «Век живи — век учись» от издательства «МИФ», а авторы трёх лучших проектов — сертификаты по 30 000 рублей на любой из курсов Skillbox.
источник
Библиотека шарписта
#вопросы_для_самопроверки

Можно ли объявить делегат не только внутри класса, но и в глобальной области видимости? Если да, то почему?
источник
Библиотека шарписта
​​Можно, ведь делегат представляет из-себя не просто обертку для метода, а полноценный класс, а класс можно сделать как вложенным в родительский класс, так и просто объявить в глобальной области видимости. То есть делегат можно определить везде, где может быть определен класс.

https://proglib.io/w/932ad628
источник
Библиотека шарписта
Вы знаете, что Microsoft Azure предлагает единственную платформу комплексного хостинга для создания приложений .NET и управления ими, что обеспечивает значительную экономию средств, повышение операционной эффективности и гибкости бизнеса. В сегодняшнем материале вы найдете три способа получить выгоду от переноса приложений ASP.NET и данных SQL Server в Azure.

https://proglib.io/w/5c106c4b
источник
2020 August 08
Библиотека шарписта
Reactive Extensions (Rx) для .NET представляют из себя набор библиотек для работы с асинхронными и событийными источниками информации. Хотя Rx получил широкое распространение в коде на стороне клиента, его корни лежат в высокомасштабируемой обработке на стороне сервера.

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

https://proglib.io/w/97aaac1f
источник
2020 August 09
Библиотека шарписта
#вопросы_для_самопроверки

Для чего нужен модификатор extern в C#?
источник
Библиотека шарписта
Модификатор extern используется для объявления метода с внешней реализацией. При применении служб взаимодействия для вызова неуправляемого кода модификатор extern обычно используется с атрибутом DllImport. Метод в данном случае также необходимо объявить как static:
[DllImport("avifil32.dll")]
private static extern void AVIFileInit();


Модификатор extern может также определять внешний псевдоним сборки, который позволяет ссылаться на разные версии одного компонента из одной сборки.

Совместное использование модификаторов abstract и extern для изменения одного члена недопустимо. Использование модификатора extern означает, что метод реализуется вне кода C#, а применение модификатора abstract указывает на то, что в данном классе реализация метода не обеспечивается.
источник
Библиотека шарписта
Привет! Среди наших подписчиков много деловых, работающих людей, которые часто даже не успевают приготовить себе еду и заказывают доставку, которая уже задолбала.

Вот и хотим вам посоветовать Кухню на районе, способную полностью заменить ежедневную готовку (как мама в детстве).

Кухня на районе — московский сервис доставки готовой домашней еды из под ножа. В чем разница между просто доставкой? Они сами готовят, сами доставляют и всё это максимум за 30 минут. Не все на это способны у себя дома)

Меню имеет огромное разнообразие и меняется каждую неделю. Доставка бесплатна и без минимального заказа. А еще, помимо домашней еды, пицца Zotman и коллаборации с московскими ресторанами.

За 492 рубля вообще можно заказать набор еды на целый день из 5 блюд — это у родителей в столовой на свадьбе дороже было!

А по промокоду PROGLIB вы получите 500 бонусных рублей, которыми можно оплатить до половины заказа. Переходите по ссылке(localkitchen.ru/proglib) заказывайте и приятного аппетита!!!
источник
Библиотека шарписта
Где и как хранить пользовательские настройки в приложении Blazor WebAssembly: https://proglib.io/w/4d163e3b
источник
2020 August 10
Библиотека шарписта
Если в ходе разработки на C# вам понадобилось вернуть пустую коллекцию (массив или список), то рассмотрите данный способ: https://proglib.io/w/ce81711e
источник
Библиотека шарписта
​​Хотите  стать универсальным программистом и быть востребованным на рынке?
Научитесь создавать сайты, серверные приложения и десктопные приложения с помощью языка C# от Microsoft на полноценном онлайн-курсе «C# разработчик» в SkillFactory.  

Вас ждет практикоориентированное обучение программированию: бэкенд-разработка, фронтенд-разработка и разработка для десктоп приложений на C#, даже если у вас нет технического бэкграунда.

За 12 месяцев обучения вы освоите:
—  Программирование на С#: напишите 20+ программ на C#, используя знания алгоритмов и параллельно практикуясь в code review
— SQL и работа с БД: научитесь работать с БД с помощью C# и инструментов .NET
— Backend на C#: запрограммируете серверную часть вашего приложения на C# и создадите и подключите БД к приложению
— Frontend на C#: создадите веб-интерфейс для своего приложения, как с помощью JavaScript, так и с помощью инструментов ASP.NET
— Desktop на C#: создадите десктоп приложения с помощью Windows Presentation Foundation

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

🚀Получите курс со скидкой: https://clc.to/iZ33pQ
источник
Библиотека шарписта
Что нас ждет в .NET 5 с точки зрения производительности: https://proglib.io/w/cc74ab0c
источник
2020 August 11
Библиотека шарписта
#вопросы_для_самопроверки

Почему управлять вручную сборкой мусора зачастую нецелесообразно? Приведите пример, когда вызов метода GC.Collect() имеет смысл.
источник
Библиотека шарписта
Сборщик мусора сам настраивает пороговые значения для поколений (в зависимости от реального поведения приложения). Как только размер поколения в управляемой куче превышает пороговый, начинается сборка мусора. Поэтому чаще всего следует избегать вызовов GC.Collect().

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

Источник: https://proglib.io/w/932ad628
источник