Самые просматриваемые за 30 дней
Рынок труда для .NET-разработчиков в России за период 2024–2026 годов претерпел кардинальную трансформацию: от острого дефицита кадров в 2024 году (1–1,5 резюме на вакансию) до экстремального рынка работодателя в первом полугодии 2026 года (19–21 резюме на вакансию).
Рынок труда для .NET-разработчиков в России прошел точку бифуркации в 2026 году: после экстремального перевеса работодателей в первом квартале (hh-индекс 19-21) началась постепенная стабилизация.
Мне в последнее время очень часто встречаются программисты, которые не только используют в обычной “программной” жизни структуры (struct), но вообще, ничего не знают об этом объекте. И зачастую, для простоты своей "программной" жизни используют всегда классы (class). В этой статье я бы хотел в очередной раз остановиться на различиях между структурами и классами.
Сайт можно обновить за минуту: вы публикуете новую версию, и через секунду её видят все посетители. С мобильным приложением так не получится. Новую сборку сначала проверяет модерация магазина, потом её устанавливают пользователи — и делают это когда захотят. Часть пользователей не обновится никогда. Поэтому API для мобильного клиента нужно проектировать с расчётом на то, что одновременно с ним работают несколько версий приложения, в том числе очень старые.
Терминология имеет очень важное значение для любого разработчика, особенно важно это в концепции Domain Driven Design.
Кто такой системный аналитик, чем он отличается от бизнес-аналитика, какие навыки и инструменты ему нужны и как его работа выглядит со стороны разработчика. На сквозном примере с уведомлениями о смене статуса заказа разбираем три уровня постановки задачи — «плохо», «хорошо» и «правильно» — и вопросы, которые стоит закрыть до того, как задача уйдёт в разработку.
Решил собрать воедино все архитектуры, которые на слуху, или которые были на слуху.
Довольно запутанно на первый взгляд выглядит эта троица: Принцип. Паттерн. Контейнер. Если с контейнером более или менее всё понятно, то остальные термины требуют объяснения.
В первой части мы построили API для мобильного приложения «Музей юмора»: версионирование, политику контента на сервере, пагинацию по ключу, ETag, дельта-синхронизацию с надгробиями и единый формат ошибок. Теперь — вторая половина: клиент на .NET MAUI, который всем этим пользуется.
Прежде чем начать реализовывать бизнес-логику какого-либо приложения, сайта, программы, обычно приходится проделать очень много рутиной работы. А при использовании "правильного" подхода программирования, это рутина многократно увеличивается. В этой статье повествуется о том, как можно сократить количество рутины.
Не часто пишу Unit-тесты с нуля, особенно если учесть, что создавать новые проекты приходится не часто. Придумал себе такую шпаргалку, которая призвана освежить память при написании тестов с использованием Moq + xUnit + AutoFixture
Если вы разработчик, то точно знаете, что придумать название для проекта, метода, переменной или класса, на самом деле не такое уж простое дело. Особенно если вы работает в команде. В этой статье я опишу названия проектов (projects) для одного решении (solution), которые я обычно использую или стараюсь использовать.
В этом видео про: вопросы, ответы, собеседование, программирование, разработка, microservices, developer, устройство на работу, quiz, validation, валидация, бизнес-правила
Func и Action обобщенные делегаты были введены в .NET Framework начиная с NET 3.5. Они обеспечивают гибкость делегатов с общими параметрами. Делегат Func предназначен для инкапсуляции метода, который принимает в качестве параметров от нуля для четырех аргументов и возвращает значение. Что же касается делегата Action, то единственное отличие его от Func – это то, что Action возвращает процедуру.
Разработчики и иже с ними часто упоминают термин "логика" и/или "бизнес-логика", а что это такое? Где находится логика? В каком слое находится бизнес-логика? Как определить в тексте программы тип логики? Попробую ответить на эти и подобные этим вопросы.
Очень часто в своей работе мне приходилось использовать перечисления (Enum) в качестве информации о состоянии объекта. И всё бы вроде как хорошо, но есть некоторое неудобство, при таком подходе логика по проверке состояния (validation) объекта при смене статуса "размазывалась" по всей системе. И часто получалось, что отследить все правила перехода от одного состояния к другому практически непосильная задача, особенно если проект разрабатывает группа программистов.
Большинство разработчиков знакомятся с ИИ через окно чата: задал вопрос — получил ответ, скопировал код — вставил в проект. Это удобно, но это «ручной» режим. Настоящая польза для продукта начинается тогда, когда модель становится обычной зависимостью вашего приложения — такой же, как база данных или очередь сообщений. Именно об этом статья: что такое ИИ через API, как устроены ключи, какие задачи так решают чаще всего, какую модель выбрать, стоит ли экономить на бесплатных моделях, когда нужен агент, а когда достаточно одного вызова, и почему промпты никуда не исчезают, а наоборот становятся частью кода.
В статье показано как установить NuGet и что это такое. Показаны примеры управления пакетами NuGet. Достаточно подробно и с картинками.
При разработке микросервисной архитектуры, где используются множество слабо связанных между собой сервисов, потребуется реализация взаимодествие между этими самыми микросервисами.
Аналитика 36589 записей о посещении страницы просмотра записи блога.