Tuesday Feb 10, 2009

Java ME - The need:

Close to 90 per cent mobile and hand-held devices run Java. In this context, Write-once-run-anywhere, the paramount feature of Java is exploited in Java ME. Java ME lets us develop mobile applications for a diverse set of devices including mobile phone, palmtops, PDAs, set-top boxes and other hand-held devices. It gives a great edge for a computer engineer to address such a wide range of audience (who are on the move) with their applications. This workshop was intended to guide the students to write such generic applications using the core Java ME APIs.

Classes:

  • Classes were conducted in the conference hall of CSE department.
  • Duration of each session was 3 hours including lab practice session.
  • PowerPoint presentations were used to explain the concepts.
  • NetBeans IDE 6.5 + mobility was used to show demo programs on screen.
  • Lab sessions at B. Tech Lab, the terminals running Redhat Linux and NetBeans 6.5 + mobility.
  • Students were given applications to develop at the end of every session.


Deliverables:

NetBeans IDE 6.5 DVDs were distributed to the students.

Concepts handled:

The following concepts were handled during the classes:

The target devices for Java ME applications.

  • Architecture of Java ME, CLDC and MIDP specifications.
  • MIDlet and MIDlet Suites.
  • Review of inheritance and method overriding.
  • Core Java ME  User-Interface APIs
  • Display
  • Displayable
  • Screen
  • Item
  • Form
  • Command
  • List
  • Alert
  • Data Management
  • Record Management System ( RMS )
  • JDBC – ODBC in CDC configuration
  • Networking
  • Generic Connection Framework
  • Low – level networking: file://, socket://, datagram://
  • Http connections
  • Bluetooth
  • Device discovery
  • Service Discovery, Service Records and SDP
  • RFCOMM
  • OBEX over RFCOMM
  • L2CAP
  • Guidelines to Java ME applications.

Exercises:

The students were given regular exercises based on the concepts taught in class. The students were asked to develop the following MIDlet:

  • User registration using forms and displayable
  • Multi - threaded MIDlet to demonstrate their understanding of displayable.
  • Extensive attendance – planner for students use
  • Networking – Text transfer using RFCOMM and L2CAP
  • File Transfer using OBEX over RFCOMM
  • Exporting data form a MIDlet via Bluetooth and HTTP

Students’ Response and Feedback:

Excerpts:

API DEPTH:

“Not too high level-understandable”, “Awesome”, “Got lot of idea about j2me”, “just above the abyss”, “Complex and difficult to understand for novice”

SAMPLE PROGRAMS:

“The best part, could get the feel of Java ME”, “It gave very good idea”, “too good.. Good effort put in by the organizer”, “we need more lab sessions”, “practical sessions should have been more”

EXERCISE PROBLEMS:

“we need more time”, “good , but I need time”, “interesting but need to learn more”, “Real challenging and innovative and useful”, “I’ll finish the application” .


This blog copyright 2009 by Karthik S