Command-Query Separation (CQS) Principle

CQS - Example

class OrderService {
	List<Order> createNewOrderAndFindOrdersBeforeTimestamp(Order newOrder, Timestamp timestamp);
}

Applying CQS on the OrderService would result in two methods as shown below

class OrderService {
	void createNewOrder(Order newOrder);
	List<Order> findOrdersBeforeTimestamp(Timestamp timestamp);
}