Рубрики
Программирование

Span и Memory в .NET

Span<T> и Memory<T> типы данных в .NET которые предоставляют безопасные и высокопроизводительные средства управления памятью. Они могут помочь улучшить производительность вашего кода вне зависимости от того работаете ли вы с большими массивами, подстроками или обрабатываете буферы данных. Что ж давайте посмотрим, что из себя представляют Span<T> и Memory<T>, их преимущества, основные сценарии применения и те случаи когда их не стоит применять.

Рубрики
Интернет Программирование

Обход ограничений к Docker Hub

30-ого мая 2024 года мы внезапно узнали, что Docker Hub может внезапно превратиться в тыкву. Почему? А потому что санкции. Никогда такого не было и вот опять. Самое любопытное, что уже 3 июня 2024 года Docker Hub снова стал доступен, хотя вроде как никто ничего и не отменял. Тем не менее, доверять сервису уже не особо приходится […]

Рубрики
Программирование

Middleware в ASP.NET Core

При разработке ASP.NET Core приложения одной из основных задач является обработка входящих запросов. Но если задуматься, то работа с ними происходит не только в контроллере, но и до него и даже после. Давайте разберёмся с предобработкой запроса — как она устроено, с чем её едят и что с ней делать.

Рубрики
Программирование

Удаляем данные из базы быстро и решительно при помощи Entity Framework

Далеко не всегда нужно удалять данные из базы, но всё же хочется как можно сильней снизить затраты. В новой версии Entity Framework для этого были добавлены интересные методы — ExecuteDelete и ExecuteDeleteAsync. Давайте же рассмотрим как они помогут нам ускорить работу над удалениям записей?

Рубрики
Основы Программирование

Абстрактные классы и интерфейсы в C#

Очень часто на собеседованиях спрашивают в чём разница между абстрактным классом и интерфейсом. И на первый взгляд вопрос-то не сильно сложный, но при этом даже здесь есть интересные подводные камни.

Рубрики
Программирование

Разработка GUI-приложений под Linux… на C#. Часть 2

Что ж… GTK# хорошая и интересная штука, но есть кое-что получше. Avalonia – это кроссплатформенный XAML фреймворк для платформы .NET. Он поддерживает Windows, Linux, macOS, Android и iOS. Развивается проект при поддержке сообщества и является open-source, что весьма полезно в наше непростое время.

Рубрики
Основы Программирование

Разработка на .Net Core под Linux

Давно я что-то ничего не писал. И пока собираюсь с силами, чтобы закончить серию постов про разработку GUI приложений под Linux, думаю не будет лишним описать как вообще начать разрабатывать на .Net Core под этот самый Linux. Можно, конечно, разрабатывать и на виндовой машине, но иногда хочется работать сразу под Linux. А значит нужно сначала […]

Рубрики
Программирование

Разработка GUI-приложений под Linux… на C#. Часть 1

С выходом .Net Core уже никого не удивить тем, что на C# можно разрабатывать под Linux. Хотите WebAPI на своём сервере в AWS? Пожалуйста! Консольную утилитку для собственных нужд? Без проблем. А что, если захотелось сделать приложение с графическим интерфейсом? Оказывается, что и это тоже можно и, более того, это не сложно. Под катом рассмотрим […]

Рубрики
Программирование

Типы таймеров в C#

Представить себе задачу, для которой нужен таймер несложно, но вот зачем нужны разные их виды? Ведь на первый взгляд таймер настолько очевидный и простой концепт, что трудно представить возможные и при этом существенные различия между их реализациями. Однако, в C# на данный момент предоставляет аж 6 классов реализующих таймер. Давайте же рассмотрим их подробней и […]