
|
Developing with J2ME Programming for Mobile Applications |
|
| AUDIENCE: |
This course is for enterprise application developers wishing to build a mobile front-end. It is also games developers wishing to develop for mobile phones as well as programmers wishing to extend their platform capabilities |
| PREREQUISITES: |
Developers must have a working knowledge of Java or attended our OO Programming in Java Platform 2 course. Windows experience is essential as all courseware is on Windows. |
| DURATION: |
5 days. Hands on. |
| OBJECTIVES: |
Java is ubiquitous from the high end servers, through to the desktop, and now down to mobile devices such as telephones and personal digital assistants (PDAs). The advent of the Java 2 Micro Edition (sometimes also incorrectly called the Java 2 Mobile Edition) means that Java programs can now be installed and executed on such mobile devices. This course covers programming on the J2ME platform. It introduces the highly compact J2ME virtual machine (referred to as the kvm) and compares it to its desktop cousin. Device types (called Configurations and capabilities (called Profiles) are covered and programming aspects for each are individually presented. The Mobile Information Device Profile (MIDP) and the Connected Limited Device Configuration (CLDC) are covered as the basis for many of the Java-enabled (J2ME) phones, and comparisons with the Connected Device Configuration (CDC) for PDA’s are made.
On completion of the course delegates will be able to:
· Explain the purpose of the J2ME configurations and profiles
· Describe the Connected Limited Device Configuration (CLDC)
· Describe the Mobile Information Device Profile (MIDP)
· Develop a J2ME based game on the MIDP
· Interact with an Enterprise Java server Details.
|
| COURSE CONTENT: |
The Java 2 platform Java and Java 2 The Java 2 Editions J2ME: Java 2 Micro/Mobile Edition J2SE: Java 2 Standard Edition J2EE: Java 2 Enterprise Edition
Java Virtual Machine The Java Virtual Machine Java environments Bytecode and bytecode example Runtime loading Classloaders Classpaths JIT and hotspot Garbage collection and finalizers
Java Tools Types of Java application (application, applet, servlet etc.) Applets as applications Java security model SDK tools Compilation Running Java code Debugging Other common tools The Java Virtual Machine Bytecode
Object Orientation Benefits of Object Orientation What is an object? Classes Fields and methods Class members vs instance members Messages and method invocation
Java Syntax Garbage collection Comparison of objects Primitive data types Compilation and execution of Java code Packages Java sourcefile structure Defining classes and interfaces Defining methods and fields JavaDoc Looping and conditional constructs Creating instances Java expressions Accessing members Arrays
Abstract Types Constructors and static initialisers Finalizers Inheritance Casting Abstract classes Interfaces Modifiers in Java
J2ME Architecture Overview of J2ME Configurations and Profiles Connected Limited Device Configuration (CLDC) Connected Device Configuration (CDC) Mobile Information Device Profile (MIDP) Foundation Profile J2ME architecture Related Java systems
Overview of Mobile Information Device Profile (MIDP) Features of the MIDP MIDlets Control flow in MIDlets Midlet suites Deployment of Midlets Midlet JAR and JAD files Java Application Manager compared with Java Web Start
MIDP User interfaces Display issues with MIDP The LCD UI package Screens, Displayables and Commands Building and Testing with the J2ME Wireless Toolkit Multi-screen J2ME Applications Alerts and Forms Graphics with J2ME Keypress manipulation with J2ME Pointer support
Data Structures What is a collection Collection Framework Collection interfaces (Set,List,Map) Iterators Collection implementations Choosing implementations Arrays Class Collections Class Wrappers
Exceptions Exceptions The try/catch/finally block Creating custom exception types Advice for debugging exceptions Input and output Input and output streams Stream concatenation Common stream types Text streams Object streams and serialization
Input and Output with J2ME Input and Output with J2ME Connections Using HttpConnection Other supported protocols Record management system Reading and writing records Searching records with filters Sorting records with comparators
Networking Client/server networking TCP/IP networking Client and server coding in Java UDP/IP networking The URL object RMI overview
Multi threading in Java Threads in Java The Thread class Creating new threads Stopping and controlling threads Synchronisation issues Deadlock Inter-thread communications through wait/notify
Inner classes Static inner classes Member inner classes Local inner classes Anonymous inner classes Compiling Inner Classes Restrictions on inner classes
Recommended reading J2ME home page · The J2ME home page lists information about the platform, along with downloads such as the J2ME Wireless Toolkit which can be used to develop and test J2ME applications Nokia's Java homepage · Nokia produces Java enabled products; their homepage is at the Java Nokia forum Motorola Motorola produces Java enabled phones; the have a developer community at Java developer community |
|
© 2007 Verhoef Training, Ltd.
|
|
|
|
|
Copyright © 2007 - Verhoef Group of Companies - All Rights Reserved
|