Want to build software that is more testable, easier to modify, and has fewer lines of code? Architecture with more immutable objects that are always in a valid state is the most important lesson I have learned in building better software applications. Using immutable value objects will lead to less checking, fewer bugs, and more DRY code, and will help avoid the “spooky action at a distance” problem in PHP. We will also learn how to use immutable objects and immutable collections to improve design of our mutable entities. Lastly, we’ll see how our immutable modeling approach can drastically reduce the complexity of things in our systems that are mutable.

Comments

Comments are closed.

Chris Hartjes at 12:06 on 18 May 2023

A great reminder that so many bugs in PHP happen due to mismatched types and unexpected states.

Nick Marsceau at 13:51 on 18 May 2023

Really interesting approach for keeping objects in an always-valid state!

Thanks for the talk! I found it really fascinating.

Fascinating talk. Made me really think about how I code. Thank you for talk.

Kyle Schatzle at 15:50 on 18 May 2023

Great talk and perfect reminder that of the simplicity of mutable entities.

Good talk with excellent insights on immutability, value objects, and coding principles. Left with some concrete take-aways.

Sandy Smith at 10:14 on 1 Jun 2023

Great talk, well-delivered, with practical examples of the sorts of problems value objects solve as well as how to implement them, even on frameworks not designed with them in mind.