I would like to thank Refactoring.guru for their insightful course on, well, refactoring (and code smells) at an Object-Oriented (OO) level. The course helped to set me on the right track for being more cognizant of my coding practices in Flutter and Dart. While some refactoring concepts might appear self-explanatory, the dissection of the refactoring processes in the course was quite detailed and thorough.
- RailsConf 2014 – All the Little Things by Sandi Metz
- “Make Smaller Things” – Sandi Metz [00:54]
- “Inheritance is fine when the hierarchy is kept shallow and narrow, where subclasses are at the leaf nodes that use all the behavior in the superclass.” [29:36]
- RailsConf 2016 – Get a Whiff of This by Sandi Metz
- “A Code Smell doesn’t mean I don’t like your code, and I can’t tell you why.” [2:45]
- “The definition of a code smell is that it might indicate a problem.” [3:33]
- Sandi Metz – Talk Session: Polly Want a Message
- “Factories are where conditionals go to die.” [29:55]
And for the icing on the proverbial cake, after watching Sandi’s talks, I discovered another video by none other than Flutterly, that then brought it all home by explaining the underpinnings between abstraction, inheritance, and Dart’s own mixin classes. Having previously benefited from Flutterly’s training videos on Flutter Bloc and the Repository Pattern, I found his insights on how these three types of classes operate to be equally enlightening and memorable.
- Dart Classes Explained II – Inheritance(extends) vs. Abstraction(implements) vs. Mixins(with) – Flutterly (letsgetwckd)
– Keith | https://keithdc.com
Keith D Commiskey
https://keithdc.com