Is my understanding of different ways commands can be delivered to CQRS-based application correct:
1) A CQRS application can receive commands in two ways:
a) either it implements a Command Bus, in which case client puts a command into a Command Bus and sends it to the server or it implements "regular" Application services, which client can then call?
2) If instead of using a Command Bus client can send a command by simply calling Application Service, then this would suggest Command Bus is just an implementation detail of CQRS and thus CQRS may be implemented without it?
3) If CQRS application is using a Command Bus, then couldn't we argue that in that case Application Services exist in the form of Command Handlers?
4) If client doesn't use Command Bus, but instead calls a regular Application Service, then it is a responsibility of a called Application service to create a command object and delegate it to the appropriate command handler?
thanks