Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!news.mixmin.net!news.albasani.net!.POSTED!not-for-mail From: Jan Burse Newsgroups: comp.lang.java.programmer Subject: Re: Java claims WORA Date: Mon, 25 Jun 2012 20:34:22 +0200 Organization: albasani.net Lines: 41 Message-ID: References: <8bc88bdc-bd63-4dd2-ba6c-cb0a7622fa1f@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: news.albasani.net xSH/s9/s5AOYRnpbh20P21KFCioHhp7Y3Qxd1HicFtlk09vNgBlB3/38ZU0wjXAoaWe+8cYBhwt2Xr+YgGHYHa/BGPDOzudNF9J/16YRA0Hd/VGZlVuwhtkBaQfj+/mg NNTP-Posting-Date: Mon, 25 Jun 2012 18:34:23 +0000 (UTC) Injection-Info: news.albasani.net; logging-data="DkdsNuJUMScd7HTkH8oK7SvW24/jtBVEH2T6Pm+el0HULpVAF6pKMYTho2xWqWBU+iZx0bgGWx+AsXkrvVCKbf4l33UqINY96OIGcKOSztoy6trfgFaBn3y+i4+kwVq+"; mail-complaints-to="abuse@albasani.net" User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:13.0) Gecko/20120615 Firefox/13.0.1 SeaMonkey/2.10.1 In-Reply-To: Cancel-Lock: sha1:OhwAO9eQav+Tv3vSvv7Fj4w16uA= Xref: csiph.com comp.lang.java.programmer:15583 David Lamb schrieb: > I was hoping to develop some notes for doing that to pass along to > upper-year undegrads. Do you have any suggestions / guidelines / > tutorials you could point to? If you can place business delegates into the headless part, then you are practically done. You only need two different clients, a Swing client and an Android client. http://java.sun.com/blueprints/corej2eepatterns/Patterns/BusinessDelegate.html The above would allow to build a Swing client and an Android client that differ considerably, for example that implement different workflow and/or different GUI layout. If you want some common support so that a certain similarity of the Swing client and the Android is assured, you might want to look into the MVC pattern for example. http://java.sun.com/blueprints/patterns/MVC-detailed.html The result would then be something else: +---------------+ + Swing View | +---------------+-+----------------+ +---------------+ | GUI Controller |-| Headless Part | +---------------+-+----------------+ +---------------+ | Android View | +---------------+ But I didn't follow the above architecture, since I was expecting to implement a different layout and/or workflow for the Android client, compared to the Swing client that was already there. But manually programmatically by mirroring Swing code in the Android code in many places I have now a similar layout and/or workflow. But it is not enforced and changing the layout and/or workflow accross both clients is now a double effort. Bye