(keitai-l) NinJava Reminder (Thurs 7pm) and Example Code

From: Sam Joseph <gaijin_at_yha.att.ne.jp>
Date: 11/27/02
Message-ID: <3DE47027.6010402@yha.att.ne.jp>
Hi All,

This is a reminder mail for the NinJava meeting tomorrow (Thursday)
night. The original announcement is attached below. In addition we have
a link to the sample code that Curt will use in his introduction to the
MVC pattern. Many thanks to Curt for making this code available in advance.

http://www.ninjava.org/patterns/mvc.tar.gz

See you tomorrow.

*****************************************************
********** N I N J A V A M E E T I N G ***************
*****************************************************

This months NinJava meeting will take place on Thursday 28th November,
in the usual location of the 5th floor NetYear offices of Cerulean
Tower, Shibuya. The main talk will start at 7pm. A map can be found at:

http://www.ninjava.org/directions.html

The evening's main talk is entitled "A Tale of Three Phone Companies:
How to get your Appli on DoCoMo, AU and JPhone Handsets" and will be
given by Sam Joseph of Tokyo University. The main talk will be followed
by time for questions, and then a Design Patterns Workshop introduced by
Curt Sampson of Vanten Open Source Solutions. Curt will be introducing
the "Model View Controller" or "MVC" design pattern along with some
sample code. Once Curt has introduced the pattern and code the intention
is to encourage discussion amongst the group about this pattern and its
application.

The meetings agenda is as follows:

6:30pm - 7:00pm Refreshments (provided by Sam)

7:00pm - 7:45pm "A Tale of Three Phone Companies" Main talk by Sam Joseph

7:45pm - 8:00pm Discussion

8:00pm - 8:15pm "Model View Controller Design Pattern" Pattern workshop
introduction by Curt Sampson

8:15pm - 9:00pm Discussion of pattern, sample code and pattern application.


The talk abstracts and speaker biographies are as follows:


Main Talk Title: A Tale of Three Phone Companies: How to get your Appli
on DoCoMo, AU and JPhone Handsets

Main Talk Abstract:

Currently three different Japanese Phone companies provide handsets with
java functionality. While certain DoCoMo, AU and JPhone handsets all
support Java, actually getting your java code onto the handset, and
indeed getting it to execute successfully, is somewhat different in all
three cases. The main division is the use of different Java Standards in
DoCoMo (KVM) and AU/JPhone (J2ME). However what really makes things
difficult for the novice developer is the procedure that must be
followed in order to get the code on the handset, and the different
kinds of security restrictions placed on handset-server
communication.The speaker has recently developed an application that
runs on all three different handsets, and that requires regular
communication between handset and server. Much of the challenge has
revolved around trying to understand the particulars of appli download
and HTTP communication for each of the three phone companies, and this
experience provides the body of the talk. The talk will also include
discussion of the different emulator software and how it can be employed
successfully to speed up the development process.The intention is that
at the end of the talk the members of the audience will have all the
information they need to get a java application running on the handsets
of all three different companies.

Main Talk Speaker Biography:

Sam is British and holds a Doctorate degree in Neural Networks from
Edinburgh University. He first came to Tokyo in 1998 on a Toshiba
Fellowship to work on Java Software Agents. In February 2000 he moved to
ValueCommerce, and after the standard internet startup roller coaster,
went Freelance. He started the Open Source NeuroGrid project (a P2P
bookmarking system), which he continues to work at, and more recently he
has been working on mobile java applications for various companies, as
well as research projects at Tokyo University.



Design Patterns Workshop: Model View Controller (MVC Design Pattern)

Pattern Abstract:

The Model View Controller pattern is used to separate the code for input
and output of data from the code related to the data itself. It normally
consists of the following objects:

o A _model_ object, which encapsulates the data and any data-specific
logic and rules. This offers interfaces for changing the data,
retrieving the data, and sometimes receiving notifications that the data
have changed.

o A _controller_ object, which offers a user interface for accepting
requests to change the data, and manipulates the model on behalf of the
user.

o A _view_ object, which queries the model, and retrieves and displays
the data in the model.

URLs:

Applications Programming in Smalltalk-80(TM): How to use
Model-View-Controller (MVC)
http://st-www.cs.uiuc.edu/users/smarch/st-docs/mvc.html
This paper describes what I believe to be the original use of the MVC
framework: the user interface of Smalltalk-80. While it has no mention
of patterns whatsoever, it is an excellent discussion of the details of
how MVC has been implemented.

Model-View-Controller (From the J2EE BluePrints Pattern Catalog)
http://java.sun.com/blueprints/patterns/MVC-detailed.html
A brief description of MVC, and how it might be used in a J2EE application.

Object Arts Education Center MVC Overview
http://www.object-arts.com/EducationCentre/Overviews/MVC.htm
Some comments on MVC and its problems from the company that produces
Dolphin Smalltalk.

C2 Wiki Model View Controller As An Aggregate Design Pattern Page
http://c2.com/cgi/wiki?ModelViewControllerAsAnAggregateDesignPattern
A list of patterns used within the MVC pattern. This is described in
more detail in GoF section 1.2, "Design Patterns in Smalltalk MVC" (page 4).


Speaker Biography:

Curt Sampson (cjs@cynic.net) is currently Chief Programmer at Vanten
Open Source Solutions, a Tokyo consulting and systems development
company (http://www.vanten.com). Having over twenty years of computing
experience, he believes he has become adept at manipulating terminology
to argue people to a standstill. He's not quite sure what patterns
really are, but he's apparently been using them since before he'd even
heard of them. He is always happy to muck about with a bit of code and
demonstrate the results.
Received on Wed Nov 27 09:08:15 2002