More about The Elm Architecture

The emphasis of this section has been: how can we get people making cool Elm projects as quickly and smoothly as possible? So we covered:

  • The basic architecture pattern.
  • How to create buttons and text fields.
  • How to make HTTP requests.
  • How to work with web sockets.

You can go quite far with this knowledge, but there are many important aspects of Elm itself that we have not covered yet. For example, union types are one of the most important features in the whole language and we have not focused on them at all!

So we are going to take a break from The Elm Architecture for a couple chapters to get a better understanding of Elm itself. We will come back to The Elm Architecture in a few chapters and focus on code reuse in larger applications. In the meantime, when a function gets so big it feels unmanageable in practice, make a helper function! Elm makes refactoring easy, so it is best to improve architecture as needed rather than preemptively. More about that later though!

P.S. Best not to skip ahead. You can build a bigger house if you have a strong foundation!