In this episode, we talk to our good friend and immutability champ Ryan Harter. We start off talking about the benefits and disadvantages of immutability, then we dive into Value types and the subtle difference with Value types. Finally we close out by talking about AutoValue and how you can extend it using the super nifty auto-value extension system for functionality like Parcelability, Json parsing etc.
Show Notes
About Ryan
- Pigment (coloring for adults)
- Fragment (prismatic photography art) (His blog post on the same)
- Fragmented: Google IO special (Ryan was one of our guests)
References
- Martin Fowler’s updated article on ValueObjects
- Effective Java Fragments:
- Methods Count (check number of methods for a library)
AutoValue
- AutoValue
- AutoValue Builders
- AutoValue Factory (different from AutoValue Builders)
- Difference between Builder and Factory patterns [stackoverflow.com]
AutoValue extensions
- Ryan’s blog post
- AutoValue Parcel [github.com/rharter]
- AutoValue Cursor [github.com/gabrielittner]
- AutoValue Redacted [github.com/square]
- AutoValue Moshi [github.com/rharter]
- AutoValue Gson [github.com/rharter]
- AutoValue Firebase [github.com/mattlogan]
Misc
- Project Lombok
- Google’s Auto Libraries (code generating helpers)
- Ryan’s Blog
- Ryan’s Caster.io series [caster.io]
- Chicago Roboto 2017
Contact
- @rharter [twitter.com]
- @fragmentedcast [twitter.com]
- @donnfelker and +DonnFelker
- @kaushikgopal and +KaushikGopalIsMe
Transcript
Donn Felker: Kaushik, we’re back again, my friend.
Kaushik Gopal: Yes, we are. It’s another morning. What’s the time there?
DF: It’s 9:45 in the morning. It’s pretty early for you, right?
KG: Yes, it’s 6:45 here.
DF: Thank you so much for getting up that early. I know it’s difficult, especially when you’re working all hours of the night for a startup.
KG: Well, it’s enjoyable, especially when we have great guests on the show and great topics to talk about. So, who do we have on today?
Continue reading 066: Let’s talk Immutability, Value Types and AutoValue with Ryan Harter