My first reaction when Android Architecture Component is out is just **meh..** I mean come on, the ViewModel is heavily tied to Activity and Fragment and basically i don't need it because i use Conductor…
Not so long ago, on my Android's MVP architecture, my view layer does not have a model. The view only renders what the presenter tell them to do which is good because then, we have a passive view. But, there's no representation of the view itself.
If you're familiar with OOP then you must be familiar with constructors. A constructors is a special method of a `class` that initialize an object of that type. Simply put, a constructors is a function that return your object.
There is some code that we write everywhere. It doesn't have **state** and usually small enough to become a `class`. We often call it a helper function and in Java we used to save it in some `*Utils` class.
So we already create `Interface` in Java and convert it to lambda with in Kotlin through SAM conversion. How about `interface` in Kotlin? As the previous part suggest, currently there's no SAM conversion in Kotlin interface.