In this episode we talk to Amanda about how she got started as an Android developer, working at Venmo, her path to mastering Java and Android, dabbling with the dark side and Animations in Android!
Learning Java and Android
Swift/iOS and other languages
Awesome picks for the week:
Timely like Animations
We’ve mentioned the book “Effective Java” by Joshua Bloch quite a few times on previous episodes. At this point, everyone knows they should have read this book (quadruple times). But it’s a dense read and everyone could use a reading buddy. Also, what does Effective Java look like through the eyes of an Android developer?
In this second installment of our Fragment (a.k.a mini-episode), we thought we’ll do our listeners a favor and help with that reading. We introduce the very first of these venerable “Items”: Consider providing static factory methods instead of constructors.
Stay tuned for more items from our “Effective Java for Android developers” Fragment series.
Consider providing static factory methods instead of constructors
- You can control the name and thus give it much more meaningful names
- You are not required to create a “new” object each time they are invoked
- You can even return an object that’s a subtype of the return type (unlike constructors which only return class type)
- Classes without public or protected constructors cannot be subclassed
- Static factory methods are not readily distinguishable from other static methods
- “Consider” using static factory methods (not always)
newInstance when creating Fragments [androiddesignpatterns.com]
newIntent static factory method for creating intents inside the target activity.
In this episode, we revisit the topic of Testing, looking at it from a TDD perspective. Globetrotter, Kata Queen, TDD practitioner and overall boss of Android development – Corey Latislaw joins us in this episode with thoughts, tips and tricks on pulling off TDD. She also shares some of her wicked sketchnoting tips and made a very special Sketchnote just for this episode! Have a look at the sketchnote here.
- GDG [developers.google.com]
- GDE [developers.google.com]
Awesome picks for the week:
In this episode we’re trying something new. Everyone has requested more episodes of the podcast. In short, everyone wants a weekly show. So this week, we’re introducing what we call a mini-episode … or as we like to call them a “Fragment”. Fragment episodes will be shorter in length but still packed with goodness. They will range from ~7-25 minutes in length and will showcase either Kaushik, myself (Donn) or both of us.
In the first “Fragment” installment we’re going to talk about Continuous Integration (CI) and Collective Code Ownership (CCO). Donn talks about what CI is, why its important and how it benefits you and your team. He then dives right into CCO and how it can be facilitated through testing.
We hope you enjoy these new mini-episodes … aptly named … Fragments. :)
Continuous Integration solutions:
In this episode – Donn and Kaushik dive into a topic that is very near and dear their hearts – application architecture. They talk about how Martin Fowler has inspired a lot of their architectural decisions and how they’re moving towards defining what a clean architecture means to them and other developers. They talk about Model View Presenter, Model View Controller and many other topics that surround these two common patterns. Take a listen and go for the ride on architecture train … all aboard!
- Moving GC only applicable when app goes into background:
The road to a clean architecture:
- Bad practices:
- Martin Fowler’s articles on Patterns of Enterprise Application Architecture:
- Decoupling the presenter [mattlogan.me]
Other approaches to clean architectures: