Top 10 Takeaways from DroidconIN 2016 Day 1

Bob
Thoughts Overflow
Published in
2 min readNov 10, 2016

--

DroidconIN at Bangalore
  1. Buck build system is faster than Gradle. There is a gradle plugin that lets us utilize the Buck build system on a gradle project called okbuck.
  2. There is no single Best Architecture for an application. So choose one and stick to it.
  3. Avoid mutable states in a class where multiple threads can access the data simultaneously. How to avoid? Make the states immutable.
  4. Divide the application into separate standalone modules and add those modules as dependencies to the main application. For e.g., app-models, app-network, app-error, app-analytics could be the standalone modules of an application.
  5. Always try to use a wrapper class around any third party library. So the library can be switched at any time without any changes to our application logic.
  6. Jack and Jill toolchain — It is easy to implement. We get some Java 8 features. But it is slower than the existing toolchain.
  7. If your application requires Realtime data updates and offline support — like a Chat application — consider Firebase Database for the back-end.
  8. However, Firebase Database has a few caveats — For e.g., It is a NoSQL database and it might require more data duplication than a Relational database system for better performance.
  9. ‘Rxify’ your app. It might be initially hard to start Rx, but it has lots of cool features that solves many problems. (I haven’t tried Rx, yet)
  10. Structure the application source package by features — so each person from the team can own, add, edit a feature almost independently.

If you like this, you might like my Top 10 Takeaways from DroidconIN Day 2 event, too.

Links to speakers and slides:

The Mutable Monster and How to Defeat it — Anum Cowkur

Rxify — A Simple Spell for Complex RxJava Operators Garima Jain

Effective Gradle Scripts for Android Projects — Arun Babu A S P

Rebuilding BookMyShow — Adnan A M

Jack, Jill and Java 8 — Chaitanya Nettem

Firebase Realtime Database Deep Dive Soham Mondal

Did I miss any important points? Please feel free to comment.

--

--