<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="/templates/default/atom.css" type="text/css" ?>
<feed version="0.3"
   xmlns="http://purl.org/atom/ns#"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/">
    <link href="http://eduzine.edujini-labs.com/rss.php?version=atom0.3" rel="service.feed" title="Eduzine©" type="application/x.atom+xml" />
    <link href="http://eduzine.edujini-labs.com/"                        rel="alternate"    title="Eduzine©" type="text/html" />
    <link href="http://eduzine.edujini-labs.com/rss.php?version=2.0"     rel="alternate"    title="Eduzine©" type="application/rss+xml" />
    <title mode="escaped" type="text/html">Eduzine©</title>
    <tagline mode="escaped" type="text/html">Articles from Edujini Team</tagline>
    <id>http://eduzine.edujini-labs.com/</id>
    <modified>2010-08-16T03:51:30Z</modified>
    <generator url="http://www.s9y.org/" version="0.8.2">Serendipity 0.8.2 - http://www.s9y.org/</generator>
    <dc:language>en</dc:language>
    <admin:errorReportsTo rdf:resource="mailto:" />
    <info mode="xml" type="text/html">
        <div xmlns="http://www.w3.org/1999/xhtml">You are viewing an ATOM formatted XML site feed. Usually this file is inteded to be viewed in an aggregator or syndication software. If you want to know more about ATOM, please visist <a href="http://atomenabled.org/">Atomenabled.org</a></div>
    </info>
<entry>
    <link href="http://eduzine.edujini-labs.com/archives/39-Model-View-Controller-for-Android.html" rel="alternate" title="Model View Controller for Android" type="text/html" />
    <author>
        <name>Eduzine</name>
        <email>gvaish@edujini.com</email>
    </author>

    <issued>2010-08-16T03:22:27Z</issued>
    <created>2010-08-16T03:22:27Z</created>
    <modified>2010-08-16T03:51:30Z</modified>
    <wfw:comment>http://eduzine.edujini-labs.com/wfwcomment.php?cid=39</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://eduzine.edujini-labs.com/rss.php?version=atom0.3&amp;type=comments&amp;cid=39</wfw:commentRss>

    <id>http://eduzine.edujini-labs.com/archives/39-guid.html</id>
    <title mode="escaped" type="text/html">Model View Controller for Android</title>
    <content type="application/xhtml+xml" xml:base="http://eduzine.edujini-labs.com/">
        <div xmlns="http://www.w3.org/1999/xhtml">

<p>This weekend, Gaurav released his initial implementation of the MVC pattern for Android at <a href="http://blogs.mastergaurav.com/2010/08/14/model-view-controller-mvc-for-android/" target="_blank">http://blogs.mastergaurav.com/2010/08/14/model-view-controller-mvc-for-android/</a>. This opens up several possibilities for anybody looking to create an application on Android.</p> 
<p>The implementation, even though is an initial early push, 
has a robust infrastructure. Here's an initial analysis and outline of 
the implementation:</p><ul><li>The implementation, 
quite similar in nature to Struts (and he's inspired by Struts for the 
same), has a front controller and implements Command Pattern.</li><li><a target="_blank" href="http://android-mvc.git.sourceforge.net/git/gitweb.cgi?p=android-mvc/android-mvc;a=blob_plain;f=android-mvc/codebase/eclipse/src/com/mastergaurav/android/mvc/controller/Controller.java;hb=8b0b074">Controller</a> is implemented as <a target="_blank" href="http://developer.android.com/reference/android/app/Application.html">Application</a> specialization that does all housekeeping.</li><li>Command is modeled using <a target="_blank" href="http://android-mvc.git.sourceforge.net/git/gitweb.cgi?p=android-mvc/android-mvc;a=blob_plain;f=android-mvc/codebase/eclipse/src/com/mastergaurav/android/mvc/command/ICommand.java;hb=8b0b074">ICommand</a>
 interface. Noting that a large part of the commands will be network, 
database, file-system or related operations that may take a long time to
 complete, it provides response using callback listener for asynchronous
 implementation</li><li>All commands are managed using <a target="_blank" href="http://android-mvc.git.sourceforge.net/git/gitweb.cgi?p=android-mvc/android-mvc;a=blob_plain;f=android-mvc/codebase/eclipse/src/com/mastergaurav/android/mvc/command/CommandQueueManager.java;hb=8b0b074">CommandQueueManager</a> which internally is managed using a simplified <a href="http://android-mvc.git.sourceforge.net/git/gitweb.cgi?p=android-mvc/android-mvc;a=blob_plain;f=android-mvc/codebase/eclipse/src/com/mastergaurav/android/mvc/command/ThreadPool.java;hb=8b0b074" target="_blank">ThreadPool</a> of <a href="http://android-mvc.git.sourceforge.net/git/gitweb.cgi?p=android-mvc/android-mvc;a=blob_plain;f=android-mvc/codebase/eclipse/src/com/mastergaurav/android/mvc/command/CommandThread.java;hb=8b0b074" target="_blank">CommandThread</a> instances.<br />
</li><li>The public interface of interacting with this complex infrastructure is <a href="http://android-mvc.git.sourceforge.net/git/gitweb.cgi?p=android-mvc/android-mvc;a=blob_plain;f=android-mvc/codebase/eclipse/src/com/mastergaurav/android/mvc/command/CommandExecutor.java;hb=8b0b074" target="_blank">CommandExecutor</a>, internally made use of by the Controller.</li><li>Modeling request, response and listeners are available in the package <a href="http://android-mvc.git.sourceforge.net/git/gitweb.cgi?p=android-mvc/android-mvc;a=tree;f=android-mvc/codebase/eclipse/src/com/mastergaurav/android/mvc/common;h=56ab2edff67b4514860e3850d3895446b7ea5cbf;hb=8b0b074" target="_blank">com.mastergaurav.android.mvc.common</a>.</li><li>To keep developer use extensible, input-commands and output-activities, they are purely numeric in nature.</li></ul><p>Keep a close watch on the project... holds good potential!</p>
        </div>
    </content>
</entry>
</feed>