ТОП за 28 дней

Просто о NET

1 C# NET: Class vs Struct или в чём различия между Классом и Структурой

Мне в последнее время очень часто встречаются программисты, которые не только используют в обычной “программной” жизни структуры (struct), но вообще, ничего не знают об этом объекте. И зачастую, для простоты своей "программной" жизни используют всегда классы (class). В этой статье я бы хотел в очередной раз остановиться на различиях между структурами и классами.

Просто о NET

2 Терминология - Dummy, Fake, Stubs, Spies, Mocks

Терминология имеет очень важное значение для любого разработчика, особенно важно это в концепции Domain Driven Design.

Просто о NET

3 Какие бывают архитектуры?

Решил собрать воедино все архитектуры, которые на слуху, или которые были на слуху.

Просто о NET

4 Dependency Injection: Принцип. Паттерн. Контейнер

Довольно запутанно на первый взгляд выглядит эта троица: Принцип. Паттерн. Контейнер. Если с контейнером более или менее всё понятно, то остальные термины требуют объяснения.

Просто о NET

5 Микросервисы: Отложенные сообщения на Rebus (7)

Серия роликов про коммуникации в микросервисной архитектуре на базе Rebus для .NET. Поговорим про паттерн SAGA и реализуем его на Rebus, используя IN-MEMORY режим хранения данных.

Просто о NET

6 Конвертируем DataTable в JSON

Пишем простой C# Extensions для конвертации данных из DataTable в JSON формат.

Просто о NET

7 Микросервисы: Отложенные сообщения на Rebus (6)

Серия роликов про коммуникации в микросервисной архитектуре на базе Rebus для .NET. В этом видео отправим отложенное сообщение, причем не какому-то другому сервису, а самому себе!

Просто о NET

8 Микросервисы: Service-to-Service коммуникация на Rebus (5)

Серия роликов про коммуникации в микросервисной архитектуре на базе Rebus для .NET. В этом видео отправим сообщения на конкретный сервис. В нашем случае, от OrderService на WarehouseService.

Просто о NET

9 Микросервисы: Publisher and Subscribers через Rebus (4)

Серия роликов про коммуникации в микросервисной архитектуре на базе Rebus для .NET. Сконфигурируем все сервисы для подключения к RabbitMQ, а также отправим первые сообщения от Publisher для Subscribers через Rebus.

Просто о NET

10 Микросервисы: Добавим сервисов для Rebus (3)

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

Просто о NET

11 Микросервисы: Знакомство с Rebus (1)

Серия роликов про коммуникации в микросервисной архитектуре на базе Rebus для .NET. В этой серии знакомство в Rebus, а также про причины ухода от MassTransit.

Просто о NET

12 Микросервисы: Подготовка проектов для Rebus (2)

Серия роликов про коммуникации в микросервисной архитектуре на базе Rebus для .NET. Создадим решение для Visual Studio (solution), куда добавим пару проектов для организации некоторой инфраструктуры.

Просто о NET

13 CQRS - это...

Несколько фактов о CQRS

Просто о NET

14 Аудит или история изменений сущности в EntityFramework Core

Как часто вам необходимо знать, какие действия были произведены с определенной сущностью? Например, в какой момент поменялось значение какого-либо свойства?

Просто о NET

15 Вопросы собеседований на должность разработчика ПО

Серия коротких роликов с вопросами и ответами на них, которые можно часто услышать на собеседованиях. Речь идет о должностях в сфере IT-технологий, разработки и архитектурного проектирования ПО.

Просто о NET

16 EntityFramework Core и паттерны "Unit of Work" и "Repository"

Надо ли реализовывать паттерны "Unit of Work" и "Repository" если вы используете EntityFramework Core?

Просто о NET

17 Presentation Logic vs Application Logic vs Domain Logic

Разработчики и иже с ними часто упоминают термин "логика" и/или "бизнес-логика", а что это такое? Где находится логика? В каком слое находится бизнес-логика? Как определить в тексте программы тип логики? Попробую ответить на эти и подобные этим вопросы.

Просто о NET

18 Именование проектов в решении

Если вы разработчик, то точно знаете, что придумать название для проекта, метода, переменной или класса, на самом деле не такое уж простое дело. Особенно если вы работает в команде. В этой статье я опишу названия проектов (projects) для одного решении (solution), которые я обычно использую или стараюсь использовать.

Просто о NET

19 Что такое Ocelot?

В этом видео про: faq, programming, csharp, программирование, вопросы и ответы, собеседование

Просто о NET

20 Что такое NuGet?

В статье показано как установить NuGet и что это такое. Показаны примеры управления пакетами NuGet. Достаточно подробно и с картинками.

Просто о NET

21 Шпаргалка по Unit-тестированию

Не часто пишу Unit-тесты с нуля, особенно если учесть, что создавать новые проекты приходится не часто. Придумал себе такую шпаргалку, которая призвана освежить память при написании тестов с использованием Moq + xUnit + AutoFixture

Просто о NET

22 Func и Action – обобщенные делегаты

Func и Action обобщенные делегаты были введены в .NET Framework начиная с NET 3.5. Они обеспечивают гибкость делегатов с общими параметрами. Делегат Func предназначен для инкапсуляции метода, который принимает в качестве параметров от нуля для четырех аргументов и возвращает значение. Что же касается делегата Action, то единственное отличие его от Func – это то, что Action возвращает процедуру.

Просто о NET

23 Repository как уровень абстракции Data Acceess Layer или уход от рутины

Прежде чем начать реализовывать бизнес-логику какого-либо приложения, сайта, программы, обычно приходится проделать очень много рутиной работы. А при использовании "правильного" подхода программирования, это рутина многократно увеличивается. В этой статье повествуется о том, как можно сократить количество рутины.

Просто о NET

24 Архитектура приложений: концептуальные слои и договоренности по их использованию

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

Просто о NET

25 ООП + EntityFrameworkCore = Упражнения (14)

Часть 14. Объектно-ориентированные упражнения на C# в контексте EntityFrameworkCore. В этом видео про отправку OutboxMessage в сторонние сервисы и использование для этого HostedService.

Просто о NET

26 Упражнения с .NET Aspire

Изучаем вместе новый фреймворк от Microsoft под названием .NET Aspire. Что такое Aspire? Зачем это нужно разработчику?

Просто о NET

27 Создание Self-Signed Certificate при помощь С#

Несколько способов создания self-signed сертификата, в том числе и на C#.

Просто о NET

28 Коммуникации в микросервисной архитектуре

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