Transaction Script или доменная модель

Несмотря на довольно большое количество различных подходов к построению (дизайну) приложений можно выделить два основных: Первый из них достаточно прост и при этом позволяет довольно удобно организовать ваш код в виде отдельных процедур обрабатывающих внешние запросы, но при усложнении логики приложения, ее размазывание между большим количеством процедур приводит к дублированию кода и другим нежелательным последствиям. Transaction Script или доменная модель

Нулевая версия

Нумерация версий с нуля у меня всегда вызывала сомнения. И до сих пор меня раздражают версии вида 0.5.2 и тем более 0.1.0. Есть в них некая фатальная незавершенность и я бы даже сказал обреченность. Кто придумал такую странную нумерацию? Если нумеровать с нуля, то почему не начать с 0.0.0? Я могу предположить что кому-то показалось Нулевая версия

Варианты использования, Интеракторы и Сервисы приложения

В своем блоге, в посте про Clean Architecture Роберт Мартин как один из элементов архитектуры приложения выделяет use cases или interactors предназначение которых описывается следующим образом: These use cases orchestrate the flow of data to and from the entities, and direct those entities to use their Critical Business Rules to achieve the goals of the Варианты использования, Интеракторы и Сервисы приложения

Из чего сделаны блокчейны

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

Потоки событий (Event Streaming)

Что объединяет между собой такие удачные патерны реализации надежных высоконагруженных систем как CQRS, Event Sourcing, EDA? Все эти паттерны оперируют с потоками событий. Но при всей простоте концепции готовых инструментов для ее реализации на удивление мало и популярностью пользуется среди них фактически только один: Kafka. Надо сказать что часто люди не делают различия между концепциями Потоки событий (Event Streaming)

Состояния сущностей

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

ORM или хранилище состояний

Классическим вариантом реализации слоя сохранения сосотяния приложения (Persistence layers) является ORM, все достоинства и недостатки которых давно известны и многократно описаны например у Мартина Фаулера. Если кратко, основная проблема использования ORM состоит в том, что объекты в ООП описывают поведение некоторых сущностей, а ORM пытается работать с данными внутри этих сущностей. Однако ORM не имеет ORM или хранилище состояний

Идеальная архитектура

Много лет назад, будучи студентом первого курса института я учился программировать. У чился в основном сам, так как институтский курс в тот момент не мог мне дать ничего нового, чего я бы в тот момент уже не знал о программировании. Я пробовал писать на ассемблере, делать графический интерфейс на паскале и даже изучал Пролог. Доступа Идеальная архитектура