Android Object Models
<p>I've worked in software development for a number of years (10+) and am just starting to have a proper look at Android. From my current understanding, a GUI is built up of Activities (replacing Forms, etc) and each of those is treated almost like its own mini program since passing references to data is not the simplest approach, and those that are available aren't particularly nice.</p>

<p>Anyway, my current favoured approach to GUI development is to create an object model that contains all of the functions I want to provide and then I can build the GUI (or console, or server access, or whatever) to talk to that model via Interfaces. Individual forms may be passed cut down interfaces, and only partial parts of the model, that are used for that particular form. For me, this keeps the front end separate from the functionality and also abstracts away the implementation of the Object Model from the GUI. One advantage for me is that I can write a library to do something then stick on a java GUI, an android GUI, a console, whatever. In fact, I sometimes develop the functionality prior to developing any GUI.</p>

<p>Now, in Android this appears to be a trickier approach to take. I think I could achieve the same by serialising the model, and parts of it, and passing these around as strings but I'm not sure this is practical. I also can see that this wouldn't work if part of the model needed to callback to another part of the model that won't exist because it wasn't in the serialised section. ie, I have an object model that holds a list of data objects. I want to pass a data object to another Activity and if it gets edited at all, call back to the object model to enable it to do something else.</p>

<p>Am I able to write something to reuse my object models or does this approach just not work well with Android? If it does work, how? If not, what suitable alternatives can I use?</p>
