4 ms·
Slightly off topic, but does anyone know if this "component based" development is what umbrella applications are in Elixir?
by dragosmocrii 6y ago
Slightly off topic, but does anyone know if this "component based" development is what umbrella applications are in Elixir?
- exterm 6y agoIt's certainly related. In very general terms, I would say splitting a Rails app into multiple engines is the same pattern as umbrella applications. However, there are more interesting specifics here about things like all engines sharing a database, but having exclusive ownership of tables, as well as splitting HTTP routing over multiple engines etc.
- Arubis 6y agoI think you'll also find a lot of conceptual overlap with Phoenix Contexts; they'll generally all start as part of the same monolith/app but are sufficiently discrete that you can separate them out more easily than the Rails situation in TFA.
- ravenstine 6y agoAm I the only one who has a distaste for this phrase "component based development"? It just seems like a fancy way of saying object oriented programming without an overarching design pattern.
- aidos 6y agoSounds like the “components” described above are much larger than classes.
- octernion 6y agothat's correct, at least for us a domain encapsulates many response types and dozens of different APIs that wrap various datastores, business logic, etc.
- octernion 6y agowe've actually taken the pattern of making the classes relatively stateless, and explicitly passing around typed state through these explicit apis. it's not really the same design pattern and imo conceptually different.