Skip to content

Commit

Permalink
update outline for new plan to keep commands chap separate
Browse files Browse the repository at this point in the history
  • Loading branch information
hjwp committed May 1, 2019
1 parent 0d45614 commit c224ac7
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 17 deletions.
25 changes: 15 additions & 10 deletions outline.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,18 +122,10 @@ been allocated and needs to be sent to a customer?
code examples / patterns: events as a microservices integration platform


## Chapter 8: Bootstrap.py and dependency injection
## Chapter 8: Commands vs Events

the database / sqlalchemy are under control, but email and redis are a bit haphazard. also orm initialisation. show how a bootsrap script
and DI can manage all this

diagrams.
distinguish commands from events. different semantics, can say no to a command.

with + without framework, `@inject`, and bob's crazy, heretical, unclean type-hints based one.

maybe point out that command-handler pattern would make this all easier?

related post from existing blog: https://io.made.com/dependency-injection-with-type-signatures-in-python/


## Chapter 9: CQRS
Expand All @@ -148,6 +140,19 @@ code examples / patterns: CQRS / event-driven view model.
related post from existing blog: https://io.made.com/commands-and-queries-handlers-and-views/


## Chapter 10: Bootstrap.py and dependency injection

the database / sqlalchemy are under control, but email and redis are a bit haphazard. also orm initialisation. show how a bootsrap script
and DI can manage all this

diagrams.

with + without framework, `@inject`, and bob's crazy, heretical, unclean type-hints based one.

maybe point out that command-handler pattern would make this all easier?

related post from existing blog: https://io.made.com/dependency-injection-with-type-signatures-in-python/


## Appendix 1: project structure

Expand Down
16 changes: 9 additions & 7 deletions preface.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -81,13 +81,15 @@ Chapter 5: Aggregate pattern::
integrity


Chapters 6&7: Event-Driven Architecture::
We start by introducing the concept of _Domain Events_, as a vehicle for
capturing the idea that some interactions with a system are triggers
for others. We use a _Message Bus_ to allow actions to trigger events,
and call appropriate _Handlers_. We move on to discuss how events can
be used as a pattern for integration between services, in a microservices
architecture.
Chapters 6-8: Event-Driven Architecture::
We introduce three more mutually-reinforcing patterns, starting with
the concept of _Domain Events_, a vehicle for capturing the idea that some
interactions with a system are triggers for others. We use a _Message
Bus_ to allow actions to trigger events, and call appropriate _Handlers_.
We move on to discuss how events can be used as a pattern for integration
between services, in a microservices architecture. Finally we add the
distinction between _Commands_ and events. Our application is now
fundamentally a message-processing system.


Chapter 9: CQRS::
Expand Down

0 comments on commit c224ac7

Please sign in to comment.