principle that every method should either be a command that performs an action, or a query that returns data to the caller, but not both; asking a question should not change the answer
The Command and Query Responsibility Segregation (CQRS) — принцип или парадигма CQRS разделяет назначение запросов (напр. при чтении данных) и команд на обработку данных. Внедрение CQRS в приложение может максимизировать его производительность, масштабируемость и безопасность. Гибкость, создаваемая переходом на CQRS, позволяет системе лучше развиваться с течением времени и не позволяет командам обновления вызывать конфликты слияния на уровне домена. Шаблон CQRS применяет принцип императивного программирования разделения команд и запросов — сommand-query separation (CQS), используя отдельные объекты запросов и команд для извлечения и изменения данных соответственно. CQRS введён Бертраном Мейером во время работы над языком программирования Eiffel. Принцип гласит, что метод должен быть либо командой, выполняющей какое-то действие, либо запросом, возвращающим данные, но не одновременно. Другими словами, задавание вопроса не должно менять ответ. Более формально, возвращать значение можно только чистым (т.е. детерминированным и не имеющим побочных эффектов) методом. Строгое соблюдение этого принципа делает невозможным отслеживание количества вызовов запросов.
Abstract from DBpedia / Wikipedia · CC BY-SA
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).